Missing Operating System

ホーム  
開発環境の構築
サーバーの構築
付録
  • Missing Operating System

概要

「Missing Operating System」は Windows がシステムから起動できない時に出るエラーメッセージです。

Laravel とは直接関係はないのですが、今回 MacBook Air 2012 にいろいろな OS をインストールしていて、Windows、macOS、Linux の3つの OS をインストールして、どの OS からも起動できる「トリプルブート」にしてみたくなりました。というかもともと MacBook Air 2012 はトリプルブートにしていたのです。ところが久しぶりにやってみると、Windows で Missing Operating System エラーが出るのです。

このエラーには覚えがありました。そして案外簡単な方法で直せたはず、という記憶も残っていたのです。ところが検索しても、以前にやった方法がなかなか見つからないのです。そして、なんとか見つけたのです。

Mac のトリプルブートは、2017 年までに発売された Intel Mac でしかできません。それ以降の 2020 年までに発売された Mac では、macOS と Windows のダブルブートしかできなくなり、2020年から発売されている、Apple Silicon Mac では、macOS しかインストールできなくなりました。

トリプルブートは憧れでしたが、違う OS が同時に起動しているわけでもなく、また切り替えには再起動が必要だったので、実際にやってみると、意外と不便でした。Parallels Desktop のような仮想化技術のほうがやはり便利でした。

そういうわけで、いまさら、Mac のトリプルブートを取り上げるウェブサイトはどんどん減っていき、今回見つけたの解決方法を載せているサイトもいずれなくなるかもしれません。サイトというか掲示板でした。なので、この技術は資料として残しておかなければならないと思い、「Mac のトリプルブートにおける、Windows の Missing Operating System エラーを解決する方法」を残すことにしました。


トリプルブート・インストール手順

まずはトリプルブートのインストールの簡単な流れを紹介します。

  1. Mac を command + R を押しながら起動もしくは再起動して、リカバリーモードで立ち上げます。
  2. ディスクユーティリティーで、Mac 用 2 : Linux 用 1 (240 GB SSD なら Mac 160 GB、Linux 60 GB) でパーティションを切ります。なおこれは結果的に3等分する場合です。サイズは任意で大丈夫です。
  3. macOS をまだインストールしていなければ、Mac パーティションに macOS をインストールします。
  4. macOS で起動して、Boot Camp を使って Windows をインストールします。
  5. Windows インストール後、Mac を起動もしくは再起動する場合に option キーを押すと、Windos か macOS か、どちらで起動するかを選択できるようになります。
  6. Linux インスーラー USB を Mac に装着して、option キーを押しながら Mac を起動もしくは再起動します。
  7. どのデバイスで起動するか選ぶ画面で、一番右の黄色のUSBアイコンの EFI BOOT を選びます。
  8. Linux のインストーラーが起動しますので、Linux をインストールします。
  9. Linux のイントールが終わって、option キーを押しながら Mac を起動もしくは再起動すると Mac か、Windowsか、EFI BOOTか、どのデバイスで起動するかを選べ流ようになります。EFI BOOT が Linux になります。
  10. ところが、macOS と Linux は、無事に起動できますが、Windows だけは「Missing Operation System」と表示されて起動できません。今回はこの問題を解決していきます。


Missing Operation System の解決

この問題は、Linux をインストールしたときに、SSD もしくは HDD の MBR というテーブルが壊れてしまい、Windows の起動に必要なデータがなくなってしまったことから起きてしまいます。次の方法でこの問題を直します。

今回は gdisk というツールを使います。 こちら からインストーラーがダウンロードできます。

このインストーラーを起動しようとすると macOS によって拒否されます。コントロールパネル(システム設定パネル)の「プライバシーとセキュリティ」でこのインストーラーに許可を与えてください。

準備が整いましたら、作業を進めていきます。

  1. Mac を command + R を押しながら、リカバリーモードで起動もしくは再起動します。
  2. 「ユーティリティー」メニューから「ターミナル」を開きます。
  3. ターミナルに次のように記述してエンターキーを押します。
    csrutil disable
  4. Mac を通常モードで起動します。
  5. ターミナルを開いて次のようにコマンドしていきます。
    1. sudo gdisk /dev/disk0
    2. r (回復/変換)
    3. h (ハイブリッドMBRを作る)
    4. 3 (Windowsがインストールされているパーティション番号。おそらく Boot Camp という名前になっているとおもいます)
    5. y (ETI パーティションを MBR の最初に配置する)
    6. エンターキーを押す
    7. y (起動可能なフラグを設定)
    8. n (これ以上のパーティションはないという意味です)
    9. o (新しい MBR を確認します)
    10. w (新しい MBR を書きます)
    11. y (連続)
  6. 次のようにコマンドします
    sudo fdisk /dev/disk0
  7. 次のように表示されたら、成功です。
    
          Disk: /dev/disk0    geometry: 60821/255/63 [977105060 sectors]
          Signature: 0xAA55
                  Starting       Ending
          #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
          ------------------------------------------------------------------------
          1: EE    0   0   2 - 1023 254  63 [         1 -  785698815] 
          *2: 07 1023 254  63 - 1023 254  63 [ 785698816 -  191406080] HPFS/QNX/AUX
          3: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
           4: 00    0   0   0 -    0   0   0 [         0 -          0] unused
          
  8. command + R で Mac をリカバリーモードで起動します。
  9. 「ユーティリティー」メニューから「ターミナル」を開きます。
  10. ターミナルに次のように記述してエンターキーを押します。
    csrutil enable
  11. Mac を通常モードで起動します。

これで、macOS、Windows、Linuxのどれでも自由に起動できるようになったと思います。


110 visits
Posted: Jul. 17, 2025
Update: Jul. 17, 2025

ホーム   目次