MBR2GPT.EXE

MBR2GPT.EXE は、ディスク上のデータを変更または削除せずに、ディスクをマスター ブート レコード (MBR) から GUID パーティション テーブル (GPT) パーティション スタイルに変換します。 このツールは、Windows プレインストール環境 (Windows PE) コマンド プロンプトから実行されますが、 オプションを使用 /allowFullOS して完全な Windows オペレーティング システム (OS) から実行することもできます。

MBR2GPT.EXE は、Windows を Windows\System32 実行しているコンピューター上のディレクトリにあります。

このツールは、完全な OS 環境と Windows PE の両方で利用できます。

MBR2GPT の詳細な説明とデモンストレーションについては、次のビデオをご覧ください。

MBR2GPT を使用して以下の処理を実行できます。

  • アタッチされている MBR 形式のシステム ディスクを GPT パーティション フォーマットに変換します。 このツールを使用して、非システム ディスクを MBR から GPT に変換することはできません。
  • 保護が中断されている限り、BitLocker で暗号化されたボリュームを使用して MBR ディスクを変換します。 変換後に BitLocker を再開するには、既存の保護機能を削除して再作成する必要があります。
  • Microsoft Configuration Managerまたは Microsoft Deployment Toolkit (MDT) を使用して、オペレーティング システム ディスクを MBR から GPT に変換します。

以前のバージョンの Windows がインストールされているシステム ディスク (Windows 7、8、8.1 など) のオフライン変換は公式にはサポートされていません。 これらのディスクを変換するには、オペレーティング システムを現在サポートされているバージョンの Windows にアップグレードしてから、MBR から GPT への変換を実行することをお勧めします。

重要

ディスクを GPT パーティション形式に変換した後に、ファームウェアを UEFI モードで起動するように再構成する必要があります。

ディスクの変換を行う前に、デバイスが UEFI をサポートしていることを確認してください。

ディスクの前提条件

ディスクへの変更が行われる前に、MBR2GPT によって選択されたディスクのレイアウトとジオメトリの検証が行われ、次の確認が行われます。

  • 現在、ディスクが MBR を使っていること
  • プライマリ GPT とセカンダリ GPT を格納するのに十分な領域がパーティションによって占有されていません。
    • ディスクの前面に 16 KB + 2 セクター
    • ディスクの最後に 16 KB + 1 セクター
  • MBR パーティション テーブルには、最大で 3 つのプライマリ パーティションがあります
  • パーティションの 1 つがアクティブとして設定されているシステム パーティションであること
  • ディスクに拡張/論理パーティションがない
  • システム パーティションの BCD ストアに、OS パーティションをポイントしている既定の OS エントリが含まれること
  • ボリューム ID は、ドライブ文字が割り当てられているボリュームごとに取得できます
  • ディスク上のすべてのパーティションは、Windows によって認識される MBR 型であるか、コマンド ライン オプションを使用してマッピングが /map 指定されています

これらのチェックのいずれかが失敗した場合、変換は続行せず、エラーが返されます。

構文

MBR2GPT /validate|convert [/disk:<diskNumber>] [/logs:<logDirectory>] [/map:<source>=<destination>] [/allowFullOS]

オプション

オプション 説明
/validate ディスク検証 MBR2GPT.exe 手順のみを実行し、ディスクが変換の対象かどうかを報告するように指示します。
/convert ディスク検証 MBR2GPT.exe を実行し、すべての検証テストに合格した場合に変換を続行するように指示します。
/disk:<diskNumber> GPT に変換するディスクのディスク番号を指定します。 指定されていない場合には、システム ディスクが使われます。 使用されるメカニズムは、diskpart.exe ツールの SELECT DISK SYSTEM コマンドで使用されるメカニズムと同じです。
/logs:<logDirectory> ログを書き込むディレクトリを指定します MBR2GPT.exe 。 指定しない場合は %windir% が使用されます。 指定した場合、ディレクトリは既に存在している必要があります。自動的に作成または上書きされることはありません。
/map:<source>=<destination> MBR と GPT の間の他のパーティションの種類のマッピングを指定します。 MBR パーティション番号は、16 進数ではなく 10 進表記で指定されます。 GPT GUID には、たとえば /map:42={af9b60a0-1431-4f62-bc68-3311714a69ad} のように、角かっこを含むことができます。 複数のマッピングが必要な場合には、複数の /map オプションを指定できます。
/allowFullOS 既定では、Windows PE からのみ実行でき、 MBR2GPT.exe 完全な Windows での実行はブロックされます。 このオプションは、このブロックを上書きし、完全な Windows 環境の実行中に、ディスクの変換を有効にします。
: 既存の MBR システム パーティションは、Windows 環境全体の実行中に使用されているため、再利用できません。 この場合、OS パーティションを圧縮することで、新しい EFI システム パーティションが作成されます。

