VMware Workstation虛擬機使用(6)——給虛擬機做快照(2)

(查看往期鏈接請到底部)


我們接上期,介紹虛擬機快照

四、刪除快照

刪除快照十分簡單,打開快照管理器,選中需要刪除的快照,點擊右下方刪除按鈕即可。

VMware Workstation虛擬機使用(6)——給虛擬機做快照(2)


刪除快照會相應刪除該快照的磁盤文件。但大家在刪除快照時會發現,在刪除一些快照的時間非常長,這是為什麼呢?我們下面說說虛擬機快照的原理來解釋這個現象。

虛擬機快照的原理

我們假設現在是未建立快照的原始狀態,磁盤文件為“Windows 7.vmdk”,假設我們在裡面建立了3個文件A、B、C,並進行了編輯。我們現在做第一個快照“A快照”。從前面的介紹可知,“Windows 7.vmdk”文件屬性被設置為只讀,並創建一個新的磁盤文件“Windows 7-000001.vmdk”,我們知道,“Windows 7.vmdk”被設置為只讀後,之前建的3個文件都在這個磁盤文件裡,它們將不能被修改、刪除,也不能再向該磁盤文件內添加新文件。但是我們做完快照後,還是有可能需要對它們進行操作的,那該怎麼辦?

其實,做完快照之後,虛擬機使用新磁盤文件“Windows 7-000001.vmdk”,如果是新建文件D,這個新文件D將被保存在新磁盤文件“Windows 7-000001.vmdk”中。

如果是修改文件A,那麼修改後的文件A會被重新保存一份在新的磁盤文件“Windows 7-000001.vmdk”中,以後再訪問該文件,則訪問的是新磁盤文件“Windows 7-000001.vmdk”中的A文件而不是原磁盤文件“Windows 7.vmdk”中的文件A。

如果是刪除文件B。那麼會在新磁盤文件“Windows 7-000001.vmdk”中標記該文件被刪除,因此在當前狀態下,就看不到文件B。但是B文件還是存在於原來的磁盤文件“Windows 7.vmdk”中的。

那麼前面還有一個文件C,即沒有修改也沒刪除,因此在當前狀態下將直接讀取原磁盤文件“Windows 7.vmdk”中的文件C。

從上我們可以得出一個結論:做完快照後,在當前狀態下虛擬機文件是虛擬機快照後的新磁盤文件“Windows 7-000001.vmdk”和原磁盤文件“Windows 7.vmdk”兩個磁盤文件的總和。

那麼現在,我們在現有修改的基礎上,再創建一個快照,磁盤文件“Windows 7-000001.vmdk”也變成了快照磁盤,屬性被設為只讀,並且再次產生一個新的磁盤文件“Windows 7-000002.vmdk”作為當前狀態使用的磁盤。

從上面可知,每次新創建的磁盤文件與原來被設為只讀屬性的快照磁盤文件有依賴關係,原來的狀態被快照保留,會不斷佔用磁盤空間,比如文件A在每次快照後都進行了修改,那麼三個磁盤文件裡都會存在文件A。所以為了節省物理機的磁盤空間,如果虛擬機的某個快照不打算用了,則可以刪除快照釋放佔用的物理磁盤空間。

那麼我們會發現一個問題,在三個快照中,第三個磁盤文件依賴於前面兩個,如果第一個快照磁盤文件“Windows 7.vmdk”被刪除,那後兩個磁盤文件的依賴不就丟失了?其實,這時虛擬機會將“Wiindows 7.vmdk”與“Windows 7-000001.vmdk”兩個磁盤文件進行合併,確保依賴能夠繼續保持。還合併需要較長時間,因此有時在刪除快照時,特別是有被依賴的快照(即快照時間線內中間的快照)時,會花費較長時間。

刪除快照的技巧

即然我們知道了虛擬機快照的原理,那麼為了確保快速刪除快照文件,就要避免出現磁盤文件合併的情況。因此,我們刪除快照時要注意以下兩點。

1. 刪除中間快照時,最好關閉虛擬機的操作系統後再刪除,否則虛擬機可能會卡死不動。

2. 如果刪除中間快照時,當前位置的狀態也不打算保留,我們應該從時間線的最後一個快照往前刪,這樣就不會出現磁盤文件合併的現象。

\u0001�

(未完待續)下一節為大家介紹如何克隆虛擬機


往期回顧:

5.



VMware Workstation虛擬機使用(6)——給虛擬機做快照(2)


分享到:


相關文章: