Convert-SCVirtualDiskDrive
仮想ハード ディスクを動的から固定、固定から動的、VHD から VHDX に変換するか、パススルー ディスクを仮想ハード ディスクに変換します。
構文
Convert-SCVirtualDiskDrive
[-Fixed]
[-VirtualDiskDrive] <VirtualDiskDrive>
[-Path <String>]
[-FileName <String>]
[-VHDFormatType <VHDFormatType>]
[-JobGroup <Guid>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
Convert-SCVirtualDiskDrive
[-Dynamic]
[-VirtualDiskDrive] <VirtualDiskDrive>
[-Path <String>]
[-FileName <String>]
[-VHDFormatType <VHDFormatType>]
[-JobGroup <Guid>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
Convert-SCVirtualDiskDrive
[-VHDX]
[-DeleteSource]
[-ValidateOnCompletion]
[-VirtualDiskDrive] <VirtualDiskDrive>
[-Path <String>]
[-FileName <String>]
[-JobGroup <Guid>]
[-BlockSizeBytes <Int32>]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[<CommonParameters>]
説明
Convert-SCVirtualDiskDrive コマンドレットは、仮想ディスク ドライブ オブジェクトに接続されている既存の仮想ハード ディスクを動的から固定または固定から動的に変換するか、VHD から VHDX に変換するか、仮想ディスク ドライブ オブジェクトに接続されているパススルー ディスクを仮想ハード ディスクに変換します。
仮想ハード ディスクを 1 つの形式から他方の形式に変換するには、仮想ハード ディスクが構成されている仮想マシンが停止状態である必要があります。
Hyper-V ホストにデプロイされた仮想マシン上の Windows ベースの .vhd ファイルのディスク形式のみを変換できます。
ESX ホストにデプロイされている仮想マシン上の VMware ベースの .vmdk ファイル) は、形式が固定されています。 動的な形式に変換することはできません。
Citrix XenServer ホストにデプロイされている仮想マシン上の Citrix XenServer ベースの .vhd ファイルは、形式が固定されています。 動的な形式に変換することはできません。
Windows ベースの仮想ハード ディスク ファイルのディスク形式は、Hyper-V ホストにデプロイされている仮想マシン上の VHD から VHDX にのみ変換できます。 VHD を VHDX に変換するには、仮想ハード ディスクが構成されている仮想マシンが停止状態である必要があります。
パススルー ディスクとは、バーチャル ハード ディスクの代わりに、バーチャル マシンが使用できるホスト上の物理ハード ディスクのことです。 このコマンドレットは、仮想マシン上の仮想ディスク ドライブに接続されているパススルー ディスクを仮想ハード ディスクに変換します。 仮想マシンは Hyper-V ホスト上にあり、停止状態である必要があります。
例
例 1: 仮想マシン上のパススルー ディスクを仮想ハード ディスクに変換する
PS C:\> $VM = Get-SCVirtualMachine -Name "VM01"
PS C:\> $VirtDiskDrive = Get-SCVirtualDiskDrive -VM $VM
PS C:\> Convert-VirtualDiskDrive $VirtDiskDrive -Fixed -Path "C:\VirtualDiskDrives"
最初のコマンドは、 Get-SCVirtualMachine コマンドレットを使用して VM01 という名前の仮想マシン オブジェクトを取得します。 このコマンドは、そのオブジェクトを$VM変数に格納します。 この例では、VM01 が現在パススルー ディスクを使用するように構成されており、仮想マシンにパススルー ディスクが 1 つしかないことを前提としています。
2 番目のコマンドは、VM01 上の仮想ディスク ドライブ オブジェクトを取得し、そのオブジェクトを $VirtDiskDrive 変数に格納します。
最後のコマンドは、$VirtDiskDriveに格納されているパススルー ディスク ドライブを固定仮想ハード ディスクに変換します。 このコマンドは、仮想ハード ディスクを宛先フォルダー C:\VirtualDiskDrives に移動します。
例 2: 仮想マシン上の仮想ディスク ドライブ上の複数のパススルー ディスクの 1 つを仮想ハード ディスクに変換する
PS C:\> $VM = Get-SCVirtualMachine -Name "VM02"
PS C:\> $VirtDiskDrive = Get-SCVirtualDiskDrive -VM $VM
PS C:\> $VirtDiskDrive[2] | Convert-SCVirtualDiskDrive -Dynamic -Path "D:\"
最初のコマンドは、VM02 という名前の仮想マシン オブジェクトを取得し、そのオブジェクトを $VM 変数に格納します。 この例では、VM02 に 3 つの仮想ディスク ドライブ オブジェクトがあり、最初の仮想ディスク ドライブが仮想ハード ディスク ドライブにバインドされているのに対し、2 番目と 3 番目の仮想ディスク ドライブはどちらもパススルー ディスクにバインドされていることを前提としています。
2 番目のコマンドは、VM02 上のすべての仮想ディスク ドライブ オブジェクトを取得し、それらのオブジェクトを $VirtDiskDrive オブジェクト配列に格納します。
最後のコマンドは、$VirtDiskDrive アレイの 3 番目のメンバーである 3 番目のパススルー ディスクを、動的に拡張された仮想ハード ディスクに変換します。 コマンドは、この新しい仮想ハード ディスクを移動先フォルダー D: に移動します。
例 3: 仮想マシン上の仮想ディスク ドライブ オブジェクトにアタッチされた動的 VHD を固定形式に変換する
PS C:\> $VirtDiskDrive = Get-SCVirtualDiskDrive -VM (Get-SCVirtualMachine -Name "VM03")
PS C:\> Convert-SCVirtualDiskDrive -VirtualDiskDrive $VirtDiskDrive -Fixed
最初のコマンドは、仮想マシン VM03 に接続されている仮想ディスク ドライブ オブジェクトを取得し、その仮想ディスク ドライブ オブジェクトを $VirtDiskDrive 変数に格納します。 この例では、仮想マシンに仮想ディスク ドライブ オブジェクトが 1 つだけあり、仮想ディスク ドライブに接続されている仮想ハード ディスクが動的仮想ハード ディスクであることを前提としています。
2 番目のコマンドは、$VirtDiskDriveに格納されている仮想ハード ディスクを固定ディスクに変換します。
例 4: 仮想マシン上の動的 VHD を固定 VHDX に変換する
PS C:\> $VirtDiskDrive = Get-SCVirtualDiskDrive -VM (Get-SCVirtualMachine -Name "VM03")
PS C:\> Convert-SCVirtualDiskDrive -VirtualDiskDrive $VirtDiskDrive -VHDX
最初のコマンドは、仮想マシン VM03 に接続されている仮想ディスク ドライブ オブジェクトを取得し、そのオブジェクトを $VirtDiskDrive 変数に格納します。 この例では、仮想マシンに仮想ディスク ドライブ オブジェクトが 1 つだけあり、仮想ディスク ドライブに接続されている仮想ハード ディスクが動的仮想ハード ディスクであることを前提としています。 また、この例では、仮想マシンが停止状態であることを前提としています。
2 番目のコマンドは、$VirtDiskDriveに格納されている仮想ハード ディスクを VHDX ディスクに変換します。
例 5: 差分 VHD を差分 VHDX に変換する
PS C:\> $VirtDiskDrive = Get-VirtualDiskDrive -VM (Get-SCVirtualMachine -Name "VM04")
PS C:\> Convert-VirtualDiskDrive -VirtualDiskDrive $VirtDiskDrive -VHDX -BlockSizeBytes 1MB -DeleteSource -ValidateOnCompletion
最初のコマンドは、仮想マシン VM04 に接続されている仮想ディスク ドライブ オブジェクトを取得し、そのオブジェクトを $VirtDiskDrive 変数に格納します。 この例では、仮想マシンに仮想ディスク ドライブ オブジェクトが 1 つだけあり、仮想ディスク ドライブに接続されている仮想ハード ディスクが動的仮想ハード ディスクであることを前提としています。 また、この例では、仮想マシンが停止状態であることを前提としています。
2 番目のコマンドは、$VirtDiskDriveに格納されている差分仮想ハード ディスクを差分 VHDX ディスクに変換します。 このコマンドは、ソース ディスクを削除します。
パラメーター
-BlockSizeBytes
仮想ハード ディスクのブロック サイズをバイト単位で指定します。
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DeleteSource
変換が成功した後、このコマンドレットによってソース仮想ハード ディスクが削除されることを示します。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Dynamic
仮想ハード ディスクを動的に拡張できるように指定します。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FileName
仮想マシンへの追加時に仮想ハード ディスク ファイルの名前を変更するために使用するファイル名を指定します。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Fixed
仮想ハード ディスクのサイズが固定されていることを示します。 仮想ハード ディスクの容量が固定であることを指定します。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-JobGroup
同じジョブ グループ識別子を含む最後のコマンドが実行される直前にセットとして実行される一連のコマンドの識別子を指定します。
Type: | Guid |
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 |
-Path
仮想ディスク ドライブ オブジェクトまたは SCSI バス上の仮想ディスク ドライブ オブジェクトの論理ユニット番号 (LUN) を指定します。
Type: | String |
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 |
-ValidateOnCompletion
このコマンドレットは、変換が成功した後、変換された仮想ハード ディスクを検証することを示します。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VHDFormatType
ハード ディスク形式の種類を指定します。 有効な値は次のとおりです。
- VHD
- VMDK
- VHDX
Type: | VHDFormatType |
Accepted values: | VHD, VMDK, VHDX, VHDS |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VHDX
仮想ハード ディスクの種類が VHDX であることを示します。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VirtualDiskDrive
仮想ディスク ドライブ オブジェクトを指定します。 仮想ハード ディスクまたはパススルー ディスクを仮想ディスク ドライブ オブジェクトに接続できます。
Type: | VirtualDiskDrive |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
出力
VirtualDiskDrive
このコマンドレットは 、VirtualDiskDrive オブジェクトを返します。