検証の例

次の例では、ディスク 0 の変換の検証を行います。 エラーと警告は、 の既定の場所 %windir%に記録されます。

X:\> mbr2gpt.exe /validate /disk:0
MBR2GPT: Attempting to validate disk 0
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512
MBR2GPT: Validation completed successfully

変換の例

以下に例を示します。

  1. 現在のディスク パーティション レイアウトは、DiskPart を使用した変換の前に表示されます。MBR ディスク (ディスク 0) には 3 つのパーティションが存在します。

    • システム予約パーティション。
    • Windows パーティション。
    • 回復パーティション。
    • DVD-ROM もボリューム 0 として存在します。
  2. OS ボリュームが選択され、パーティションが表示されて、OS パーティションのパーティション詳細が表示されます。 MBR パーティションの種類07 で、これはインストール可能ファイル システム (IFS) です。

  3. MBR2GPT ツールを使用して、ディスク 0 の変換を行います。

  4. DiskPart ツールには、ディスク 0 は現在 GPT 形式を使用していることが表示されます。

  5. 新しいディスク レイアウトが表示されます。4 つのパーティションが GPT ディスクに存在します。3つは、以前のパーティションと同じで、もう 1 つは、新しい EFI システム パーティション (ボリューム 3) です。

  6. OS ボリュームが再び選択されます。 詳細には、OS ボリュームが、PARTITION_BASIC_DATA_GUIDの種類に対応する ebd0a0a2-b9e5-4433-87c0-68b6b72699c7GPT パーティションの種類に変換されていることが表示されます。

MBR2GPT ツールからの出力で示されているように、新しい EFI システム パーティションが正しく起動するように、コンピューターのファームウェアを変更する必要があります。


展開して例MBR2GPT表示する
X:\>DiskPart.exe

Microsoft DiskPart version 10.0.15048.0

Copyright (C) Microsoft Corporation.
On computer: MININT-K71F13N

DISKPART> list volume

  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  Volume 0     F   CENA_X64FRE  UDF    DVD-ROM     4027 MB  Healthy
  Volume 1     C   System Rese  NTFS   Partition    499 MB  Healthy
  Volume 2     D   Windows      NTFS   Partition     58 GB  Healthy
  Volume 3     E   Recovery     NTFS   Partition    612 MB  Healthy    Hidden

DISKPART> select volume 2

Volume 2 is the selected volume.

DISKPART> list partition

  Partition ###  Type              Size     Offset
  -------------  ----------------  -------  -------
  Partition 1    Primary            499 MB  1024 KB
* Partition 2    Primary             58 GB   500 MB
  Partition 3    Recovery           612 MB    59 GB

DISKPART> detail partition

Partition 2
Type  : 07
Hidden: No
Active: No
Offset in Bytes: 524288000

  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
* Volume 2     D   Windows      NTFS   Partition     58 GB  Healthy

DISKPART> exit

Leaving DiskPart...

X:\>mbr2gpt /convert /disk:0

MBR2GPT will now attempt to convert disk 0.
If conversion is successful the disk can only be booted in GPT mode.
These changes cannot be undone!

MBR2GPT: Attempting to convert disk 0
MBR2GPT: Retrieving layout of disk
MBR2GPT: Validating layout, disk sector size is: 512 bytes
MBR2GPT: Trying to shrink the system partition
MBR2GPT: Trying to shrink the OS partition
MBR2GPT: Creating the EFI system partition
MBR2GPT: Installing the new boot files
MBR2GPT: Performing the layout conversion
MBR2GPT: Migrating default boot entry
MBR2GPT: Adding recovery boot entry
MBR2GPT: Fixing drive letter mapping
MBR2GPT: Conversion completed successfully
MBR2GPT: Before the new system can boot properly you need to switch the firmware to boot to UEFI mode!

