嘗試在 MBP 上進行三重啟動,破壞了 Windows

嘗試在 MBP 上進行三重啟動,破壞了 Windows

我有一個裝有 OS X 10.11 (El Capitan) 和 Windows 8.1(透過 Bootcamp)的 MBP。我現在想將Ubuntu 添加到包中,因此使用OS X 中的磁碟實用程式創建了一個新分區。驅動器的恢復工具工作。

我繼續安裝 Ubuntu 並注意到我無法啟動它,因為當我在啟動過程中按“Alt”鍵時,分割區沒有顯示。透過 Ubuntu U 碟重置 EFI 的啟動順序是可行的,但是當我啟動 OS X 時,它似乎會覆蓋啟動順序,而我再次無法啟動 Ubuntu。我了解了啟動管理器,並且想安裝 rEFInd 來修復啟動順序問題。

我應該如何進行?嘗試先修復 Windows,然後安裝 rEFInd,還是反之亦然?我該如何修復 Windows?我已經嘗試過所描述的過程這裡但它不起作用 - Windows 仍然無法啟動。

我使用 FileVault 2,停用了 El Capitan 的「系統完整性保護」功能並安裝了 gdisk。我很樂意根據要求向您提供分區表的讀數。

答案1

首先,Windows 啟動模式存在著很大的不確定性。從 Windows 7 開始,大多數 Windows 雙重啟動安裝都使用 Boot Camp,也就是說,Windows 以 BIOS/CSM/legacy 模式啟動,而 OS X 以 EFI/UEFI 模式啟動。此設定需要一個混合膜生物反應器,這是不穩定且危險的。不過,自 Windows 8 以來,Windows 在 Mac 上以本機 EFI/UEFI 模式啟動的能力已大幅提升。因此,您可能有這樣的安裝,但您甚至沒有意識到。在進行更多操作之前,您應該弄清楚您擁有哪種啟動模式。確定這一點的最佳方法是檢查您的EFI 系統分割區 (ESP),這是一個 FAT 分區——通常/dev/disk0s1在 Mac 上。 (您可能需要使用mkdir /Volumes/ESP後跟 來掛載它sudo mount -t msdos /dev/disk0s1 /Volumes/ESP。)尋找EFI/Microsoft在該分割區上呼叫的目錄樹(也就是說,/Volumes/ESP/EFI/Microsoft如果您按照我指定的方式掛載它),尤其是名為EFI/Microsoft/Boot/bootmgfw.efi.如果該檔案存在,則這是 Windows EFI 模式安裝的有力證據。如果它不存在,那麼您可能已經安裝了 BIOS 模式的 Windows。

如果您安裝了 EFI 模式的 Windows,我建議您刪除混合 MBR,改用傳統的保護性 MBR,並嘗試讓所有作業系統在 EFI 模式下啟動。您可以gdisk在任何作業系統中執行第一個任務- 鍵入x以進入專家選單,然後n建立新的保護性 MBR,最後w將變更儲存到磁碟。大多數 Mac 使用者使用已停產的 rEFIt 或其支援的分支 rEFInd 來管理啟動選擇任務。停用系統完整性保護後,您應該能夠透過執行install.sh腳本從 OS X 安裝 rEFInd。您可能需要進行編輯refind.conf以取消註釋scanforhdbios從選項清單中刪除 - 這將使 rEFInd 無法顯示 BIOS 模式啟動選項,這在此設定中不起作用。 (註:我既是 rEFInd 的作者gdisk也是維護者。)

如果您安裝了 BIOS/CSM/舊版 Windows,則需要保留已安裝的混合 MBR,或建立新的。您引用的過程創建了一個新的混合 MBR,但不清楚您在其中包含哪些分割區。你必須包括您的 Windows 啟動分割區以及您打算跨作業系統共用的任何分割區。我看到一些說法稱 Windows 對分割區號碼非常挑剔,因此當您重新建立混合 MBR 時,您可能需要修改該詳細資訊。 rEFInd 對於管理此類配置上的多重啟動設定也很有用;但在這種情況下你應該不是hdbios從中scanfor的行中刪除refind.conf

如果您認為您已經有了 BIOS 模式的 Windows 設置,但無法啟動它,您可以考慮將其轉換為 EFI 模式啟動。看這篇博文一個程式來執行此操作。此範例基於 PC,並且指定的大部分內容已在您的案例中完成。如前所述,您需要刪除混合 MBR,而不是從 MBR 轉換為 GPT。大多數情況下,您需要執行該過程第二頁後半部分左右的操作。請注意,我從未在 Mac 上做過此操作,而且我不知道有哪個網站提供了 Mac 特定的說明(儘管可能存在這樣的網站),所以如果您嘗試一下,您可能會成為開拓者。

答案2

好的,所以我嘗試了更多一點,這就是我得到的結果:
最終修復啟動錯誤的是建議使用 Win8 恢復 USB 運行以下命令來訪問控制台:

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

我在中找到了這個建議這個線程雖然我之前嘗試過最後三個命令,但第一個命令顯然成功了。當我重新啟動並按下“Alt”時,Mac 啟動管理器向我顯示標有“Windows”的選項。雖然其中一個再次給我帶來了相同的舊啟動錯誤,但另一個最終啟動了完美運行的 Windows 8
。 )。經過多次重啟後,我終於發現在我告訴 rEFInd 不要掃描 EFI 分割區後,故障消失了。因此,前面的答案談到的 Win8 的 EFI 啟動(位於 ESP:EFI/Microsoft/Windows/Boot)似乎已損壞。但是,rEFInd 使用 BOOTCAMP 分割區上的選項可以正常啟動。當我使用 Apple Boot Manager 時,它仍然顯示這兩個選項。
所以,在我的解釋中,命令(或命令s)我在 BOOTCAMP 分割區上建立了一個引導程序,現在可以使用它來代替因分割區而損壞的 EFI 引導程式。我很高興擁有一個可用的三重啟動!

相關內容