
我在 Mac 上安裝了 rEFInd (0.9.2),位於自己的 hfs+ 分割區中。這允許 rEFInd 作為選項出現在「系統偏好設定」下的「啟動磁碟」視窗中。下面是「啟動磁碟」視窗的影像。
在 Yosemite (OS X 10.10.5) 下,我選擇 rEFInd 分割區沒有問題。在 El Captain (OS X 10.11) 下,我收到以下錯誤訊息。
那麼,發生了什麼變化以及如何修復它?
我的 Mac 是 iMac(20 英寸,2007 年中)。型號識別碼是 iMac7,1。
更新1
此更新是在羅德發布答案後輸入的。
上述問題中發布的問題似乎不是由系統完整性保護 (SIP) 引起的。如果我關閉 SIP,結果是一樣的。
不過既然你提出了SIP,我將會加入以下內容。關閉 SIP 後,使用指令安裝 rEFInd 沒有問題
sudo ./install.sh --ownhfs /dev/disk0s9
其中disk0s9
是專為 rEFInd 保留的小分割區。另外,以下命令適用於 SIP 關閉的情況。
sudo bless --device /dev/disk0s9 --setBoot
當 SIP 開啟時,Nether 指令可以正常運作。
更新 2(2020 年 6 月 11 日發布)
拉斯蒂·沙克爾福德向其中之一發表了評論我的答案關於羅德史密斯 (Rod Smith) 網站之一的標題為使用啟動磁碟調整啟動優先權。本節指出 macOS 系統偏好設定的啟動磁碟窗格可用於將 rEFInd 設定為預設啟動。出於測試目的,我在 2013 iMac 上的 JHFS+ 分割區中安裝了 rEFInd (0.12.0)。 High Sierra (macOS 10.13.6) 和 Catalina (macOS 10.15.4) 安裝在 APFS 容器中。也安裝了Windows 10。以下是 High Sierra 系統偏好設定的啟動磁碟窗格中顯示的內容。
使用 High Sierra 和 Catalina 進行測試會導致以下錯誤訊息。停用 SIP 不會更改錯誤訊息。
如果有人知道自 Yosemite 以來的配置可以從啟動磁碟窗格設為預設值,請發布答案。
答案1
當按照您的方式安裝時,rEFInd 使用通常由 OS X 自己的引導程式使用的關鍵檔案名,但位於其自己的分割區上。看來 OS X 10.11 的啟動磁碟工具可能依賴 rEFIndinstall.sh
未建立的其他檔案。如果是這樣,創建適當的“虛擬”文件可能會解決問題 - 但弄清楚要創建哪些文件可能很困難。
另一種可能性是 OS X 10.11 的新系統完整性保護(又稱「無根」)功能導致了問題。如果是這樣,請按照說明停用此功能這裡,應該解決問題;但這是一項新的安全功能,因此您應該閱讀並決定是否要停用它。
您可以考慮嘗試使用bless
命令手動設定引導設備,如步驟 #8 所述rEFInd 的 OS X 安裝說明。不過,我不知道這是否適用於啟用系統完整性保護的情況。 (bless
手動在 EFI 系統分割區上設定開機載入程式不會不是啟用系統完整性保護,但我還沒有嘗試使用單獨的 HFS+ 分割區。
注意:我維護 rEFInd,並會在時間允許的情況下親自研究這個問題。如果我能找到一個好的解決方案,我會將其包含在 rEFInd 的未來版本中。