MBPでトリプルブートを試みたが、Windowsが壊れた

MBPでトリプルブートを試みたが、Windowsが壊れた

私は OS X 10.11 (El Capitan) と Windows 8.1 (Bootcamp 経由) を搭載した MBP を持っています。Ubuntu をパックに追加したかったので、OS X のディスク ユーティリティを使用して新しいパーティションを作成しました。その瞬間から、Windows 8 は起動しなくなりました。起動エラー 0xc000000e が発生し、Win8 USB ドライブからの回復ツールはどれも機能しません。

Ubuntu のインストールを進めましたが、起動時に「Alt」キーを押してもパーティションが表示されないため、Ubuntu を起動できないことに気付きました。Ubuntu USB スティックを使用して EFI の起動順序をリセットすると機能しますが、OS X を起動するとすぐに起動順序が上書きされ、Ubuntu を再び起動できなくなります。ブート マネージャーについて調べ、rEFInd をインストールして起動順序の問題を解決したいと思います。

どうすればいいでしょうか?まずWindowsを修復してからrEFIndをインストールしますか、それともその逆ですか?Windowsを修復するにはどうすればいいですか?すでに説明されている手順を試しましたここしかし、それは機能しませんでした - Windows はまだ起動しません。

私は FileVault 2 を使用しており、El Capitan の「システム整合性保護」機能を無効にし、gdisk をインストールしています。ご要望に応じて、パーティション テーブルからの読み出し結果を喜んで提供いたします。

答え1

まず、Windowsのブートモードについて大きな不確実性があります。Windows 7までは、ほとんどのWindowsデュアルブートインストールでBoot Campが使用されていました。つまり、WindowsはBIOS/CSM/レガシーモードで起動し、OS XはEFI/UEFIモードで起動していました。このセットアップにはハイブリッドMBR、これは不安定で危険です。しかし、Windows 8以降、MacでネイティブEFI/UEFIモードで起動するWindowsの能力は大幅に向上しました。そのため、そのようなインストールがあっても、それに気付いていない可能性があります。それ以上のことをする前に、どのブートモードになっているかを把握する必要があります。これを確認する最良の方法は、EFI システム パーティション (ESP)は、通常 Mac 上の FAT パーティションです(に続けて/dev/disk0s1をマウントする必要がある場合があります) 。そのパーティション (つまり、指定したとおりにマウントした場合) で というディレクトリ ツリーを探します。特に というファイルを探します。そのファイルが存在する場合、Windows が EFI モードでインストールされていることを示す強力な証拠となります。このファイルが存在しない場合は、Windows が BIOS モードでインストールされている可能性があります。mkdir /Volumes/ESPsudo mount -t msdos /dev/disk0s1 /Volumes/ESPEFI/Microsoft/Volumes/ESP/EFI/MicrosoftEFI/Microsoft/Boot/bootmgfw.efi

EFI モードの Windows インストールを使用している場合は、ハイブリッド MBR を削除して従来の保護 MBR に変更し、すべての OS を EFI モードで起動するようにすることをお勧めします。最初のタスクは、gdiskどの OS でも実行できます。 と入力してxエキスパート メニューに移動し、 と入力してn新しい保護 MBR を作成し、最後にwその変更をディスクに保存します。ほとんどの Mac ユーザーは、廃止された rEFIt またはそのサポートされているフォークである rEFInd を使用して、ブート選択タスクを管理しています。System Integrity Protection が無効になっている場合は、install.shスクリプトを実行して OS X から rEFInd をインストールできるはずです。編集しrefind.confてコメントを解除scanforし、hdbiosオプションのリストから削除することもできます。これにより、rEFInd が BIOS モードのブート オプションを表示しなくなりますが、このセットアップでは機能しません。(注: 私は rEFInd の作者でありgdisk、保守者でもあります。)

BIOS/CSM/レガシーのWindowsをインストールしている場合は、ハイブリッドMBRをインストールしたままにするか、新しいものを作成する必要があります。参照した手順では新しいハイブリッドMBRが作成されましたが、そこにどのパーティションが含まれているかは不明です。しなければならないWindowsのブートパーティションと、OS間で共有するパーティションを含めます。Windowsはパーティション番号にうるさいという主張を目にしたことがあるので、ハイブリッドMBRを再作成するときには、その詳細をいじる必要があるかもしれません。rEFIndは、このような構成でのマルチブート設定の管理にも役立ちますが、この場合はないの行hdbiosから削除します。scanforrefind.conf

BIOSモードのWindowsセットアップがインストールされているにもかかわらず起動できない場合は、EFIモードのブートに変換することを検討してください。このブログ投稿これを実行する手順は 1 つだけです。この例は PC に基づいており、指定されていることの多くは、すでに実行されています。前述のように、MBR から GPT に変換するのではなく、ハイブリッド MBR を削除する必要があります。ほとんどの場合、手順の 2 ページ目の後半あたりにあることを行う必要があります。私は Mac でこれを実行したことがなく、Mac 固有の手順を示すサイトを知りません (そのようなサイトが存在するかもしれませんが)。そのため、試してみると、先駆者になるかもしれません。

答え2

さて、もう少し試してみたところ、次のようになりました。
最終的に起動エラーを修正したのは、Win8 リカバリ USB を使用して次のコマンドを実行し、コンソールにアクセスするという提案でした。

bootrec /fixmbr
bootrec /fixboot
bootrec /scanos
bootrec /rebuildbcd

この提案はこのスレッド最後の3つのコマンドは以前にも試しましたが、最初のコマンドでうまくいったようです。再起動して「Alt」キーを押すと、Macのブートマネージャーが次のように表示しました。'Windows' というラベルの付いたオプションがあります。そのうちの 1 つでは同じ古いブート エラーが再び発生しましたが、もう 1 つではようやく完全に動作する Windows 8 が起動しました
。次に rEFInd のインストールに進むと、これも Windows 用の 2 つの異なるオプション (ブート ローダー?) を提供しました。何度か再起動した後、rEFInd に EFI パーティションをスキャンしないように指示した後、問題のあるオプションが消えたことをようやく確認できました。したがって、前の回答で言及されている Win8 の EFI ブート (ESP:EFI/Microsoft/Windows/Boot にある) が壊れているようです。ただし、rEFInd は BOOTCAMP パーティションにあるオプションで正常に起動します。Apple Boot Manager を使用すると、両方のオプションが表示されます。
したがって、私の解釈では、コマンド (またはコマンドs) パーティション分割によって壊れた EFI ブートローダーの代わりに使用できる、BOOTCAMP パーティションにブートローダーを作成しました。トリプルブートが機能して嬉しいです!

関連情報