MBR2GPT「Cannot find OS partitions」エラーの原因と解決手順|Windows 10 から Windows 11 への安全な移行とセキュアブート有効化

Windows 10 から Windows 11 にアップグレードしたいのに、MBR2GPT 実行時に「Cannot find OS partitions」エラーで止まってしまう――そんな状況でこの記事を見ている方が多いと思います。本記事では、実際の事例をベースに、エラーの正体と安全な MBR→GPT 変換、さらに UEFI/セキュアブート有効化までを、手順付きで丁寧に解説します。

日程Fit。無料・登録不要。「いつ空いてる?」を、ひとつのリンクで。リンクを送って、○△×でかんたん日程調整。無料で日程を作る。
目次

MBR2GPT「Cannot find OS partitions」エラーの意味

Windows 10 / 11 環境で MBR2GPT.exe を使ってシステムディスクを MBR から GPT に変換しようとすると、次のようなエラーで止まることがあります。

MBR2GPT: Cannot find OS partitions

このメッセージは、ざっくり言うと「指定されたディスクの中に、OS 一式(Windows 本体とブートに必要な構成)がそろっていないので、変換していいディスクなのか判断できない」という意味です。

MBR2GPT は以下のような前提を満たしているディスクのみ変換できます。

  • 対象ディスクの中に Windows のシステムパーティション(C: など)が存在する
  • 同じディスク上に、BIOS/MBR 起動に必要なブート構成(BCD など)が存在する
  • ダイナミックディスクではない(ベーシックディスクである)
  • GPT 変換後に EFI システムパーティション(ESP)を作るだけの空き領域がある

ところが、複数ディスク構成の PC では、次のような「微妙にややこしい」状態になっていることが少なくありません。

  • Windows 本体(C:)は SSD(Disk 0)にある
  • でもブートローダー(BCD)が別の HDD(Disk 1)にある

このようなケースでは、Disk 0 を指定して MBR2GPT を実行しても、MBR2GPT から見れば「OS パーティションの一部が他ディスクに飛び散っている」状態に見えるため、「Cannot find OS partitions」エラーになってしまいます。

今回の想定環境と最終ゴール

この記事で想定している典型的な構成は次のようなものです。

項目内容
Disk 0SSD(MBR)・Windows 10 がインストールされている
Disk 1HDD(MBR)・古いシステム予約領域やブートローダーが残っている
Disk 2NVMe SSD(GPT)・データ用または別 OS 用
マザーボードASUS B550 シリーズ(UEFI 対応)

最終的に目指すゴールは、次の 3 点です。

  • Disk 0(SSD)のパーティション形式を MBR から GPT に変換する
  • UEFI モードで起動し、セキュアブートを有効にする
  • Windows 11 の公式要件(TPM / セキュアブートなど)を満たした状態にする

ポイントは、「OS 本体とブート構成を Disk 0 に集約してから MBR2GPT を実行する」ことです。この記事ではそのための手順を、実際にうまくいった流れをベースに解説します。

エラーの主原因:起動関連ファイルが別ディスクに散らばっている

今回のように「Cannot find OS partitions」エラーが出る大きな原因は、起動関連ファイル(BCD/ブートローダーなど)が別ディスクに存在していることです。

よくあるパターンをまとめると、次のようになります。

OS 本体ブートファイルMBR2GPT の認識
Disk 0(SSD)Disk 1(HDD)のシステム予約領域「Disk 0 上に OS 一式がそろっていない」と判断される
Disk 0同じ Disk 0 上MBR2GPT が「変換してよい OS ディスク」と認識できる

この問題を解決するための基本方針は次の 2 点です。

  1. 変換したいディスク(Disk 0)のみで Windows が起動する状態を作る
  2. その状態を確認したうえで MBR2GPT で MBR→GPT 変換を行う

その過程で、bcdbootdiskpart を使って、MBR ブート・UEFI ブートの両方を正しく構成し直していきます。

作業前に必ず行うべき準備

パーティション変換やブート構成の変更は、最悪の場合 OS が起動しなくなるリスクを伴います。必ず以下の準備をしてから作業してください。

  • 重要データのバックアップ
    • ユーザーデータは外付け HDD やクラウド(OneDrive など)に退避
    • 可能ならシステム全体のイメージバックアップも取得
  • BitLocker の一時停止(もし有効な場合)
    • コントロールパネルや設定アプリから、一時的に BitLocker を停止しておく
  • Windows インストールメディアまたは回復ドライブの用意
    • 万が一起動しなくなった場合の修復用として必須
  • 作業時間の確保
    • 途中で電源断や強制終了をしないよう、時間に余裕のあるタイミングで実施

