MBR2GPT.EXE
適用対象
- Windows10
まとめ
MBR2GPT.EXE は、ディスク上のデータを変更または削除せずに、ディスクをマスター ブート レコード (MBR) から GUID パーティション テーブル (GPT) パーティション スタイルに変換します。 このツールは、Windows プレインストール環境 (Windows PE) のコマンド プロンプトから実行できるように設計されていますが、/allowFullOS オプションを使用することで、完全な Windows 10 オペレーティング システム (OS) から実行することもできます。
MBR2GPT.EXE は、Windows 10 Version 1703 (Creators Update とも呼ばれる) 以降を実行している Windows 10 コンピューターの Windows\System32 ディレクトリにあります。 このツールは、完全な OS 環境と Windows PE の両方で利用できます。 Configuration Manager と Microsoft Deployment Toolkit (MDT) の展開タスク シーケンスでこのツールを使用するには、最初に Windows ADK 1703 以降のバージョを使用して、Windows PE イメージ (winpe.wim、boot.wim) を更新する必要があります。
MBR2GPT の詳細な説明とデモンストレーションについては、次のビデオをご覧ください。
MBR2GPT を使用して以下の処理を実行できます。
- アタッチされている MBR 形式のシステム ディスクを GPT パーティション フォーマットに変換します。 このツールを使用して、非システム ディスクを MBR から GPT に変換することはできません。
- 保護が中断されている場合に、BitLocker 暗号化ボリュームの MBR ディスクを変換します。 変換後に BitLocker を再開するには、既存の保護機能を削除して再作成する必要があります。
- Windows 10 のバージョン 1507、1511、1607 などの以前のバージョンがインストールされているオペレーティング システム ディスクを変換します。 ただし、バージョン 1703 以降の Windows 10 を起動してツールを実行し、オフライン変換を実行する必要があります。
- タスク シーケンスで Windows PE バージョン 1703 以降を使用する場合は、Configuration Manager または MDT を使用して、オペレーティング システムのディスクを MBR から GPT に変換します。
Windows 7、8、または 8.1 など Windows の以前のバージョンがインストールされたシステム ディスクのオフライン変換は、正式にはサポートされていません。 それらのディスクの推奨される変換方法は、まずオペレーティング システムを Windows 10 にアップグレードして、次に MBR から GPT への変換を行うことです。
重要
ディスクを GPT パーティション形式に変換した後に、ファームウェアを UEFI モードで起動するように再構成する必要があります。
ディスクの変換を行う前に、デバイスが UEFI をサポートしていることを確認してください。
ディスクの前提条件
ディスクへの変更が行われる前に、MBR2GPT によって選択されたディスクのレイアウトとジオメトリの検証が行われ、次の確認が行われます。
- 現在、ディスクが MBR を使っていること
- プライマリとセカンダリの 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 | ディスクの検証手順のみを実行し、ディスクが変換に適合するかどうかをレポートします。 |
/convert | ディスクの検証を実行し、すべての検証テストが成功した場合に、変換を実行します。 |
/disk:<diskNumber> | GPT に変換するディスクのディスク番号を指定します。 指定されていない場合には、システム ディスクが使われます。 このメカニズムは diskpart.exe ツールの SELECT DISK SYSTEM コマンドで使用されているものと同じです。 |
/logs:<logDirectory> | ログを書き込むディレクトリを指定します。 指定しない場合は %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 環境の実行中に、ディスクの変換を有効にします。 注:: 既存の MBR システム パーティションは、完全な Windows 環境の実行中に使用されているため、再利用できません。 この場合、OS パーティションを縮小することによって、新しい ESP が作成されます。 |
例
検証の例
次の例では、ディスク 0 の変換の検証を行います。 エラーと警告は、既定の場所である %windir% に記録されます。
X:\>mbr2gpt /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
変換の例
以下に例を示します。
- DiskPart を使用すると、変換の前に現在のディスク パーティション レイアウトが表示されます。MBR ディスク (ディスク 0) には次の 3 つのパーティションがあります: システム予約パーティション、Windows パーティション、回復パーティション。 DVD-ROM もボリューム 0 として存在します。
- OS ボリュームが選択され、パーティションが表示されて、OS パーティションのパーティション詳細が表示されます。 MBR パーティションの種類は 07 で、これはインストール可能ファイル システム (IFS) です。
- MBR2GPT ツールを使用して、ディスク 0 の変換を行います。
- DiskPart ツールには、ディスク 0 は現在 GPT 形式を使用していることが表示されます。
- 新しいディスク レイアウトが表示されます。4 つのパーティションが GPT ディスクに存在します。3つは、以前のパーティションと同じで、もう 1 つは、新しい EFI システム パーティション (ボリューム 3) です。
- OS ボリュームが再度選択されます。詳細が表示され、GPT パーティションの種類 は ebd0a0a2-b9e5-4433-87c0-68b6b72699c7 であり、この種類は PARTITION_BASIC_DATA_GUID です。
上述したように、新しい EFI システム パーティションが正常に起動できるように、コンピューターのファームウェアに変更を行う必要があります。
X:\>DiskPart
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 への変換プロセスの概要を示します。
- ディスクの検証を実行します。
- EFI システム パーティション (ESP) が存在しない場合には、ディスクの再パーティション分割を行い、ESP を作成します。
- ESPに UEFI ブート ファイルがインストールされます。
- GPT メタデータとレイアウト情報が適用されます。
- ブート構成データ (BCD) ストアが更新されます。
- ドライブ文字の割り当てが復元されます。
EFI システム パーティションの作成
変換後にも Windows が起動可能であるためには、EFI システム パーティション (ESP) が存在する必要があります。 ESP は次の規則により作成されます。
- 次の要件が満たされる場合には、既存の MBR システム パーティションが再利用されます。
a. OS または Windows 回復環境パーティションでないこと。
b. 100 MB 以上 (4K セクター サイズのディスクでは 260 MB 以上) のサイズであること。
c. 1 GB 以下のサイズであること。 これはデータ パーティションでないことを確認するための、安全のための予防措置です。
d. 変換が完全な OS から実行されていないこと。 この場合、既存の MBR システム パーティションは使用されており、再利用できません。 - 既存の MBR システム パーティションが再利用できない場合、OS パーティションが縮小されて、新しい ESP が作成されます。 この新しいパーティションのサイズは 100 MB (または 4 K セクター サイズのディスクでは 260 MB) で、FAT32 でフォーマットされます。
既存の MBR システム パーティションが ESP として再利用されない場合、そのパーティションは変換後にはブート プロセスでは使用されません。 その他のパーティションは変更されません。
重要
既存の MBR システム パーティションが ESP として再利用されない場合、ドライブ文字が割り当てられることがあります。 この小規模なパーティションを使用しない場合は、ドライブ文字を手動で非表示にする必要があります。
パーティションの種類のマッピングとパーティションの属性
GPT パーティションは、MBR パーティションとは異なる種類 ID のセットを使用するため、変換されたディスク上の各パーティションには新しい種類 ID が割り当てられる必要があります。 パーティションの種類のマッピングは、次の規則に従います。
- ESP は常にパーティションの種類を PARTITION_SYSTEM_GUID (c12a7328-f81f-11d2-ba4b-00a0c93ec93b) として設定されます。
- MBR パーティションが /map スイッチで指定されたエントリのいずれかに一致する種類である場合は、指定された GPT のパーティションの種類 ID が使用されます。
- MBR パーティションの種類が 0x27 である場合、パーティションは PARTITION_MSFT_RECOVERY_GUID (de94bba4-06d1-4d40-a16a-bfd50179d6ac) の種類の GPT パーティションに変換されます。
- 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 内のすべてのエントリを反復して次の処理を行います。
- 一意の ID が、変換されたディスクに含まれているいずれかのボリュームの、いずれかの一意の ID に対応することを確認します。
- 見つかった場合は、レイアウト変換後に取得した新しい一意の ID をその値に設定します。
- 新しい一意の 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 /? と入力します。
次のように表示されます。
C:\> mbr2gpt /?
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 レイアウトへの変換は成功しましたが、いくつかのブート構成データのエントリを復元できませんでした。 |
パーティションの種類の確認
Windows PowerShell プロンプトで次のコマンドを入力すると、ディスク番号とパーティションの種類を表示できます。 出力の例を以下に示します。
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
ディスクの管理ツールを開き、ディスク番号を右クリックして、[プロパティ] をクリックし、次に [ボリューム] タブをクリックして、ディスクのパーティションの種類を表示することもできます。次に例を示します。
Windows PE を使用しているときなど、Windows PowerShell とディスクの管理を使用できない場合は、コマンド プロンプトで DiskPart ツールを使用して、パーティションの種類を確認できます。 コマンド ラインからパーティションのスタイルを確認するには、「diskpart」と入力し、次に「list disk」と入力します。 次に例を示します。
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 238 GB 0 B
Disk 1 Online 931 GB 0 B *
この例では、ディスク 0 は MBR パーティション スタイルでフォーマットされ、ディスク 1 は GPT でフォーマットされています。
関連トピック
Windows 10 Enterprise のシステム要件
Windows 10 の仕様
Windows 10 IT 担当者フォーラム