WindowsをUEFIで起動できるようにした

マザーボードのCSMを無効にすると起動できないシステムディスクがあったので、コマンドでMBRからGPTディスクに変換してUEFIブートで起動できるようにしました。

この方法はマザーボードがUEFIモードでの起動に対応していることが大前提です。(よほど古いPCでなければ対応済み。そこまで古いPCは一般の人なら故障して取り換えていると思います。なんとか延命させている技術者は別ですが、その場合はUEFI自体が不要ですね。)

MBRディスクをGPTディスクに変換する

ここではWindowsの起動ディスクを変換するので、Windowsの中で操作することができません。

Windowsが起動している状態で、スタートの設定の「更新とセキュリティ」にある「回復」で回復用の起動を行います。Windowsのインストールディスクを使って起動する場合に似ていますが、こちらでは管理者アカウントのパスワードを使ってログインする必要があります。

  • トラブルシューティング
  • 詳細オプション
  • コマンドプロンプト
  • アカウントの選択とパスワードの入力

へと進みます。

再起動により、Windowsが起動していない状態でのコマンドプロンプト画面になります。

DiskPartで操作したいディスクの番号を確認します。

diskpart
list disk

list diskはディスクの状態を確認します。Windowsがインストールされているディスクが何番かを確認します。
GPTに*が付いているディスクは既にGPTディスクとなっています。

exit

exitでDiskPartを終了させます。

mbr2gptコマンドにvalidate オプションを使い問題がないかを確認します。
ここではディスク0番に対して操作します。違う番号の場合はdisk:0の数字を変更します。ここでは、ディスク0が240GBのSSD、ディスク1が3TBのHDD、ディスク2が16GBのUSBメモリとなっており、ディスク0のSSDにインストールされているWindowsがUEFIで起動できるようにGPTに変換します。

mbr2gpt /validate /disk:0

validation completed successfully と表示されれば問題がないので実行可能。successfully とならなかった場合には問題があります。

MBR2GPTがブロックされて実行できなかった場合は /allowFullOS オプションを追加します。
mbr2gpt /validate /disk:0 /allowfullos
再起動でWindowsを実行せずにコマンドプロンプトを起動した場合はこのオプションを付けずに実行できました。

/validate を/convert に変えて実行します。

mbr2gpt /convert /disk:0

/allowFullOS オプションが必要な場合は 確認と同じように追加します。
mbr2gpt /convert /disk:0  /allowfullos

Conversion completed successfully と表示されれば成功です。
システム(マザーボード)がUEFIブートが可能になっていれば、Windows Boot MnagerによりUEFIで起動することができます。

MBR2GPTコマンドの詳細は 、
MBR2GPT – Windows Deployment | Microsoft Docs