我有一个Hyper-V上的虚拟机, 在使用的过程中我给这个虚拟机创建了多个snapshots。 有一天我把整个的snapshots tree从root删掉了(delete snapshot with subtree), 然后我把虚拟机关机, 看到它在merge. 我期待着所有的avhd能够merge到我VHD里边去, 然后我到 snapshots目录里边去看了, 发现所有的avhd还都在里边。 我如果人工把snapshots移掉的话, 我试了下发现虚拟机启动不了。 所以证明这些个avhd并没有merge到我的vhd里边去, 我们需要手工通过Edit VHD去把每一个avhd merge到它的parent vhd里边去, merge的顺序和snapshots创建的顺序正好相反-from the lateast to the oldest. 在网上找了篇文章, 地址如下:http://blog.miniasp.com/post/2009/09/How-to-restor-vm-and-snapshots-to-a-different-server-in-Hyper-V.aspx
我自己试验了一下, 步骤如下:
1. 更改后缀名(.avhd -> .vhd)
把最近的一个avhd的后缀名从avhd改称vhd.
2. 在Hyper-v Manager 里边选择Edit Disk
3. 选择刚刚更名的VHD.
4. 选择Merge
5. 选择To the parent virtual hard disk
6. 在summary里边我们能够看到它会找到它的parent.
7. 重复1-6步直到把所有的snapshots都merge完
8. 大功告成
Hyper-v: Snapshot merge
时间: 2024-10-14 12:51:14