実際に有効だった解決手順(詳細版)

ここからは、実際に「Cannot find OS partitions」エラーを解消して、GPT 変換 → UEFI/セキュアブート有効化 → Windows 11 要件クリアまで到達した手順を、細かく解説します。

特に断りがなければ、コマンドはすべて管理者権限のコマンドプロンプトで実行します。

Step 1:変換対象ディスク(Disk 0)を単独起動にする

まずは、Disk 0 のみで PC が起動する状態を作ります。そのために、他のディスク(Disk 1、Disk 2)を一旦切り離します。

  • 物理的にケーブルを抜く
    • ケースを開けて、Disk 1(HDD)と Disk 2(NVMe ならマザーボード上の M.2 スロット)を一時的に外す
  • 物理的に外せない場合
    • UEFI 設定画面で対象ポートを無効化する
    • もしくは一時的に起動順位から外す

この段階では Windows が起動しなくても構いません。もし「Operating System not found」などが出た場合は、これから Disk 0 にブート構成を作り直すので問題ありません。

Step 2:Disk 0 上に MBR ブート構成を作りなおす

次に、Disk 0 のパーティションに MBR 起動用のブートファイルを再作成します。

まず、どのボリュームが Windows の C: なのか、システム予約領域がどれなのか確認します。

diskpart
list volume

一覧から、次のどちらかを選びます。

  • システム予約領域(容量が 100~500MB 程度で「システム」になっている)
  • C: ドライブ(Windows がインストールされているパーティション)

ここでは例として C: に直接ブート構成を作る想定で説明します。

diskpart
list volume
select volume 2   REM: Windows が入っている C: のボリューム番号に読み替え
active            REM: MBR の「起動可能」フラグを付与
exit

bcdboot C:\Windows /s C:

bcdboot コマンドは、指定した Windows パス(ここでは C:\Windows)から、起動に必要なブートファイル一式を指定したパーティション(/s オプション)にコピーし、BCD を構成するツールです。これにより、Disk 0 単独で MBR 起動できる状態を作れます。

Step 3:Disk 0 だけで Windows が起動するか確認

再起動し、Disk 0 だけが接続された状態で Windows が起動するか確認します。

  • 正常に起動できた場合
    • Disk 0 にブート構成が構築されたと判断できます
  • 起動に失敗する場合
    • diskpartactive を付けるボリュームを変更して再度試す
    • システム予約領域(小さなパーティション)を active にして bcdboot を実行する方法も有効です

ここまでが成功して初めて、MBR2GPT による変換に進むことができます。

Step 4:MBR2GPT で MBR→GPT 変換を実行

Disk 0 が単独で起動することを確認したら、次はいよいよ GPT 変換です。Windows を起動した状態のまま実行するため、/allowFullOS オプションを付与します。

まず検証のみを行います。

mbr2gpt /validate /allowFullOS

ここでエラーが出ないことを確認したら、本番の変換コマンドを実行します。

mbr2gpt /convert /allowFullOS

処理が完了すると、Disk 0 は GPT ディスクに変換され、EFI システムパーティション(ESP) が自動的に作成されます。変換の途中でデータパーティションが消えることは基本的にありませんが、トラブル時のリスクを考慮して、あらかじめバックアップを取っておくことが重要です。

なお、変換に失敗した場合は、%windir%\setupact.log の中にある「MBR2GPT」セクションを確認すると、失敗理由の詳細が分かることがあります。

Step 5:UEFI 設定で UEFI 起動+セキュアブートを有効化

GPT 変換が終わったら、次はマザーボード側の設定を変更します。ここでは ASUS B550 を例に説明しますが、他社製でも概ね流れは同じです。

  1. PC を再起動し、UEFI 設定画面に入る(ASUS なら Delete / F2 キー連打)
  2. 起動設定(Boot)で 「Boot Option #1」 を Windows Boot Manager (Disk 0 の SSD) に変更
  3. CSM(Compatibility Support Module)を無効化
    • 「Boot」タブ → 「CSM」 → 「Launch CSM」を Disabled にする
  4. Secure Boot(セキュアブート)を有効化
    • 「Boot」または「Security」タブ内の「Secure Boot」を Enabled
    • OS Type を「Windows UEFI mode」に設定