X:\>DiskPart

Microsoft DiskPart version 10.0.15048.0

Copyright (C) Microsoft Corporation.
On computer: MININT-K71F13N

DISKPART> list disk

  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  Disk 0    Online           60 GB      0 B        *

DISKPART> select disk 0

Disk 0 is now the selected disk.

DISKPART> list volume

  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
  Volume 0     F   CENA_X64FRE  UDF    DVD-ROM     4027 MB  Healthy
  Volume 1     D   Windows      NTFS   Partition     58 GB  Healthy
  Volume 2     C   System Rese  NTFS   Partition    499 MB  Healthy    Hidden
  Volume 3                      FAT32  Partition    100 MB  Healthy    Hidden
  Volume 4     E   Recovery     NTFS   Partition    612 MB  Healthy    Hidden

DISKPART> select volume 1

Volume 1 is the selected volume.

DISKPART> list partition

  Partition ###  Type              Size     Offset
  -------------  ----------------  -------  -------
  Partition 1    Recovery           499 MB  1024 KB
* Partition 2    Primary             58 GB   500 MB
  Partition 4    System             100 MB    59 GB
  Partition 3    Recovery           612 MB    59 GB

DISKPART> detail partition

Partition 2
Type    : ebd0a0a2-b9e5-4433-87c0-68b6b72699c7
Hidden  : No
Required: No
Attrib  : 0000000000000000
Offset in Bytes: 524288000

  Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
  ----------  ---  -----------  -----  ----------  -------  ---------  --------
* Volume 1     D   Windows      NTFS   Partition     58 GB  Healthy

仕様

ディスク変換のワークフロー

次の手順は、MBR から GPT への変換プロセスの概要を示します。

  1. ディスクの検証を実行します。
  2. ディスクがまだ存在しない場合は、EFI システム パーティションを作成するために再パーティション分割されます。
  3. UEFI ブート ファイルは EFI システム パーティションにインストールされます。
  4. GPT メタデータとレイアウト情報が適用されます。
  5. ブート構成データ (BCD) ストアが更新されます。
  6. ドライブ文字の割り当てが復元されます。

EFI システム パーティションの作成

変換後も Windows が起動可能な状態を維持するには、EFI システム パーティションを配置する必要があります。 MBR2GPTは、次の規則を使用して EFI システム パーティションを作成します。

  1. 次の要件が満たされる場合には、既存の MBR システム パーティションが再利用されます。

    • OS または Windows Recovery Environment パーティションではありません。
    • サイズは少なくとも 100 MB (4K セクター サイズ ディスクの場合は 260 MB) です。
    • サイズが 1 GB 以下です。 このサイズは、データ パーティションではないことを確認するための安全上の注意です。
    • 完全な OS から変換が実行されていません。 この場合、既存の MBR システム パーティションが使用中であり、再利用できません。
  2. 既存の MBR システム パーティションを再利用できない場合は、OS パーティションを圧縮することで新しい EFI システム パーティションが作成されます。 この新しいパーティションのサイズは 100 MB (4K セクター サイズ ディスクの場合は 260 MB) で、FAT32 形式です。

既存の MBR システム パーティションが EFI システム パーティションに再利用されない場合、変換後のブート プロセスでは使用されなくなります。 他のパーティションは変更されません。

重要

既存の MBR システム パーティションが EFI システム パーティションに再利用されない場合は、ドライブ文字が割り当てられている可能性があります。 この小規模なパーティションを使用しない場合は、ドライブ文字を手動で非表示にする必要があります。

パーティションの種類のマッピングとパーティションの属性

GPT パーティションは、MBR パーティションとは異なる種類 ID のセットを使用するため、変換されたディスク上の各パーティションには新しい種類 ID が割り当てられる必要があります。 パーティションの種類のマッピングは、次の規則に従います。

  1. EFI システム パーティションは常にパーティションの種類PARTITION_SYSTEM_GUIDに設定 されます (c12a7328-f81f-11d2-ba4b-00a0c93ec93b)。
  2. MBR パーティションが、スイッチで /map 指定されたエントリのいずれかに一致する型の場合は、指定された GPT パーティションの種類 ID が使用されます。
  3. MBR パーティションの種類が 0x27 の場合、パーティションは型 PARTITION_MSFT_RECOVERY_GUID の GPT パーティションに変換されます (de94bba4-06d1-4d40-a16a-bfd50179d6ac)。
  4. Windows によって認識されるその他のすべての MBR パーティションは、 PARTITION_BASIC_DATA_GUID 型 (ebd0a0a2-b9e5-4433-87c0-68b6b72699c7) の GPT パーティションに変換されます。

