VMDK を VHD / VHDX に変換する方法

仮想ディスクとして使用される VMDK を VHD / VHDX に変換する方法です。本記事は、中~上級者またはシステム管理者向けの参考情報です。

主に VMware で使用される VMDK 形式の仮想ディスク ファイルを VHD や VHDX 形式の仮想ディスク ファイルに変換すると、Windows や HyperーV で読み込むことができるようになります。

ここでは、既存の VMDK ファイルを VHD または VHDX に変換する方法を記載します。

スポンサーリンク

VMDK を VHD / VHDX に変換する方法

準備

変換元が OVA の場合

変換元が OVA 形式のファイルの場合、適宜展開して VMDK ファイルを取り出しておきます。

Virtual Machine Converter の準備

この手順では、 PowerShell や Microsoft Virtual Machine Converter を使用します。Microsoft Virtual Machine Converter (MVMC) をダウンロードしてインストールする方法については、次のサポート記事をご参照ください:

変換例

PowerShell を管理者権限で起動し、必要なモジュールをインポートします:

import-module "C:\Program Files\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1"

変換コマンドを実行します:

ConvertTo-MvmcVirtualHardDisk `  -SourceLiteralPath <SOURCE.vmdk> `
 -DestinationLiteralPath <OUTPUT_DIR> `
 -VhdType DynamicHardDisk `
 -VhdFormat <VHD/VHDX>

-SourceLiteralPath

変換元の仮想ディスク ファイルを指定します。

指定例:
-SourceLiteralPath c:\tmp\src.vmdk

-DestinationLiteralPath

変換後の仮想ディスクを保存するフォルダを指定します。

指定例:
-DestinationLiteralPath c:\output

-VhdType

VHD タイプを指定します。

指定例:
-VhdType DynamicHardDisk

-VhdFormat

VHD 形式を指定します。

指定例:
-VhdFormat VHD

実行例:

PS C:\tmp\dsfok> ConvertTo-MvmcVirtualHardDisk `
>>  -SourceLiteralPath "C:\tmp\disk1.vmdk" `
>>  -DestinationLiteralPath c:\output `
>>  -VhdType DynamicHardDisk `
>>  -VhdFormat VHDX

Destination            Source
-----------            ------
c:\output\disk1.vhdx   C:\tmp\disk1.vmdk

エラー例

‘ConvertTo-MvmcVirtualHardDisk’ は ~認識されません。

ConvertTo-MvmcVirtualHardDisk : 用語 'ConvertTo-MvmcVirtualHardDisk' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前として認識されません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、再試行してください。
発生場所 行:1 文字:1
+ ConvertTo-MvmcVirtualHardDisk `
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (ConvertTo-MvmcVirtualHardDisk:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

モジュールの読み込みが行われていない場合に表示されます。

The entry 2 is not a supported disk database entry for the descriptor.

ConvertTo-MvmcVirtualHardDisk : The entry 2 is not a supported disk database entry for the descriptor.
発生場所 行:1 文字:1
+ ConvertTo-MvmcVirtualHardDisk `
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (Microsoft.Accel...nversionService:DriveConversionService) [ConvertTo-MvmcVi
   rtualHardDisk], VmdkDescriptorParseException
    + FullyQualifiedErrorId : DiskConversion,Microsoft.Accelerators.Mvmc.Cmdlet.Commands.ConvertToMvmcVirtualHardDiskC
   ommand

ConvertTo-MvmcVirtualHardDisk : 1 つ以上のエラーが発生しました。
発生場所 行:1 文字:1
+ ConvertTo-MvmcVirtualHardDisk `
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : WriteError: (Microsoft.Accel...nversionService:DriveConversionService) [ConvertTo-MvmcVi
   rtualHardDisk], AggregateException
    + FullyQualifiedErrorId : DiskConversion,Microsoft.Accelerators.Mvmc.Cmdlet.Commands.ConvertToMvmcVirtualHardDiskC
   ommand

このエラーが表示された場合は、次のサポート記事を参考に操作を行い、もう一度コマンドを実行します:

変換したファイルを読み込む

変換した仮想ディスク ファイルを読み込み、動作を確認します。

仮想化技術や Windows から VHD / VHDX ファイルを読み込む方法については、次のサポート記事をご参照ください:

※これらの手順で変換される内容は、仮想ディスクの形式です。希望するシステムから読み込めない問題を解決するものであり、仮想ディスク内のディスク フォーマットやファイル システムを変換するものではありません。

参考文献等

注意

  • 本操作例は、Windows 10 (Ver.19H1) にインストールされた Microsoft Virtual Machine Converter 3.x を使用して仮想ディスクの形式を VMDK から VHD または VHDX に変換するものです

スポンサードリンク