我有一个原始映像,其中包括我的 Windows 磁盘,其中包括 87Gb 的 C: ; 80 GB 未分配空间; 3 Mo 的 D: ; 147Gb 未分配空间。
如何从虚拟机管理程序磁盘中删除未分配的空间,同时尽可能减少性能损失?
我的虚拟机管理程序是 kvm,我的系统是 CentOS 7.5。
答案1
我认为您需要使用 qemu-img 将原始图像转换为 qcow2。 qcow2 映像将仅在需要时分配磁盘(稀疏)。
例如:
$ qemu-img convert -O qcow2 myimage.raw myimage.qcow2
然后将 VM 定义中的磁盘映像替换为 qcow2 映像。
答案2
处理这种情况的标准实用程序是virt-sparsify
. RAW 文件不支持稀疏,因此您当然需要切换到 qcow2。
@tonioc 有一个更手动的方法,但它肯定也会起作用。