虛擬機的技術非常方便,隨開即用,玩壞了就還原或刪掉。但是在備份上有個問題:虛擬機本身會有連續地、零碎地的檔案更動。
以 Mac 的 Time Machine 一個小時一次的備份頻率來說,只要虛擬機容量一有更動,Time Machine 便開始勞師動眾,又重新備份一次虛擬機。這種備份檔還有還原不了的風險 1。長久下來,對於系統資源與備份硬碟來說都是負擔。
虛擬機軟體一般來說都有「快照」(Snapshot)的功能,本篇即是介紹「如何使用 Time Machine 和 VirtualBox 的快照功能來完成資源型的備份」。類似的觀念也適用於其它作業系統與軟體。
以下簡稱 Time Machine 為「TM」,VirtualBox 為「VB」
先打開 VB 的主控視窗,進到快照的分頁(下圖)。
點選上圖中被圈住的按鈕,新增一份快照。快照類似系統的「還原點」,使用者可以透過快照管理將虛擬機還原至某快照點,或者是刪除、檢視與複製特定快照(下圖)。
快照檔預設是存放在虛擬機所屬的目錄內,如 ~/VirtualBox VMs/My VM/Snapshots
(下圖)。每次新增一個快照便會產生一個快照檔,之後虛擬機的更變則會儲存於此快照檔中。簡單來說,快照的設計是以差異性的方式來儲存整個虛擬機 2。
在了解快照的運作方式後,接下來就是讓 TM 別去備份剛新增的快照檔。至於那些舊的快照檔,除非做了快照刪除或合併的動作,否則不會有連續或零碎地的更動。這些舊的快照檔就放心的讓 TM 去備份吧。
要排除特定的備份檔案或資料夾,請開啟 TM 的控制面版,從右下角的「Options…」中打開下圖的視窗。在該視窗中便可利用 +/– 的按鈕來選擇要排除的項目。將剛新增的快照檔加入即可。
在這邊特別提醒一下。
這個方法等於是「手動備份」,備份的時間點或頻率便很重要。太頻繁的操作會感到厭煩,若放任他久久才做一次,則有潛在的檔案遺失的風險。
以科科仔的 git server 的虛擬機來說,我習慣讓每一個快照檔都在 1GB 左右。不過快照檔的成長速度與虛擬機的使用情境有關,還是要依狀況各別處理。
若無法接受 VB 手動的去備份虛擬機,也只能考慮使用其它工具軟體了。以 Parallels Desktop 來說,他就有自動快照 + 備份的功能。只是這類工具軟體通常是要 $$ 的。
發表迴響