Remove-SCVirtualMachine

VMM から仮想マシン オブジェクトを削除します。

構文

Remove-SCVirtualMachine
      [-VM] <VM>
      [-SkipFileRemoval]
      [-Force]
      [-RunAsynchronously]
      [-PROTipID <Guid>]
      [-JobVariable <String>]
      [-WhatIf]
      [-Confirm]
      [-OnBehalfOfUser <String>]
      [-OnBehalfOfUserRole <UserRole>]
      [<CommonParameters>]

説明

Remove-SCVirtualMachine コマンドレットは、ホストに展開されているか、仮想マシン マネージャー (VMM) ライブラリ サーバーに格納されている仮想マシン オブジェクトを削除します。

このコマンドレットは、VMM データベースから仮想マシン レコードを削除し、仮想マシンに関連付けられているすべてのファイルを削除し、展開先のホストまたは仮想マシンが格納されているライブラリ サーバーから仮想マシンを削除します。

ホスト上のフォルダーが Hyper-V または VMware ではなく VMM によってこの仮想マシン用に作成され、そのフォルダーに他の仮想マシンやその他のデータが含まれている場合は、仮想マシンを削除した後、ファイル システムを使用してフォルダーを削除できます。

Force パラメーターを指定した場合、このコマンドレットは VMM データベースから仮想マシンのみを削除します。 仮想マシン自体は削除されません。

このコマンドレットは、 MarkedForDeletion プロパティの値が $True の成功時にオブジェクトを返します。 失敗した場合、コマンドレットはエラー メッセージを返します。

例 1: ホストにデプロイされている特定の仮想マシンを削除する

PS C:\> $VM = Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.VMHost.Name -eq "VMHost01.Contoso.com" -and $_.Name -eq "VM01" }
PS C:\> Remove-SCVirtualMachine -VM $VM

最初のコマンドは、VMHost01 にデプロイされた VM01 という名前の仮想マシン オブジェクトを取得し、その仮想マシン オブジェクトを $VM 変数に格納します。

2 番目のコマンドは、$VMに格納されているオブジェクトを削除し、ホスト上のファイル システムから対応する仮想マシン ファイルを削除します。

例 2: 特定の文字列を含む名前を持つすべての仮想マシンを削除する

PS C:\> $VMs = @(Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.Name -Match "VM0" } )
PS C:\> $VMs | Remove-SCVirtualMachine

最初のコマンドは、名前に文字列 VM0 が含まれる任意のホストにデプロイされているすべての仮想マシン オブジェクトを取得し、これらの仮想マシン オブジェクトを $VMs という名前の配列に格納します。

2 番目のコマンドは、$VMs配列内の各仮想マシン オブジェクトを削除し、各ホスト上のファイル システムから対応する仮想マシン ファイルを削除します。

例 3: VMM ライブラリ サーバーに格納されている特定の仮想マシンを削除する

PS C:\> $VM = Get-SCVirtualMachine -VMMServer "VMMServer1.Contoso.com" | where { $_.LibraryServer.Name -eq "LibraryServer01.Contoso.com" -and $_.Name -eq "VM02" }
PS C:\> Remove-SCVirtualMachine -VM $VM

最初のコマンドは、VM03 という名前の仮想マシンを表すオブジェクトを取得し、仮想マシン オブジェクトを$VMに格納します。 この例では、VM03 という名前の仮想マシンが 1 つだけ存在します。

2 番目のコマンドは、ライブラリから VM03 を表すオブジェクトを削除し、ライブラリ サーバーのファイル システムから対応する仮想マシン ファイルを削除します。

例 4: VMM ライブラリから複数の格納されている仮想マシンを削除する

PS C:\> $VMs = Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | where { $_.LibraryServer.Name -eq "LibraryServer01.Contoso.com" -and $_.Name -match "VM0" }
PS C:\> $VMs | Remove-SCVirtualMachine -Confirm

最初のコマンドは、名前に文字列 VM0 が含まれており、LibraryServer01 に格納されているすべての仮想マシン オブジェクトを取得します。 次に、このコマンドは、仮想マシン オブジェクトを $VMs という名前の配列に格納します。

2 番目のコマンドは、$VMsに格納されている各仮想マシン オブジェクトを現在のコマンドレットに渡します。これにより、ライブラリから各オブジェクトが削除され、対応する仮想マシン ファイルがライブラリ サーバー上のファイル システムから削除されます。 Confirm パラメーターを使用すると、これらの各仮想マシンを削除するかどうかを確認するメッセージが表示されます。

パラメーター

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

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

-Force

このコマンドレットは、VMM データベースから仮想マシンのみを削除することを示します。 仮想マシン自体は削除されません。

注意

サービス テンプレートまたは VMRole を使用してデプロイされた仮想マシンの場合、このパラメーターは無視され、実際の仮想マシンも削除されます。

Type:SwitchParameter
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

-OnBehalfOfUser

ユーザー名を指定します。 このコマンドレットは、このパラメーターで指定されたユーザーに代わって動作します。

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

-OnBehalfOfUserRole

ユーザー ロールを指定します。 ユーザー ロールを取得するには、 Get-SCUserRole コマンドレットを 使用します。 このコマンドレットは、このパラメーターが指定するユーザー ロールに代わって動作します。

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

-PROTipID

このアクションをトリガーしたパフォーマンスとリソースの最適化のヒント (PRO ヒント) の ID を指定します。 このパラメーターを使用すると、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

-SkipFileRemoval

このコマンドレットは、仮想マシン関連のファイルを直接削除しないことを示します。 このパラメーターを指定した場合、ファイルを直接削除する試みは行われません。

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

-WhatIf

コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。

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

メモ

このコマンドレットには、 Get-SCVirtualMachine コマンドレットを使用して取得できる VMM 仮想マシン オブジェクトが必要です。