Hyper-V功能無疑是Windows Server 2008一大亮點,而snapshot快照功能更使得系統(tǒng)管理員日常備份工作更加的方便高效。但在使用snapshot功能時,特別是在Hyper-V虛機遷移時,以下內(nèi)容應(yīng)當注意:
1.snapshot快照功能實際上并不是保存.vhd文件的當前狀態(tài)到一個.avhd文件,而是在.vhd文件基礎(chǔ)上做差異。也就是說一旦你對某虛機.vhd文件做了snapshot,那么你之后對該虛機所做修改都將存到名為相應(yīng)的"GUID.avhd"文件中,而原.vhd文件在你刪除snapshot樹并關(guān)機之前將不會做任何更改。
2.如果要做虛機遷移,遷移前的虛機沒有做過snapshot,直接復(fù)制各虛機.vhd文件到目的Hyper-V主機并重新使用這些.vhd文件創(chuàng)建虛機即可;如果遷移前的虛機有做過snapshot,在你決定遷移并實施遷移操作之前,應(yīng)刪除各虛機的snapshot樹,這樣虛機在關(guān)閉的時候會將snapshot中的內(nèi)容合并到虛機.vhd文件中,合并完成再復(fù)制文件到目的主機。
如果在實施遷移之前沒有執(zhí)行2中所述操作,遷移后將造成數(shù)據(jù)丟失等問題,如果此時你的原Hyper-V仍然可用,你需要重新回到該主機并執(zhí)行2中所述操作,如果此時原Hyper-V主機不可用而你仍備份有原虛機snapshot文件,可以按照本文以下內(nèi)容進行.vhd與.avhd的手動合并:
1.找出該虛機的最后的snapshot 快照.avhd文件。
打開 \Virtual Machines目錄下的 GUID.xml 文件,如下圖所示:
通過查看圖中藍色部分獲得最后的snapshot快照文件名。
2.在\Snapshots\GUID目錄下找出步驟1中所找到的.avhd文件,更改其后綴名為.vhd。如下圖所示: 
3.執(zhí)行合并。
打開Hyper-V管理工具,選擇"Edit Disk”,打開磁盤編輯向?qū)В?/font>


選擇"Merge"合并,

選擇"To the parent virtual hard disk",

保持默認,向?qū)湍愦_定母.avhd或.vhd是誰,此處你需要記下名字,以便待會對它重復(fù)執(zhí)行合并操作,
等待合并完成。

重復(fù)執(zhí)行上述操作直至所有snapshot快照都成功合并到原.vhd文件。
完成上述操作后,使用最終的.vhd文件在目的Hyper-V主機中創(chuàng)建虛機即可。