- 古いWindows 10 PCでOSを再インストールしようとしたところ、MBRパーティションテーブルが原因でインストールできませんでした。
- そこで、いったんドライブを削除してGPT形式に変換することで、無事にWindowsをインストールできました。
- BIOSとUEFIでは想定するパーティションスタイルが違うため、インストールメディアの起動方法に注意が必要です。
1. Windows がインストールできない?
古い Windows 10 PCにOSを再インストールしました。
Windows 10のインストールメディア1から起動して、「カスタム」を選択しました。
ところが、インストールできません。
どのパーティションを選んでも「ドライブ 0 パーティション 2に Windows をインストールすることはできません(詳しい情報の表示)」と表示されます。
1-1. MBRパーティションテーブルがある?
詳細を確認すると、「MBRパーティションテーブルがあるので、EFIシステムではWindowsをインストールできない」と書かれています。
Windows セットアップ
このディスクに Windows をインストールすることはできません。選択されたディスクには、MBR パーティション テーブルがあります。EFI システムでは、GPT ディスクのみに Windows をインストールできます。
これは、内蔵ディスクの基本構造とインストールされるシステムが異なっていることを言っています。
このPC、直前の状態は Windows 10 だったのですが、もともとは製造年が2014年。
そのときのOSは、Windows 8でした。
それを Windows 10にアップグレードして使っていたので、ディスク構造が古いままだったのです。
2. いったんドライブを削除してGPT形式にする
今回は、内部データも消去するので、ドライブをクリアして GPT形式に変えます。
ドライブの前後にシステム領域を確保する必要があるので、基本的には 2元のデータは完全に初期化されます。
いったん MBR形式のすべてのパーティションを削除すると、セットアップが「次へ」と進めるようになりました。
Windowsをインストールするときに、新しいパーティションがGPT形式で割り当てられます3。
あとは時間はかかりますが、待っていると Windows のインストールが完了しました。
2-1. 【別解】diskpartのconvert mbrで変換する
ちなみに、diskpartコマンドでもパーティションスタイルを変更できます4。
まず Shift+F10を押してコマンドプロンプトを起動します。
diskpart
list disk
select disk 0
clean
convert mbr
exit
「select disk」の番号は自分の環境に合わせて変えてください。
間違えると、違うドライブを初期化しかねないので厳重注意です。
list diskで接続しているドライブを確認して、select diskで番号を選びます(ここでは、0の場合)。
cleanコマンドで、ディスクをクリーンな状態にします。
convert mbrコマンドで、ディスクをMBR形式に変換できます5。
3. 何がダメだったの? BIOSとUEFI
インストールメディアを旧BIOS互換で起動するか、UEFIで起動するかで、インストール内容は全く変わります6。
それぞれの起動ファームウェアで想定するパーティションスタイルが違うからです。
起動ファームウェア | パーティションスタイル |
---|---|
BIOS | MBR |
UEFI | GPT |
インストールDVDをUEFIブートすると、Windowsは GPT形式でインストールされます。
逆に、反対にBIOS(UEFI)設定で「互換モード(Legacy)」にしてから、インストールメディアを起動すると MBR モードでインストールできるようです7。
それなら、BIOSのモードを変えるだけでもよかったのかもね。
ただ、GPTの方が少しデータ破損に強い設計だから、それはそれでいいけど。
4. データを変更せずに変換したい(MBR2GPT.exe)
Windows プレインストール環境(Window PE)には、データを変更せずにパーティションスタイルを変換するツールもあります。
MBR2GPT.EXE は、ディスク上のデータを変更または削除せずに、ディスクをマスター ブート レコード (MBR) から GUID パーティション テーブル (GPT) パーティション スタイルに変換します。
MBR2GPT – Windows Deployment | Microsoft Learn
変換できるディスクには、いくつか前提条件があります。
まずは /validate オプションで事前に検証します。
mbr2gpt.exe /validate /disk:0
以前のバージョンの Windows がインストールされているシステム ディスク (Windows 7、8、8.1 など) のオフライン変換は公式にはサポートされていません。
これらのディスクを変換するには、オペレーティング システムを現在サポートされているバージョンの Windows にアップグレードしてから、MBR から GPT への変換を実行することをお勧めします。
MBR2GPT – Windows Deployment | Microsoft Learn
うまくいきそうなら、/convert オプションで実行します。
mbr2gpt /convert /disk:0
4-1. list partitionの変換前後の違い
mbr2gptの変換内容を、Microsoft Learnの例を元に前後のパーティション情報を見比べてみます8。
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
変換前
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> 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
100MBの Partition 4が追加されていますね。
あと、Partition 1もPrimaryからRecoveryになっています。
4-2. detail partitionの変換前後の違い
変換前
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> 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
Typeの部分が変わっているね。
(補足)
- Windows 10 のディスク イメージ (ISO ファイル) のダウンロード
- データを維持する方法 MBR2GPT.exe については後述。
- すべてのパーティションを削除し、未割り当ての状態になったら、「新規」ボタンをクリックし、新しいパーティションを割り当てる。これでパーティションは、GPT形式に変換されます。 – Windows 10曰く「このディスクに、Windowsをインストールできません…」 | Think IT(シンクイット)
- “このディスクにWindowsをインストールすることはできません。選択されたディスクにはMBRパーティションがあります。EFIシステムでは、GPTディスクのみにWindowsをインストールできます。” への対処 - windows – · GitHub
- Windowsのインストールが出来ない場合の対処方法2 (UEFI/MBRの違い) – ぼくんちのTV 別館
- 旧BIOSマザーとUEFIマザーでは、インストール用ドライブの形式が全く違う – Windowsのインストールが出来ない場合の対処方法2 (UEFI/MBRの違い) – ぼくんちのTV 別館
- 【要検証】BIOS(UEFI)設定メニューで従来のBIOSとの互換モードを設定するとMBRモードでインストールできるかもしれません。 – Win8のクリーンインストール中、インストールディスクにMBRパーテーションテーブルがあり、インストールできないエラーが出る – Microsoft コミュニティ
- MBR2GPT – Windows Deployment | Microsoft Learn