kvm虚拟机磁盘挂载还真不是一帆风顺的。xen虚拟化默认就raw格式的磁盘,可以直接挂载,kvm如果采用raw也可以直接挂载,与xen磁盘挂载方式一致。

本文出自:http://koumm.blog.51cto.com

1.kvm虚拟化相比xen虚拟化来说,工具与方法众多,本文列举思路如下:

(1)raw格式的磁盘可以直接挂载,可以将qcow2磁盘转换成raw格式并挂载

转换示例:qemu-imgconvert-fraw-Oqcow2/data/raw.img/data/qcow2.img

(2)通过编译安装qemu-nbd工具挂载qcows格式的磁盘

qemu-nbd工具默认没有安装,需要编译安装,该内容待测试,如确实需要也可以参考思路1去解决。

(3)通过创建KVM环境创建kvm虚拟机配置文件挂载虚拟磁盘启动虚拟机

(4)通过libguestfs-tools工具直接修改与读取qcow2虚拟磁盘文件

本文主要测试libguestfs-tools工具来进行测试。

2.libguestfs-tools工具的使用示例

(1)确认libguestfs-tools工具的安装,没有安装可以yum进行安装。

安装完成后,会安装很多virt-开头的命令,下面将大概介绍使用这些命令。

[root@node1 ~]# vir

virsh virt-df virt-inspector2 virt-p2v-server virt-tar-in

virt-alignment-scan virt-edit virt-install virt-pki-validate virt-tar-out

virt-cat virt-filesystems virt-list-filesystems virt-rescue virt-v2v

virt-clone virt-format virt-list-partitions virt-resize virt-viewer

virt-convert virt-host-validate virt-ls virt-sparsify virt-what

virt-copy-in virt-p_w_picpath virt-make-fs virt-sysprep virt-win-reg

virt-copy-out virt-inspector virt-manager virt-tar virt-xml-validate

(2)命令使用参数格式virt-df [--options] -d domname

virt-df [--options] -a disk.img [-a disk.img ...]

通常两种方式:-d是采用域名称方式,-a是直接获取的磁盘文件方式。

3.virt-cat命令

直接查看虚拟机里面的/etc/passwd文件,类似于cat命令。[root@node1 ~]# virt-cat -d oeltest01 /etc/passwd

4.virt-edit命令

直接编辑虚拟机里面的文件,类似于vi命令。

注:虚拟机必须处于关机状态,否则会出现如下提示:libguestfs: error: error: domain is a live virtual machine.

Writing to the disks of a running virtual machine can cause disk corruption.

Either use read-only access, or if the guest is running the guestfsd daemon

specify live access. In most libguestfs tools these options are --ro or

--live respectively. Consult the documentation for further information.

[root@node1 ~]# virt-edit -d oeltest01 /etc/rc.local

可以通过vi命令进行编辑。

5.virt-df命令

直接查看虚拟机里面的磁盘使用情况,类似于df-h命令。[root@node1 ~]# virt-df -h oeltest01

virt-filesystems命令也与上面内容类似[root@node1 ~]# virt-filesystems -d oeltest01

/dev/sda1

/dev/vg/root

6.virt-copy-out命令

直接复制虚拟机里面的磁盘文件到本地磁盘上,类似于cp命令。

(1)拷贝oeltest01虚拟机中的passwd文件到本地/root目录下[root@node1 ~]# virt-copy-out -d oeltest01 /etc/passwd /root/

(2)拷贝oeltest01虚拟机中的/etc/到本地/root目录下[root@node1 ~]# virt-copy-out -d oeltest01 /etc /root/

该命令很有用,也可以直接指定虚拟机磁盘文件进行命令。

#查看虚拟机所有磁盘文件

通过直接读取磁盘文件中的内容。[root@node1 ~]# virt-copy-out -a /data/test01.qcow2 -a /data/test01_add01.qcow2 /etc/sysconfig/network-scripts/ifcfg-eth0 /root/

7.virt-copy-in命令

直接复制虚拟化平台上本地磁盘文件到虚拟机磁盘上,类似于cp命令。

拷贝本地/root/etc.tar.gz文件到虚拟机/root目录下[root@node1 ~]# virt-copy-in -d oeltest01 /root/etc.tar.gz /root/

注:虚拟化必须处于关机状态,可以开机验证。[root@node1 ~]# virsh start oeltest01

域 oeltest01 已开始

[root@node1 ~]#

[root@node1 ~]#

[root@node1 ~]# virsh console oeltest01

连接到域 oeltest01

Escape character is ^]

Oracle Linux Server release 5.8

Kernel 2.6.18-308.el5 on an x86_64

test01 login: root

Password:

Last login: Wed Sep 11 05:21:11 on ttyS0

[root@test01 ~]# ll

total 10828

-rw------- 1 root root 1225 Sep 11 03:54 anaconda-ks.cfg

drwxr-xr-x 2 root root 4096 Sep 11 04:17 Desktop

-rw-r--r-- 1 root root 11006264 Sep 16 2013 etc.tar.gz

-rw-r--r-- 1 root root 36587 Sep 11 03:54 install.log

-rw-r--r-- 1 root root 3828 Sep 11 03:53 install.log.syslog

[root@test01 ~]#

[root@test01 ~]#

文读取虚拟机磁盘文件的内容到此,还有很多命令的命令,可以进行测试。

