qcow2转lvm

来源:互联网 发布:通过交换数据位运算 编辑:程序博客网 时间:2024/04/30 12:03

https://www.nnbfn.net/2011/03/convert-kvm-qcow2-to-lvm-raw-partition/


1.将qcow2 转成raw格式

qemu-img convert disk0.qcow2 -O raw disk0.raw


2.查看新raw文件大小

user@example:/tmp/disk.nnbfn.net$ ls -ltotal 43103688-rw-r--r-- 1 user user 44023414784 2011-03-27 09:09 disk.raw


3.创建逻辑卷

lvcreate -L 44023414784b -n lv_disk vgroup (大小需比44023414784大,不然复制时会出错,虚拟机无法正常启动)


4.复制内容到逻辑卷

sudo dd if=disk.raw of=/dev/vgroup/lv_disk


5.修改xml文件

<disk type='file' device='disk'>  <driver name='qemu' type='qcow2' cache='none'/>  <source file='/srv/virtual/vm_web/tmp5GWO4q.qcow2'/>  <target dev='hda' bus='virtio'/></disk>

<disk type='block' device='disk'>  <driver name='qemu' type='raw' cache='none'/>  <source dev='/dev/vgroup/lv_disk'/>  <target dev='vda' bus='virtio'/></disk>


总结
测试xp的虚拟机可正常转换,但是建立比raw大的lvm在系统中只识别了原先大小,跟lvm实际大小无关


补充实验

1.qcow2直接dd到iscsi 盘/dev/sdb  启动无法找到boot-disk

2.qcow2 转raw 直接dd到/dev/sdb 启动正常 ,查看sdb硬盘 多了sdb1的分区,但是物理机上没有/dev/sdb1的目录

3.qcow2稀疏文件,转成raw后,直接dd,是全部占用virtualsize大小,将空间填满0

可使用rsync -S 避免填0空间,这样速度很快

原创粉丝点击