VirtualBox是一款非常帮的开源虚拟机软件,体积很小,运行很快。我在Linux下使用该软件,虚拟windowsxp。但使用一段时间后,尤其是在客户机中使用大量临时文件后,文件虽然被删除了,但是虚拟机磁盘vdi文件的大小却只增不减,这样,实际物理硬盘的空间就会被白白浪费,造成 host的磁盘空间紧张。现在就说一下,如何将vdi文件中没有被使用的空白空间归还给主机系统,等需要的时候再分配给客户机使用。

我使用Linux做主机,客户机是windows xp with NTFS file system.
首先在客户机中安装SDelete软件, 可在下面的地址下载到:

http://www.microsoft.com/technet/sysinternals/Security/SDelete.mspx

然后在客户机中的终端里(及ms-dos窗口)输入

sdelete -c c:

如果有分区,以此对每一个分区进行空白磁盘空间的填写0处理。也就是将NTFS格式中的空白空间全部填写成‘0’。
关闭客户机和virtualBox,在bash提示符下输入

VBoxManage modifyhd /path/xxxxx.vdi compact

完成就vdi文件就恢复到了该有的大小,释放了不必要占用的物理硬盘空间。

http://www.vmbest.com/school/2-virtualbox-school/388-virtualboxvdi

Published in 虚拟机

No Responses to “对VirtualBox虚拟机vdi镜像文件进行瘦身”

Leave a Reply

请输入算式结果(看不清请点击图片)
(必须)