共用方式為


New-SCVMCheckpoint

建立 VMM 所管理主機上所部署虛擬機器的檢查點。

Syntax

New-SCVMCheckpoint
   [-VM] <VM>
   [-VMMServer <ServerConnection>]
   [-Description <String>]
   [-Name <String>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [-WhatIf]
   [-Confirm]
   [-OnBehalfOfUser <String>]
   [-OnBehalfOfUserRole <UserRole>]
   [<CommonParameters>]

Description

New-SCVMCheckpoint Cmdlet 會為 Virtual Machine Manager 所管理的主機上部署的虛擬機器建立檢查點, (VMM) 。 您可以使用檢查點,將虛擬機器還原為先前的狀態。

一般用途是先建立檢查點,再將更新安裝至作業系統或虛擬機器上的應用程式,如此一來,如果更新失敗或對虛擬機器造成負面影響,您可以使用 Restore-SCVMCheckpoint Cmdlet 將虛擬機器還原為先前的狀態。

對於部署在 Hyper-V 主機、VMware ESX 主機或 Citrix XenServer 主機上的虛擬機器,VMM 會建立檢查點而不停止虛擬機器,因此不會中斷服務。

請務必先備份虛擬機器上的資料檔,再將虛擬機器還原至檢查點。 當您還原虛擬機器時,其虛擬硬碟上的使用者資料檔會回復到先前的狀態。

雖然檢查點可讓您在變更 (如系統或應用程式更新) 之後將虛擬機器還原為先前的狀態,但是檢查點不提供作業系統、應用程式或檔案的永久備份。 檢查點會隨著虛擬機器存放在主機上。 因此,如果主機失敗,則會遺失部署於該主機之虛擬機器的檢查點。

若要為您的虛擬機器提供資料保護,您可以使用磁片區陰影複製服務 (VSS) 。 您可以使用 Data Protection Manager (DPM) 等備份應用程式,將任何類型的主機上的虛擬機器備份至外部儲存體。

您可以授與自助使用者為其虛擬機器建立及管理檢查點的權限。 如需詳細資訊,請鍵入 Get-Help Set-VMMUserRole -Detailed

範例

範例 1:為具有相同名稱但位於不同主機上的虛擬機器建立虛擬機器檢查點

PS C:\> $Checkpoints = Get-SCVirtualMachine -Name "VM01" | New-SCVMCheckpoint
PS C:\> $Checkpoints

第一個命令會取得名為 VM01 的虛擬機器物件, (本範例假設有多個主機包含名為 VM01 的虛擬機器) 、為每個虛擬機器物件建立檢查點,然後將檢查點物件儲存在$Checkpoints物件陣列中。

第二個命令會顯示儲存在$Checkpoints給使用者之每個檢查點物件的相關資訊。

範例 2:以非同步方式建立虛擬機器的虛擬機器檢查點

PS C:\> Get-SCVirtualMachine -Name "VM02" | New-SCVMCheckpoint -RunAsynchronously -JobVariable "NewCheckpiontJob"
PS C:\> Write-Host $NewCheckpointJob

這個範例會以與範例 1 相同的方式建立檢查點,但此命令會使用 RunAsynchronously 參數立即將控制權傳回命令殼層,並使用 JobVariable 參數來追蹤作業進度,並將進度的記錄儲存在 NewCheckpointJob 變數中。 當您使用 JobVariable 參數時,不會使用貨幣符號 ($) 來建立變數。

第二個命令會顯示$NewCheckpointJob的內容。

參數

-Confirm

在執行 Cmdlet 前提示您確認。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

指定檢查點的描述。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-JobVariable

指定追蹤工作進度,並將工作進度存放在這個參數命名的變數中。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

指定 VMM 物件的名稱。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OnBehalfOfUser

指定使用者的名稱。 此 Cmdlet 會將 代表使用者設定為此參數所指定的使用者。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OnBehalfOfUserRole

指定使用者角色。 若要取得使用者角色,請使用 Get-SCUserRole Cmdlet。 此 Cmdlet 代表此參數所指定的使用者角色運作。

Type:UserRole
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PROTipID

指定觸發此動作之 PRO 提示 (PRO 提示的識別碼) 。 此參數可讓您稽核 PRO 秘訣。

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsynchronously

表示作業會以非同步方式執行,讓控制項立即返回命令殼層。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VM

指定虛擬機器物件。

Type:VM
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMMServer

指定 VMM 伺服器物件。

Type:ServerConnection
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

顯示執行 Cmdlet 後會發生的情況。 Cmdlet 並不會執行。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸出

VMCheckpoint

此 Cmdlet 會傳回 VMCheckpoint 物件。