
如果您在Windows系统中使用Hyper-V运行虚拟机,并希望在执行高风险操作前保存当前运行状态以便后续回滚,则可以通过创建检查点(Checkpoint)实现。检查点是Hyper-V提供的虚拟机快照机制,可捕获虚拟机内存、磁盘和设备状态的完整时间点副本。以下是具体操作步骤:
一、确认Hyper-V与检查点功能已启用
Hyper-V检查点功能依赖于主机系统已启用Hyper-V平台及虚拟机配置中允许检查点。若未启用,将无法创建检查点。
1、以管理员身份打开“PowerShell”或“命令提示符”,输入 dism /online /enable-feature /featurename:Microsoft-Hyper-V /all /norestart 并回车,启用Hyper-V(如尚未启用)。
2、重启计算机后,打开“Hyper-V管理器”,右键目标虚拟机,选择“设置”。在左侧面板展开“管理”,点击“检查点”。
3、确认右侧“启用检查点”选项为已勾选状态;若为灰色不可选,需先关闭该虚拟机再尝试修改。
4、在“检查点类型”中,根据需求选择“标准检查点”(含内存状态,适合开发测试)或“生产检查点”(仅磁盘一致性快照,不保存内存,适用于启用了VSS的Windows服务器环境)。
二、通过Hyper-V管理器界面创建检查点
此方法适用于图形化操作场景,无需命令行交互,所有操作均在GUI中完成,实时可见检查点列表。
1、确保目标虚拟机处于“正在运行”或“已停止”状态(不支持“已暂停”状态下创建)。
2、在“Hyper-V管理器”左侧列表中,右键点击该虚拟机名称。
3、在弹出菜单中选择“检查点”选项。
4、等待进度条完成,状态栏显示“检查点已成功创建”提示。
5、在虚拟机设置页的“检查点”节点下,或在“检查点”窗格中,可查看新生成的检查点条目,其名称默认为当前日期时间,可右键重命名为更具辨识度的名称(如“安装SQL前”)。
三、使用PowerShell命令行创建检查点
PowerShell提供精确控制能力,支持批量操作、命名自定义及脚本集成,适用于自动化运维流程。
1、以管理员身份启动“Windows PowerShell”。
2、执行命令:Checkpoint-VM -Name “虚拟机名称” -SnapshotName “自定义检查点名称”(将“虚拟机名称”替换为实际名称,如“Win10-Dev”,引号不可省略)。
3、若需为当前运行中虚拟机创建含内存的检查点,该命令默认生效;若仅需磁盘一致性快照,添加参数 -CheckPointType Production。
4、执行后无错误提示即表示成功,可通过 Get-VMSnapshot -VMName “虚拟机名称” 查看全部检查点列表及创建时间。
四、验证检查点是否成功生成
检查点创建完成后,必须确认其数据完整性与可识别性,避免因存储路径异常或权限问题导致快照文件缺失。
1、在Hyper-V管理器中,点击左侧“检查点”节点,观察目标虚拟机名下方是否出现带时间戳的子节点。
2、右键该检查点条目,选择“属性”,查看“位置”字段所指路径是否存在有效.vmcx和.avhd(x)文件。
3、打开文件资源管理器,导航至该路径,确认存在以检查点名称命名的文件夹,且其中包含扩展名为.avhdx的差分磁盘文件及.vmcx配置文件。
4、若路径中仅存在空文件夹或提示“访问被拒绝”,则需检查Hyper-V虚拟机存储根目录的NTFS权限,确保“SYSTEM”与“Hyper-V Administrators”组具有完全控制权。
五、从检查点还原虚拟机状态
当需要回滚至先前保存的状态时,还原操作将覆盖当前虚拟机磁盘与内存数据,恢复至检查点创建时刻的精确状态。
1、确保虚拟机处于“已关闭”或“已停止”状态(若为运行中,右键选择“关闭”或“关机”,勿强制关闭)。
2、在“检查点”窗格中,右键目标检查点条目,选择“应用”。
3、在弹出的确认对话框中,点击“应用”按钮。
4、等待进度条完成,状态栏提示“已成功将虚拟机还原到所选检查点”。此时原检查点仍保留,但当前运行状态已切换至该检查点对应版本。
5、启动虚拟机,验证系统时间、已安装软件、桌面文件等是否与检查点创建时一致。

评论(0)