linux虚拟机读取本地磁盘文件,kvm虚拟化学习笔记(十三)之kvm虚拟机磁盘文件读取小结...相关推荐

  1. kvm虚拟化学习笔记(十)之kvm虚拟机快照备份

    KVM虚拟化学习笔记系列文章列表 ---------------------------------------- kvm虚拟化学习笔记(一)之kvm虚拟化环境安装 http://koumm.blog ...

  2. kvm虚拟化学习笔记(十一)之kvm虚拟机扩展磁盘空间

    kvm虚拟机磁盘空间扩展与xen虚拟机磁盘空间扩展思路一致.原因在于xen/kvm默认的虚拟机磁盘格式为raw,所以方式可以通用. raw磁盘格式扩展思路如下 (1) 新添加一块raw格式的磁盘加入到 ...

  3. kvm虚拟化学习笔记(十七)之KVM到KVM之v2v迁移

    1.源KVM虚拟主机node1 (1).查看源KVM虚拟主机上的虚拟机列表,本文计划将CentOS6.5-01虚拟机迁移到其它KVM虚拟主机中. [root@node1 ~]# virsh list ...

  4. kvm虚拟化学习笔记(二)之linux kvm虚拟机安装

    1. 上传ISO文件,这里采用OEL5.8x64 iso 2. 开始安装OEL5.8 # virt-install --name=oeltest02 --ram 512 --vcpus=1 --dis ...

  5. kvm虚拟化学习笔记(二十一)之KVM性能优化学习笔记

    本学习笔记系列都是采用CentOS6.x操作系统,KVM虚拟机的管理也是采用virsh方式,网上的很多的文章都基于ubuntu高版本内核下,KVM的一些新的特性支持更好,本文只是记录了CentOS6. ...

  6. 老广: KVM虚拟化学习笔记

    大纲: 一.部署安装kvm虚拟机 二.virsh常见命令解释 三.KVM虚拟机克隆 四.KVM快照 五.让GuestOS支持 console 六.添加网卡 七.磁盘扩容 八.动态迁移 前言: 虚拟化的 ...

  7. KVM 虚拟化学习之虚拟磁盘管理 qemu-img

    KVM 虚拟化学习之虚拟磁盘管理 qemu-img 一.虚拟磁盘简述 1.1 虚拟存储性能的解决方案 1.2 虚拟磁盘存储方案 二.qemu-img 命令 -- 虚拟磁盘管理 2.1 qemu-img ...

  8. Ubuntu学习笔记:VMware 导入虚拟机 .ova 文件

    Ubuntu学习笔记:VMware 导入虚拟机 .ova 文件 首先要有一个需要导入的虚拟化格式程序包,(.ova:开放虚拟化格式分发程序包) 打开VMware,文件→打开,选择需要的导入的包后,为虚 ...

  9. 深入理解Java虚拟机(第3版)学习笔记——JAVA内存区域(超详细)

    深入理解Java虚拟机(第3版)学习笔记--JAVA内存区域(超详细) 运行时数据区域 程序计数器 java虚拟机栈 本地方法栈 java堆 方法区 运行时常量池 直接内存 对象的创建 对象的内存布局 ...

  10. Android学习笔记07---查看Android虚拟机输出的错误信息与如何部署应用到自己的真实手机

    Android学习笔记07---查看Android虚拟机输出的错误信息

最新文章

  1. uboot中添加hi35xx的GPIO设置
  2. nginx解析php文件设置_nginx 解析php conf配置文件
  3. 苹果出5g手机吗_华为打响5G手机第一枪,苹果却扔出620亿“王炸”,任正非:榜样...
  4. tps协议和onvif协议_做监控的你,应该了解的ONVIF协议!
  5. 为什么要学Win32及Win32程序框架
  6. Mac OS X上安装配置apache服务器
  7. [转]Mysql explain用法和性能分析
  8. ssm项目中使用拦截器加上不生效解决方案
  9. 组织健康的路径:良性互动
  10. Eclipse中java文件头注释格式设置
  11. TeamViewer可以实现国际连接吗?
  12. 深入理解Java动态代理及手动实现
  13. html+css改字体,css怎么改字体样式?
  14. 实现Android手机之间在局域网下传输任意文件
  15. 网页繁体和简体转换js插件
  16. error: cannot lock ref 'refs/remotes/origin/master': unable to resolve reference 'refs/remotes/origi
  17. 三种方法实现选择问题
  18. 珠海网站建设价格是多少
  19. AcWing 913. 排队打水 (排序不等式)
  20. 遥感原理与应用总结——第六章:遥感图像辐射处理

热门文章

  1. 豆瓣Top250:Python爬虫+数据可视化
  2. XGen 苹果IOS神器一键新机改串清理超级全息备份支持IOS789超IGV8使用分享(企鹅290093670)
  3. pe擦除服务器硬盘,老毛桃winpe分区助手删除分区后如何用Gutmann算法擦除硬盘数据?...
  4. php中的opendir函数,php中opendir函数用法实例
  5. MMC多电平变换器matlab/simulink模型
  6. Selenium官网首页译
  7. Python3 PyV8“安装与使用”教程
  8. 北大计算机陈旭,北大图灵班——欢迎来到计算机王国
  9. Node.js mzitu图片批量下载爬虫1.00
  10. 三宝小精灵机器人_“三宝”机器人