ここで設定が中途半端だと、次のような症状が出ることがあります。

  • 電源を切ったつもりが毎回再起動になってしまう
  • 「Boot Manager」ではない別のデバイスを掴んでしまい、起動に失敗する

必ず「Windows Boot Manager(Disk 0)」を起動 1 位にし、CSM は無効、セキュアブートは有効という組み合わせに調整してください。

Step 6:電源オフできない/再起動を繰り返す場合の ESP 再構成

GPT 変換後、ときどき次のような現象が起こります。

  • シャットダウンを選んでも再起動してしまう
  • 一部のブートデバイスから起動しようとして失敗する

この場合、UEFI が参照している ESP(EFI システムパーティション)が誤っているか、ブートファイルがうまく配置されていない可能性があります。次の手順で、正しい ESP にブートファイルを再配置します。

diskpart
select disk 0
list partition
select partition 1   REM: 「EFI システムパーティション」と表示されている番号に読み替え
assign letter=Y
exit

bcdboot C:\Windows /s Y: /f UEFI

assign letter=Y で一時的にドライブ文字を振り、bcdboot で UEFI 用のブートファイルをそのパーティションに書き込みます。

もし Disk 0 上に ESP として使えそうなパーティションがない場合は、未割り当て領域から 100~300MB 程度の FAT32 パーティションを作成し、そこに対して同じように bcdboot C:\Windows /s Z: /f UEFI のように実行して、新しい Windows Boot Manager を作成します。

Step 7:回復環境(WinRE)が無効になっている場合の対処

MBR→GPT 変換やパーティション操作を行うと、Windows 回復環境(WinRE)が無効になってしまうことがあります。

現在の状態は以下のコマンドで確認できます。

reagentc /info

ここで「Windows RE の状態 : 無効」となっている場合、次のような手順で回復パーティションの種類を修正し、有効化を試みます。

diskpart
select disk 0
list partition
select partition 4   REM: 回復パーティションと思われる番号に読み替え
set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac
gpt attributes=0x8000000000000001
exit

reagentc /enable

上記の GUID と属性は、Windows が「ここは回復パーティションである」と認識するためのものです。もしそれでも有効化に失敗する場合でも、Windows 11 へのアップグレードの過程で新しい回復パーティションが自動作成されることがあり、そこで回復環境が復活するケースもあります。

Step 8:他ディスクを再接続したあとの「後片付け」

Disk 0 の GPT 変換と UEFI 起動が安定したら、外していた Disk 1(HDD)、Disk 2(NVMe)を再接続します。

ここで注意したいのが、古い MBR の「active」フラグや古いシステム予約領域です。これらが残っていると、UEFI がうっかりそちらを起動しようとしてトラブルの原因になります。

不要になった古いシステム予約領域からは、次のように active フラグを外しておきます。

diskpart
select disk 1
list partition
select partition 1   REM: 旧システム予約領域のパーティション番号に読み替え
inactive
exit

これにより、以後は Disk 0 の Windows Boot Manager からのみ起動されるようになります。不要なパーティションそのものを削除してデータ領域に統合してしまうのも一つの手ですが、その場合は中に必要なデータがないことを十分確認してください。

Step 9:Windows 11 の要件を最終チェック

最後に、Windows 11 の要件を満たしているかを確認します。

まずは msinfo32 を起動し、システム情報を確認します。

  1. Win + R キーで「ファイル名を指定して実行」を開く
  2. msinfo32 と入力して Enter
  3. 「システムの要約」で次の項目を確認する
    • BIOS モード:UEFI になっているか
    • セキュア ブートの状態:オン になっているか

併せて、Microsoft が提供している PC 正常性チェック アプリ を実行し、「Windows 11 へのアップグレード要件を満たしています」という表示が出れば準備完了です。

CPU 世代や TPM 2.0 の有無など、ハードウェア側の要件もありますが、MBR2GPT とセキュアブートまわりがクリアできれば、ソフトウェア面の大きなハードルは超えたといえます。

同じエラーでハマりがちな他の原因とチェックポイント

