選擇 rEFInd 時出現「在啟動幫助程式分割區上建置啟動快取失敗」錯誤

選擇 rEFInd 時出現「在啟動幫助程式分割區上建置啟動快取失敗」錯誤

我在 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 的未來版本中。

答案2

我也遇到了和你一樣的麻煩,直到我發現了這篇文章:

將 rEFInd 啟動管理器配置為 Mac 上的啟動磁碟

作者,大衛JB.comcontrol,介紹如何透過在啟動管理員中選擇啟動磁碟的同時按 鍵來設定預設啟動磁碟。 (您需要在啟動過程中按住該option鍵才能呼叫啟動管理員)。作者建議control點擊磁碟時按住鍵,但我沒有指針,所以選擇所需磁碟後control按下鍵時按住鍵即可。return

到目前為止,它直接帶我到了酶標儀,從那時起每次重新啟動時,我都會將其安裝在單獨的 HFS+ 分割區上。

相關內容