正しいパーティションの種類の適用に加え、PARTITION_MSFT_RECOVERY_GUID の種類のパーティションには次の GPT 属性のセットがあります。

  • GPT_ATTRIBUTE_PLATFORM_REQUIRED (0x0000000000000001)
  • GPT_BASIC_DATA_ATTRIBUTE_NO_DRIVE_LETTER (0x8000000000000000)

パーティションの種類の詳細については、以下を参照してください。

ドライブ文字の割り当ての保持

変換ツールは、変換されたディスクのボリュームに対応するレジストリに含まれるすべてのドライブ文字の割り当て情報を再マップしようとします。 ドライブ文字の割り当てを復元できない場合は、コンソールとログにエラーが表示され、ドライブ文字の正しい割り当てを手動で実行できます。

重要

このコードはレイアウト変換が行われた後に実行されるため、この段階では操作を元に戻すことはできません。

変換ツールは、レイアウト変換の前後でボリュームの一意の ID データを取得し、その情報を使ってルックアップ テーブルを作成します。 その後、 HKLM\SYSTEM\MountedDevices 内のすべてのエントリを反復処理し、エントリごとに次の処理を行います。

  1. 一意の ID が、変換されたディスクの一部であるボリュームの一意の ID のいずれかに対応しているかどうかを確認します。
  2. 見つかった場合は、レイアウト変換後に取得した新しい一意の ID をその値に設定します。
  3. 新しい一意の ID を設定できない場合、値名が \DosDevices で始まる場合は、ドライブ文字の割り当てを適切に復元するための手動操作の必要性に関するコンソールとログ警告を発行します。

トラブルシューティング

ツールは、その出力に状態情報を表示します。 エラーが発生した場合には、検証と変換の両方がクリアされます。 たとえば、1 つ以上のパーティションが正しく変換されない場合、この情報は表示され、変換は実行されません。 発生したエラーに関する詳細を表示するには、関連するログ ファイルを参照します。

ログ

MBR2GPT ツールは 4 つのログを作成します。

  • diagerr.xml
  • diagwrn.xml
  • setupact.log
  • setuperr.log

これらのファイルには、ディスクの検証と変換で発生したエラーと警告が含まれます。 これらのファイルの情報は、ツールの問題の診断に役立ちます。 setupact.logファイルと setuperr.log ファイルには、ディスクのレイアウト、プロセス、ディスクの検証と変換に関するその他の情報に関する最も詳細な情報があります。

setupact.log* ファイルは、ディレクトリにある %Windir%\Panther Windows セットアップ ファイルとは異なります。

Windows PE での、これらのすべてのログ ファイルの既定の場所は、%windir% です。

対話型のヘルプ

ツールを使用するときに使用できるオプションの一覧を表示するには、管理者特権のコマンド プロンプトで次のコマンドを入力します。

mbr2gpt.exe /?

次のように表示されます。

C:\> mbr2gpt.exe /?

Converts a disk from MBR to GPT partitioning without modifying or deleting data on the disk.

MBR2GPT.exe /validate|convert [/disk:<diskNumber>] [/logs:<logDirectory>] [/map:<source>=<destination>] [/allowFullOS]

Where:

 /validate
         - Validates that the selected disk can be converted
           without performing the actual conversion.

 /convert
         - Validates that the selected disk can be converted
           and performs the actual conversion.

 /disk:<diskNumber>
         - Specifies the disk number of the disk to be processed.
           If not specified, the system disk is processed.

 /logs:<logDirectory>
         - Specifies the directory for logging. By default logs
           are created in the %windir% directory.

 /map:<source>=<destination>
         - Specifies the GPT partition type to be used for a
           given MBR partition type not recognized by Windows.
           Multiple /map switches are allowed.

 /allowFullOS
         - Allows the tool to be used from the full Windows
           environment. By default, this tool can only be used
           from the Windows Preinstallation Environment.