ここまでに紹介した「OS とブートが別ディスクに分散している」問題以外にも、「Cannot find OS partitions」エラーにつながりやすい要因がいくつかあります。代表的なものを表にまとめます。

原因症状対処の方向性
OS が複数ディスクにまたがっているどのディスクが本当に「システム」か分かりにくい対象ディスクを単独にして起動を確認し、bcdboot でブート構成を再作成
MBR のアクティブパーティションが誤っている一見起動しているが、別ディスク経由で起動しているdiskpart で正しいパーティションに active を付与し、bcdboot を再実行
ディスクがダイナミックディスクMBR2GPT が最初から変換対象として認識しないベーシックディスクに戻す(要バックアップ)か、再インストールを検討
ESP を作るだけの空き領域がないMBR2GPT の検証段階でエラーになるシステムパーティション手前に数百 MB の空き領域を確保してから再度実行
パーティション構成が特殊独自ツールでパーティションを切っているなどWindows 標準的な構成(システム+MSR+回復など)に近づけるよう整理

トラブルシューティング Q&A

Q1:/allowFullOS 付きでも「Cannot find OS partitions」が出る

/allowFullOS は「Windows を起動したまま MBR2GPT を動かすことを許可する」ためのオプションであり、OS とブートが別ディスクに分かれている問題そのものは解決してくれません

このエラーが出る場合は、必ず以下を再確認してください。

  • 対象ディスクを単独にしても Windows が起動するか
  • bcdboot で対象ディスク上にブート構成が作成されているか
  • 対象ディスクに回復・システム・データの基本的なパーティション構成が揃っているか

Q2:MBR2GPT 実行後に「起動デバイスがありません」と表示される

GPT 変換後に起動しなくなった場合、ほとんどは以下のどちらかです。

  • UEFI 側でいまだに「レガシー」起動を試みている(CSM が有効のまま)
  • 別ディスクの古いブート領域から起動しようとしている

まずは UEFI 設定で Boot Option を確認し、最優先を「Windows Boot Manager(Disk 0)」に変更します。そのうえで CSM を無効にし、セキュアブートを有効にします。どうしても起動しない場合は、Windows インストールメディアから起動し、「スタートアップ修復」または「コマンドプロンプト」で bcdboot を再実行する方法もあります。

Q3:作業が怖いので、MBR のまま Windows 11 にできないの?

現時点の Windows 11 の要件では、セキュアブートと TPM 2.0 が必須とされています。セキュアブートを有効にするには UEFI 起動が前提であり、そのためにはシステムディスクが GPT である必要があります。

レジストリ改変などで要件チェックを回避する裏技もネット上には存在しますが、将来的なアップデートやセキュリティ面を考えるとおすすめできません。この記事のように MBR2GPT を使って正式な形で GPT/UEFI/セキュアブート環境を整える方が、結果的にトラブルが少なく、安全です。

まとめ:最短ルートをおさらい

最後に、ここまでの内容を「最短ルート」として整理し直します。

フェーズ目的主な操作
1. 事前準備安全確保バックアップ/BitLocker 停止/回復メディア用意
2. ディスク切り離しDisk 0 単独起動化Disk 1・Disk 2 を一時的に取り外す/無効化
3. MBR ブート再構成OS+ブートを Disk 0 に集約diskpartactive 設定、bcdboot C:\Windows /s C:
4. MBR2GPT 変換GPT 化mbr2gpt /validate /allowFullOS/convert
5. UEFI 設定UEFI+セキュアブートBoot Option を「Windows Boot Manager」に、CSM 無効、セキュアブート有効
6. ESP/WinRE 整備起動と回復の安定化bcdboot で ESP 再構成、reagentc /enable で回復環境整備
7. 他ディスクの後片付け旧ブート領域を無効化Disk 1 などの旧システム領域を inactive
8. 最終確認Windows 11 要件チェックmsinfo32 で UEFI/セキュアブート状態を確認、PC 正常性チェックを実行

この流れに沿って作業すれば、実際に「MBR2GPT の Cannot find OS partitions エラーで止まっていた環境」が、GPT 変換成功 → セキュアブート ON → Windows 11 対応 OK の状態まで到達できます。

複数ディスク構成の PC では、「どのディスクに何の役割があるのか」 を一度整理し、まずは変換対象ディスクを単独で起動できる形に整えることが何より重要です。この記事を参考に、一つ一つ丁寧に確認しながら進めてみてください。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次