Restore-SCVMCheckpoint

将虚拟机还原到指定的检查点。

语法

Restore-SCVMCheckpoint
       -VMCheckpoint <VMCheckpoint>
       [-RunAsynchronously]
       [-PROTipID <Guid>]
       [-JobVariable <String>]
       [-WhatIf]
       [-Confirm]
       [-OnBehalfOfUser <String>]
       [-OnBehalfOfUserRole <UserRole>]
       [<CommonParameters>]

说明

Restore-SCVMCheckpoint cmdlet 将虚拟机还原到指定的检查点。 虚拟机检查点是虚拟机的时间点“快照”。 可以使用检查点将虚拟机还原为以前的状态。

如果还原操作成功,Restore-VMCheckpoint cmdlet 返回检查点对象。 如果操作失败,cmdlet 将返回一条错误消息。

将虚拟机还原到以前的检查点会放弃自最近创建检查点以来对虚拟机所做的所有更改。 但是,所有检查点(包括还原虚拟机的检查点之后所做的检查点)仍然可用。 因此,最佳做法是在还原虚拟机之前创建新的检查点,以确保在还原操作后虚拟机的当前状态可用。

示例

示例 1:将虚拟机还原到其最新的检查点

PS C:\> Get-SCVMCheckpoint -VM "VM01" -MostRecent | Restore-SCVMCheckpoint

此命令获取虚拟机 VM01 的最新检查点对象,并将 VM01 还原到创建其最新检查点时处于的状态。

示例 2:将虚拟机还原到指定的检查点

PS C:\> $Checkpoints = Get-SCVMCheckpoint -VM "VM02"
PS C:\> Restore-SCVMCheckpoint -VMCheckpoint $Checkpoints[$Checkpoints.count - 2]

第一个命令获取虚拟机 VM02 的所有检查点对象,并将对象存储在$Checkpoints对象数组中。

第二个命令将 VM02 还原到最后一个检查点(此示例假定至少有两个检查点)。 VMM 将保留在还原到的检查点之后创建的检查点,使你能够将虚拟机还原到后面的检查点。 若要将虚拟机还原到其最新检查点,请参阅示例 1。

示例 3:查看虚拟机上上次还原检查点的硬件配置文件

PS C:\> $VM = Get-SCVirtualMachine -Name "VM02"
PS C:\> $VM.LastRestoredVMCheckpoint.CheckpointHWProfile

第一个命令获取名为 VM02 的虚拟机对象,并将该对象存储在$VM变量中。此示例假定虚拟机已还原到其检查点之一。

第二个命令显示有关 VM02 上上次还原检查点的硬件配置文件的信息。

参数

-Confirm

在运行 cmdlet 之前,提示你进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-JobVariable

指定在此参数命名的变量中跟踪和存储作业进度。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-OnBehalfOfUser

指定用户的名称。 此 cmdlet 将代表用户设置为此参数指定的用户。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-OnBehalfOfUserRole

指定用户角色。 若要获取用户角色,请使用 Get-SCUserRole cmdlet。 此 cmdlet 代表此参数指定的用户角色运行。

类型:UserRole
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-PROTipID

指定触发此操作的性能和资源优化提示(PRO 提示)的 ID。 此参数允许你审核 PRO 提示。

类型:Guid
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RunAsynchronously

指示作业以异步方式运行,以便控件立即返回到命令行界面。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-VMCheckpoint

指定 Virtual Machine Manager (VMM) 虚拟机检查点对象。

类型:VMCheckpoint
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-WhatIf

显示 cmdlet 运行时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

输出

VMCheckpoint

此 cmdlet 返回 VMCheckpoint 对象。

备注

  • 需要 VMM 检查点对象,可以使用 Get-SCVMCheckpoint cmdlet 进行检索。