リターン コード

MBR2GPT には、次のような関連するリターン コードがあります。

リターン コード 説明
0 変換は正常に完了しました。
1 変換はユーザーによって取り消されました。
2 内部エラーにより、変換が失敗しました。
3 初期化エラーにより、変換が失敗しました。
4 コマンドライン パラメーターが無効なため、変換が失敗しました。
5 選択されたディスクのジオメトリとレイアウトの読み取りエラーのため、変換が失敗しました。
6 ディスク上の 1 つ以上のボリュームが暗号化されているため、変換が失敗しました。
7 選択したディスクのジオメトリとレイアウトが要件を満たしていないため、変換に失敗しました。
8 EFI システム パーティションの作成中にエラーが発生したため、変換が失敗しました。
9 ブート ファイルのインストールでエラーが発生したため、変換が失敗しました。
10 GPT レイアウトの適用時のエラーのため、変換が失敗しました。
100 GPT レイアウトへの変換は成功しましたが、一部のブート構成データ エントリを復元できませんでした。

パーティションの種類の確認

パーティションの種類は、次の 3 つの方法のいずれかで決定できます。

  • Windows PowerShellの使用
  • ディスク管理ツールの使用
  • DiskPart ツールの使用

Windows PowerShell

Windows PowerShellプロンプトで次のコマンドを入力して、ディスク番号とパーティションの種類を表示できます。

Get-Disk | ft -Auto

出力例:

PS C:\> Get-Disk | ft -Auto

Number Friendly Name      Serial Number        HealthStatus OperationalStatus Total Size Partition Style
------ -------------      -------------        ------------ ----------------- ---------- ---------------
0      MTFDDAK256MAM-1K1  13050928F47C         Healthy      Online             238.47 GB MBR
1      ST1000DM003-1ER162 Z4Y3GD8F             Healthy      Online             931.51 GB GPT

ディスク管理ツール

ディスク管理ツールを使用して、ディスクのパーティションの種類を表示できます。

  1. [スタート] メニューを右クリックし、[ ディスクの管理] を選択します。 または、[スタート] メニューを右クリックし、[ 実行] を選択します。 表示された [ 実行 ] ダイアログ ボックスで、「」と入力 diskmgmt.msc し、[OK] を選択 します

  2. 表示される [ ディスクの管理 ] ウィンドウで、次の手順を実行します。

    1. 下部のウィンドウで、目的のディスク番号を選択します。

    2. [ アクション ] メニューを選択し、[ すべてのタスクの > プロパティ] を選択します。 または、目的のディスク数を右クリックし、[プロパティ] を選択 します

    3. ディスクに表示される [ プロパティ ] ダイアログ ボックスで、[ボリューム] タブ 選択します。

    4. [ボリューム] タブ [パーティション の種類] が [ パーティション スタイル: ] の横に表示されます。

DiskPart ツール

パーティションの種類は、DiskPart ツールを使用して決定できます。 DiskPart ツールは、WinPE など、ディスク管理ツールと PowerShell を使用できないシナリオで役立ちます。 PowerShell オプション コンポーネントが読み込まれていない場合、WinPE では PowerShell を使用できません。 DiskPart ツールを使用してパーティションの種類を決定するには:

  1. 管理者特権でのコマンド プロンプトを開きます。

  2. 開いた管理者特権のコマンド プロンプトで、次のコマンドを入力します。

    DiskPart.exe
    
  3. DISKPART> プロンプトがコマンド プロンプト ウィンドウに表示されます。 DISKPART> プロンプトで、次のコマンドを入力します。

    list disk
    
  4. パーティションの種類が Gpt 列に表示されます。 パーティションが GPT の場合、アスタリスク (*) が列に表示されます。 パーティションが MBR の場合、列は空白になります。

次に、2 つのディスクのパーティションの種類を示す DiskPart ツールの出力例を示します。

X:\>DiskPart.exe

Microsoft DiskPart version 10.0.15048.0

Copyright (C) Microsoft Corporation.
On computer: MININT-K71F13N

DISKPART> list disk

  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  Disk 0    Online          238 GB      0 B
  Disk 1    Online          931 GB      0 B        *

この例では、ディスク 0 は MBR パーティション スタイルでフォーマットされ、ディスク 1 は GPT でフォーマットされています。