Checkpoint-VM

Checkpoint-VM

Creates a snapshot of a virtual machine.

Syntax

Parameter Set: Name
Checkpoint-VM [-Name] <String[]> [[-SnapshotName] <String> ] [-AsJob] [-ComputerName <String[]> ] [-Passthru] [ <CommonParameters>]

Parameter Set: VMObject
Checkpoint-VM [-VM] <VirtualMachine[]> [[-SnapshotName] <String> ] [-AsJob] [-Passthru] [ <CommonParameters>]

Detailed Description

The Checkpoint-VM cmdlet creates a snapshot of a virtual machine.

Parameters

-AsJob

Specifies that the cmdlet is to be run as a background job.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ComputerName<String[]>

Specifies one or more virtual machine hosts on which the virtual machine snapshot is to be created. NetBIOS names, IP addresses, and fully-qualified domain names are allowable. The default is the local computer — use “localhost” or a dot (“.”) to specify the local computer explicitly.

Aliases

none

Required?

false

Position?

named

Default Value

.

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Name<String[]>

Specifies the name of the virtual machine of which a snapshot is to be taken.

Aliases

none

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

true (ByValue)

Accept Wildcard Characters?

true

-Passthru

Specifies that an object is to be passed through to the pipeline representing the virtual machine of which a snapshot is to be taken.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-SnapshotName<String>

Specifies the name of the snapshot to be taken. If not provided, a combination of the virtual machine’s name and a current timestamp is used.

Aliases

none

Required?

false

Position?

2

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-VM<VirtualMachine[]>

Specifies the virtual machine of which a snapshot is to be taken.

Aliases

none

Required?

true

Position?

1

Default Value

none

Accept Pipeline Input?

true (ByValue)

Accept Wildcard Characters?

false

<CommonParameters>

This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see    about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

Outputs

The output type is the type of the objects that the cmdlet emits.

  • Nothing by default; Microsoft.Virtualization.Powershell.Snapshot if -Passthru is specified.

Examples

Example 1

Checkpoints virtual machine Test, creating a snapshot of it named BeforeInstallingUpdates.

PS C:\> Checkpoint-VM -Name Test -SnapshotName BeforeInstallingUpdates

Example 2

Checkpoints virtual machine Test on Hyper-V host Server1.

PS C:\> Get-VM Test –ComputerName Server1 | Checkpoint-VM