減小VirtualBox虛擬硬盤文件的大小

虛擬機使用久了就會發現虛擬硬盤越來越大,但是進入虛擬機裏的系統用命令看了下,實際佔用的空間遠沒有虛擬硬盤大小那麼大,這個讓人很不爽,而且在分享虛擬機鏡像的時候也很不方便。VirtualBox似乎沒有提供圖形界面的方式可以讓我們來壓縮虛擬硬盤大小,但是可以通過命令行來實現。經過實際測試,我的一個30多G的虛擬硬盤可以壓縮到13G大小,可見效果還是非常顯著的,這個可以壓縮的空間取決於你虛擬機內真實的空間佔用大小。

VirtualBox 虛擬硬盤

目錄[-]

  1. 碎片整理
  2. 壓縮磁盤
    VirtualBox同時支持自己的虛擬硬盤格式VDI和Vmware的VMDK格式,兩種格式的壓縮略有不同。

  3. 碎片整理
    第一步要做的是碎片整理,打開虛擬機,執行下面的命令:

Linux系統:

1
2
sudo dd if=/dev/zero of=/EMPTY bs=1M
sudo rm -f /EMPTY

Windows系統需要下載Sysinternals Suite並執行:

1
sdelete –z

  1. 壓縮磁盤
    關閉虛擬機,現在可以開始壓縮虛擬硬盤了

如果你的虛擬硬盤是VirtualBox自己的VDI格式,找到你的虛擬硬盤文件,執行命令:

1
VBoxManage modifyhd mydisk.vdi --compact

如果你的虛擬硬盤是Vmware的VMDK格式,那就要麻煩點,因爲VirtualBox不支持直接壓縮VMDK格式,但是可以變通下:先轉換成VDI並壓縮,再轉回VMDK。執行命令:

1
2
3
VBoxManage clonehd "source.vmdk" "cloned.vdi" --format vdi
VBoxManage modifyhd cloned.vdi --compact
VBoxManage clonehd "cloned.vdi" "compressed.vmdk" --format vmdk

事實上,執行命令的過程中可以發現:在從VMDK轉換到VDI的過程中似乎已經做了壓縮,文件大小已經減少了很多,第二條命令反而沒見到文件大小有什麼變化,所以這裏第二條命令應該可以省略了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章