将HDD(dd映像)虚拟化为较小的VMware映像

时间:2017-01-18 15:15:24

标签: virtual-machine vmware-workstation vmdk

我从旧桌面上抢救了硬盘驱动器,并希望将其虚拟化以在VMware Workstation下运行。

问题是,HDD(有几个分区)大小为1 TB,当我尝试将其克隆到图像(使用dd)时,生成的图像也是1 TB,我将遇到维护问题那个大小的VM。

我知道在创建新的Workstation VM时,可以选择不立即分配所有空间。

如何虚拟化硬盘和" deflate"硬盘的未使用部分?

1 个答案:

答案 0 :(得分:1)

通过执行以下操作来管理以获取“缩小的”VMDK文件。

  1. 安装硬盘的每个分区

    e.g。 mount -t ext4 /dev/sda1 /mnt/tmp

  2. 对于每个分区,用零填充空白区域。

    e.g。 dd if=/dev/zero of=/mnt/tmp/ZERO.TMP

  3. 删除零文件。

  4. 克隆整个硬盘的图像

    e.g。 dd if=/dev/sda of=/tmp/image.img

  5. 制作图像文件的稀疏副本。

    e.g。 cp --sparse=always /tmp/image.img /tmp/image_sparse.img

  6. 使用qemu-img从稀疏图像文件制作VMDK文件。

    e.g。 qemu-img convert -O vmdk image_sparse.img image_sparse.vmdk