VirtualBox同時支持本身的虛擬硬盤格式VDI和Vmware的VMDK格式,兩種格式的壓縮略有不一樣。shell
第一步要作的是碎片整理,打開虛擬機,執行下面的命令:ubuntu
Linux系統:ui
sudo dd if=/dev/zero of=/EMPTY bs=1M sudo rm -f /EMPTY
Windows系統須要下載Sysinternals Suite並執行:spa
sdelete –z
關閉虛擬機,如今能夠開始壓縮虛擬硬盤了code
若是你的虛擬硬盤是VirtualBox本身的VDI格式,找到你的虛擬硬盤文件,執行命令:orm
VBoxManage modifyhd mydisk.vdi --compact
若是你的虛擬硬盤是Vmware的VMDK格式,那就要麻煩點,由於VirtualBox不支持直接壓縮VMDK格式,可是能夠變通下:先轉換成VDI並壓縮,再轉回VMDK。執行命令:get
VBoxManage clonehd "source.vmdk" "cloned.vdi" --format vdi VBoxManage modifyhd cloned.vdi --compact VBoxManage clonehd "cloned.vdi" "compressed.vmdk" --format vmdk
事實上,執行命令的過程當中能夠發現:在從VMDK轉換到VDI的過程當中彷佛已經作了壓縮,文件大小已經減小了不少,第二條命令反而沒見到文件大小有什麼變化,因此這裏第二條命令應該能夠省略了。cmd
VMDK 的壓縮,也能夠使用 vmware-vdiskmanager,只須要一條命令(參考):虛擬機
vmware-vdiskmanager -k disk.vmdk