VirtualBox同時支援自己的虛擬硬碟格式VDI和Vmware的VMDK格式,兩種格式的壓縮略有不同。
1. 磁碟重組
第一步要做的是磁碟重組,打開虛擬機器,執行下面的命令:
Linux下
sudo dd if=/dev/zero of=/EMPTY bs=1M sudo rm -f /EMPTY
Windows下
Windows系統需要下載Sysinternals Suite並執行:
sdelete –z
2. 壓縮資料
關閉虛擬機器,現在可以開始壓縮虛擬硬碟了如果你的虛擬硬碟是VirtualBox自己的VDI格式,找到你的虛擬硬碟檔,執行命令:
VBoxManage.exe modifyhd mydisk.vdi --compact
或者查詢uuid來執行
VBoxManage.exe list hdds
VBoxManage.exe modifyhd uuid --compact
如果你的虛擬硬碟是Vmware的VMDK格式,那就要麻煩點,因為VirtualBox不支援直接壓縮VMDK格式,但是可以變通下:先轉換成VDI並壓縮,再轉回VMDK。執行命令:
VBoxManage clonehd "source.vmdk" "cloned.vdi" --format vdi VBoxManage modifyhd cloned.vdi --compact VBoxManage clonehd "cloned.vdi" "compressed.vmdk" --format vmdk
事實上,執行命令的過程中可以發現:在從VMDK轉換到VDI的過程中似乎已經做了壓縮,檔大小已經減少了很多,第二條命令反而沒見到檔大小有什麼變化,所以這裡第二條命令應該可以省略了。
參考來源:http://my.oschina.net/tsl0922/blog/188276