Get-SCVirtualDiskDrive

仮想マシン テンプレートまたは仮想マシン上の仮想ディスク ドライブを取得します。

構文

Get-SCVirtualDiskDrive
   [-VMMServer <ServerConnection>]
   [-All]
   [-OnBehalfOfUser <String>]
   [-OnBehalfOfUserRole <UserRole>]
   [<CommonParameters>]
Get-SCVirtualDiskDrive
   [-VMMServer <ServerConnection>]
   -VM <VM>
   [-OnBehalfOfUser <String>]
   [-OnBehalfOfUserRole <UserRole>]
   [<CommonParameters>]
Get-SCVirtualDiskDrive
   [-VMMServer <ServerConnection>]
   -VMTemplate <Template>
   [-OnBehalfOfUser <String>]
   [-OnBehalfOfUserRole <UserRole>]
   [<CommonParameters>]
Get-SCVirtualDiskDrive
   [-VMMServer <ServerConnection>]
   [-ID] <Guid>
   [-OnBehalfOfUser <String>]
   [-OnBehalfOfUserRole <UserRole>]
   [<CommonParameters>]

説明

Get-SCVirtualDiskDrive コマンドレットは、仮想マシン マネージャー (VMM) 仮想ディスク ドライブ オブジェクトを取得します。 これらの仮想ディスク ドライブは、ライブラリに格納されている仮想マシン テンプレート、またはホストまたはライブラリに格納されている仮想マシンで構成できます。

例 1: VMM 環境内のすべての仮想ディスク ドライブを取得する

PS C:\> Get-SCVirtualDiskDrive -VMMServer "VMMServer01.Contoso.com" -All

このコマンドは、VMMServer01 上の VMM に登録されているすべての仮想マシンにバインドされているすべての仮想ディスク ドライブを取得します。 このコマンドは、各仮想ディスク・ドライブに関する情報を表示します。

例 2: 仮想マシンの仮想ディスク ドライブを取得する

PS C:\> $VM = Get-SCVirtualMachine -VMMServer "VMMServer01.Contoso.com" | Where-Object {$_.Name -Eq "VM02"} 
PS C:\> $VirtDiskDrive = Get-SCVirtualDiskDrive -VM $VM
PS C:\> $VirtDiskDrive

最初のコマンドは、 Get-SCVirtualMachine コマンドレットを使用して VM02 という名前の仮想マシン オブジェクトを取得します。 このコマンドは、そのオブジェクトを$VM変数に格納します。

2 番目のコマンドは、VM02 上のすべての仮想ディスク ドライブ オブジェクトを取得し、それらのオブジェクトを$VirtDiskDriveに格納します。 この例の前提となっているように、仮想マシンに複数の仮想ディスク ドライブが含まれる場合、各仮想ディスク ドライブは仮想ハード ディスクまたはパススルー ディスクに接続されます。

最後のコマンドは、VM02 上の各仮想ディスク ドライブのプロパティを表示します。 この情報には、仮想ハード ディスクの名前と、パススルー ディスクのホスト上の物理ドライブのパスが含まれます。

例 3: パススルー ディスクを除く仮想ディスク ドライブの数

PS C:\> $VirtDiskDrive = @(Get-SCVirtualDiskDrive -All | Where-Object {$_.BusType -Eq "IDE" -And $_.PassThroughDisk -Eq $Null -And $_.LUN -Eq 1 -And ($_.Bus -Eq 0 -Or $_.Bus -Eq 1)})
PS C:\> $VirtDiskDrive.Count

最初のコマンドは、いずれかの IDE チャネルの 2 番目のスロットに接続されているパススルー ディスクを除き、仮想ディスク ドライブ オブジェクトを取得します。 @ 記号とかっこを使用すると、コマンドから単一のオブジェクトまたは$Null値が返された場合でも、結果が配列に格納されます。

2 番目のコマンドは、フィルター条件に一致する仮想ディスク ドライブ オブジェクトの数を表示します。

例 4: すべての仮想マシン テンプレートの仮想ディスク ドライブを取得する

PS C:\> $Templates = @(Get-SCVMTemplate)
PS C:\> $Templates | ForEach-Object {Get-SCVirtualDiskDrive -Template $_ | Where-Object {$_.BusType -Eq "IDE"}} | Format-List Name,BusType,Bus,LUN

最初のコマンドは、すべての仮想マシン テンプレートを取得し、それらのオブジェクトを $Templates 配列に格納します。

2 番目のコマンドは、$Templatesに格納されている各仮想マシン テンプレート オブジェクトをForEach-Objectコマンドレットに渡します。 このコマンドレットは、各テンプレートのすべてのディスク ドライブ オブジェクトを取得します。 次に、コマンドは IDE バスの種類を使用する仮想ディスク ドライブ オブジェクトのみを選択し、それらのオブジェクトを Format-List コマンドレットに渡します。このコマンドレットには、各仮想ディスク ドライブ オブジェクトの名前、バスの種類、バス、LUN が表示されます。

パラメーター

-All

このコマンドレットは、親オブジェクトに関係なく、すべての仮想ディスク ドライブ オブジェクトの完全な一覧を取得することを示します。

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

-ID

このコマンドレットが取得する仮想ディスク ドライブの一意の ID を指定します。

Type:Guid
Position:0
Default value:None
Required:True
Accept pipeline input:True
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

-VM

このコマンドレットが仮想ディスク ドライブを取得する仮想マシン オブジェクトを指定します。

Type:VM
Position:Named
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

-VMTemplate

このコマンドレットで取得する仮想ディスク ドライブを含む仮想マシンを作成するために使用される VMM テンプレート オブジェクトを指定します。

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

出力

VirtualDiskDrive

このコマンドレットは 、VirtualDiskDrive オブジェクトを返します。

メモ

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