Windows10 Creators UpdateにはMBR(BIOSブート用)をGPT(UEFIブート用)に切り替えるMBR2GPT.exeというツールがあると知って試してみました。
準備編(Windows10上での作業)
メインPCはWindows7からずっとアップデートでやり過ごしてきました。なのでWindows8以降で一般的になったUEFIブートではなく、BIOSブートを利用せざるを得ない状態でしたが、この「MBR2GPT.exe」を利用すればOSをクリーンインストールする必要なくUEFIブートを利用できる、というわけです。
まずはmbr2gptのヘルプを呼び出して、必要なオプションを確かめます。
Microsoft Windows [Version 10.0.15063] (c) 2017 Microsoft Corporation. All rights reserved. >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.
/disk:<diskNumber>でMBRをGPTに変換するディスク番号を指定する必要があるみたい。
コマンドプロンプト上でディスク番号を確認するコマンドを探すと「diskpart」というコマンドがありました。
Microsoft Windows [Version 10.0.15063] (c) 2017 Microsoft Corporation. All rights reserved. >DISKPART
実行すると新たにDISKPART専用ウィンドウが表示されます。オプションを探したところ「list disk」でディスク番号を表示できそう。
Microsoft DiskPart バージョン 10.0.15063.0 Copyright (C) Microsoft Corporation. コンピューター: RYZEN DISKPART> list disk ディスク 状態 サイズ 空き ダイナ GPT ### ミック ------------ ------------- ------- ------- --- --- ディスク 0 オンライン 238 GB 1024 KB * ディスク 1 オンライン 74 GB 1024 KB ディスク 2 オンライン 465 GB 1024 KB * ディスク 3 オンライン 6144 MB 1024 KB DISKPART>
OSがインストールされているディスク(パーティション)は74GBなこと、GPTフラグが立っていないことから、ディスク1が作業対象なことがわかります。
mbr2gpt実行編
念のためコマンドプロンプトを管理者として実行して、mbr2gptを実行します。オプションは変換を指示する/convertと、変換対象を指定する/disk:1の二つです。
Microsoft Windows [Version 10.0.15063] (c) 2017 Microsoft Corporation. All rights reserved. C:\WINDOWS\system32>mbr2gpt /convert /disk:1 ERROR: MBR2GPT can only be used from the Windows Preinstallation Environment. Use /allowFullOS to override.
プリインストール環境でないと使えないよ!と怒られてしまいました。でもマイクロソフトは/allowFullOSを追加すれば良いよ!と助言してくれる優しいOSなので大丈夫。
C:\WINDOWS\system32>mbr2gpt /convert /disk:1 /allowFullOS MBR2GPT will now attempt to convert disk 1. If conversion is successful the disk can only be booted in GPT mode. These changes cannot be undone! MBR2GPT: Attempting to convert disk 1 MBR2GPT: Retrieving layout of disk MBR2GPT: Validating layout, disk sector size is: 512 bytes 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! C:\WINDOWS\system32>
変換完了まで大体5秒程度。あっという間にあっさり完了しました。
本当に変換できているのか心配なので、もう一度DISKPARTを試してみると・・・
Microsoft DiskPart バージョン 10.0.15063.0 Copyright (C) Microsoft Corporation. コンピューター: RYZEN DISKPART> list disk ディスク 状態 サイズ 空き ダイナ GPT ### ミック ------------ ------------- ------- ------- --- --- ディスク 0 オンライン 238 GB 1024 KB * ディスク 1 オンライン 74 GB 2048 KB * ディスク 2 オンライン 465 GB 1024 KB * ディスク 3 オンライン 6144 MB 1024 KB DISKPART>
ディスク1にGPTフラグが立っているので変換は無事に完了しているようです。
UEFI/BIOSの設定変更
ほとんどの場合は、Windows上の変換だけで次回からUEFIブートになるはずです。私の場合は起動速度を少しでも早くするためにUEFI/BIOS設定を弄っているので、UEFIブートできるように変更します。
ASUSの場合、BOOT→CSM(Compatibility Support Module)を弄ります。てっとり早いのはLaunch CSMをAutoに設定すること。各ディスクのブート可能領域を一通りチェックするので起動時間はかかりますが、どんなモードでもとりあえずは起動できるはず。
またはLaunch CSMをDisableにすれば、MBRを探さず高速にUEFIで起動できるはず。
Launch CSMをあえてEnabledにするときはBoot Device Controlが「Legacy OPROM Only」以外を選択すれば起動するはず。
あとは折角UEFIにするなら、折角なのでSecure BootのOS Typeも「Windows UEFI mode」に切り替えておきます。
UEFIブートの効果は?
BIOSブートと比較すると5秒ほど起動が早くなりましたが、RYZENはPOST前10秒程度と長めなので体感的には対して変わりませんでした。それでも効果は確認できたので、GPTへの切り替えは無事成功しました。
コメント
MBR→GPTコンバートで躓いておりましたが、こちらのサイトのお陰で解決出来ました。本当にありがとうございます。