[转载]在VirtualBox中收缩虚拟磁盘映像文件
由于經(jīng)常要測試一些軟件,我在VirtualBox虛擬機中安裝了一套Windows。使用過虛擬機的朋友都知道,為了節(jié)省硬盤空間,一般都使用動態(tài)擴展映像。它不會在一開始就占用指定大小的硬盤空間,而是隨著實際使用的需要動態(tài)擴展。但是在虛擬系統(tǒng)里刪除了文件,使用過的空間并不會自動收回。虛擬系統(tǒng)使用久了以后,磁盤映像文件會變得越來越大。
?
我以前使用過VMware,在VMware Tools里有一個很方便的Shrink功能可以收回未使用的硬盤空間,但是在VirtualBox里沒有看到這樣的選項。經(jīng)過上網(wǎng)查找資料,終于找到了在VirtualBox(我用的是2.0.0版)里Shrink的方法,只需要三個步驟:
?
第一步:在Guest OS中整理磁盤碎片。可以使用Windows自帶的碎片整理工具,不過更推薦使用Defraggler。這是一款免費的磁盤碎片整理工具,使用簡單,整理速度很快。
Defraggler下載地址:http://www.filehippo.com/download_defraggler/
?
第二步:將Guest OS的磁盤剩余空間清零,也就是把0值寫入磁盤未使用空間的每一個字節(jié)。這一步是關(guān)鍵,因為在下一步里,所有只包含0值的磁盤空間將被收回。可以用Sysinternals出品的一個命令行工具SDelete來完成這一步。在Guest OS的命令行里執(zhí)行:
sdelete -c c:
其中c:是要清零的磁盤分區(qū),應(yīng)依次對所有虛擬磁盤分區(qū)執(zhí)行這一步,如d:、e:等等。
SDelete下載地址:http://technet.microsoft.com/en-us/sysinternals/bb897443.aspx
?
第三步:使用VirtualBox提供的VBoxManage工具收縮磁盤映像文件。在Host OS的命令行中進入VirtualBox的安裝目錄(缺省為C:Program FilesSunxVM VirtualBox),執(zhí)行:
VBoxManage modifyvdi?"Windows XP.vdi"?compact
其中Windows XP.vdi是要收縮的磁盤映像文件名,請根據(jù)實際名稱修改,不用指定路徑。
?
經(jīng)過這三個步驟以后,我的vdi文件從2.5G收縮到了1.2G,效果非常明顯。以上介紹的前兩個步驟所使用的工具是針對Windows的,如果Guest OS是Linux或其它系統(tǒng),可以找一找相同功能的工具軟件,原理都是一樣的。
?
?青春就應(yīng)該這樣綻放??游戲測試:三國時期誰是你最好的兄弟!!??你不得不信的星座秘密
總結(jié)
以上是生活随笔為你收集整理的[转载]在VirtualBox中收缩虚拟磁盘映像文件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mysql中使用命令行导入.sql文件新
- 下一篇: C语言断言