話說小弟在自己的電腦裏建立了多個 VM 作不同用途﹐包括網上理財、程式測試等等...
但 VM 越來越多﹐VirtualBox 的 Image Size 又不及 *VMWare 的細﹐對 Harddisk 做成了強大的負擔﹐因此我也開始在網上尋求縮小 Image File 的辦法﹐最後找到 VirtualBox 官網裏的其中一篇討論文章 - #28 (Suggestions: Resize/Compact VDI size)。
我先跟著它用 vBoxManage modifyvdi VDINAME compact 把 vdi file 縮小一次﹐結果是沒有變化。Well...接著看見 Comment 裏有一網友說 sysinternal 有一個 sDelete 的 Program 可以將 Free Space 變做 Zero﹐還說明要用 -z 這個參數。
05/11/07 10:03:05 changed by maddes.b
Check out the "-z" parameters of SysInternals? SDelete:
http://www.microsoft.com/technet/sysinternals/fileanddiskutilities.mspx
本來用 "sDelete /?" 都看見 -c 這個參數才是 Zero free space (good for virtual disk optimization)﹐但 -z 也寫成 Cleanse free space﹐我信以為真﹐在這裏照著做就出事了!一個原本 3.67GB 的 Image File 變了 9.54GB.
Oh! My God!無縮小不特止﹐還要加大三倍?!如果真的沒有縮小的辦法﹐這咪即是捉蟲...=_=|||...幸好 -c 這個參數是可行的﹐這樣才把 vdi file size 縮小致 3.7GB 左右﹐結果是沒有縮小到﹐還多了幾十 MB﹐最後只好把先前 Backup 好的 Image File Copy 回來。
小弟用了兩小時來做這個實驗﹐大家要引以為檻。
最後給大家一些參考
安裝一個 Raw WindowsXP 後
VMWare - 1.4GB
VirtualBox - 1.9GB
Windows XP SP2 + Windows Update to 2007-09-04
VMWare - 2.9 GB﹐
VirtualBox - 3.67GB。
VMWare 會在開機後常註程式佔 40~50MB 左右﹐但 VirtualBox 是 0MB 常註。(這也是我用 vBox 的主因﹐因為 VM 不是經常開﹐卻要佔用記憶體﹐我不太喜歡)
VMWare 在 VM 起動後不會佔用你分發給那個 VM 的 RAM Size﹐但 VirtualBox 卻會立即佔用。
這是在公司測試得來的:
VMWare 不支援 USB 2.0
VirtualBox 支援 USB 2.0
Performance 方面大家都差不多﹐下次有機會都要試埋 VPC 2007。
*註:VMWare 指 Free 的 VMWare Server 1.0.3
發佈留言