新增 OS X 的 grub 選單

新增 OS X 的 grub 選單

我在 MacBook Pro 上安裝了 Ubuntu 16.04 Desktop,但現在無法啟動 OS X。我的磁碟分割表是:

Device         Start       End   Sectors   Size Type
/dev/sda1         40    409639    409600   200M EFI System
/dev/sda2     409640 392401823 391992184 186.9G Apple HFS/HFS+
/dev/sda3  392402944 490233855  97830912  46.7G Linux filesystem

我在/etc/grub.d/40_custom中加入了menuentry,如下所示:

menuentry "OS X" {
        insmod hfsplus
        set root=(hd0,gpt2)
        multiboot /boot
}

並執行 update-grub,然後重新啟動。

現在我可以看到“OS X”的條目,但是當我選擇它時,它顯示:

error: disk 'hd0,gpt2' not found.
Press any key to continue...

我該如何修復它?

答案1

將以下程式碼加入 /etc/grub.d/40_custom 檔案對我來說效果很好:

menuentry "OS X" {
    insmod hfsplus
    search --set=root --file /System/Library/CoreServices/boot.efi
    chainloader /System/Library/CoreServices/boot.efi
}

然後運行

sudo grub-mkconfig -o /boot/grub/grub.cfg

在 iMac 17,1(Macbook retina 2015 年底)、Ubuntu 16.04 LTS、Mac OS El Captain 上測試

答案2

確保以下命令列出了 /boot/efi 分割區:cat /etc/fstab 如果 /boot/efi 不存在,您將無法啟動到 Mac OS X,如果它存在,您必須像這樣在 grub 中新增選單項目:

  1. 使用您喜歡的文字編輯器以 root 身分開啟檔案 /etc/grub.d/40_custom。終端機範例:gksudo gedit /etc/grub.d/40_customsudo vi /etc/grub.d/40_custom
  2. 然後在文件末尾添加以下行:

    menuentry "MacOSX" {
      # Search the root device for Mac OS X's loader.
      search --file --no-floppy --set=root /usr/standalone/i386/boot.efi
      # chainload the loader, pass parameters like -v directly
      chainloader (${root})/usr/standalone/i386/boot.efi #-v
    }
    
  3. 儲存並退出

  4. 像這樣更新 grub 配置:sudo update-grub

我一步一步回答,這樣任何找到這個答案的人都可以輕鬆重現這些步驟。這是在 Ubuntu 16.04 上測試的,Ubuntu 以 EFI 模式安裝。 Mac OS X:El Capitan、Mac mini。

答案3

我對這個問題有一般的解決方案。最近,我在裝有Sierra Mac OS X 的iMac 上安裝了Ubuntu 16.04LTS Gnome。 。我關註一個很好的教程iMac 上的 Ubuntu

一切都很順利,直到安裝 Ubuntu 後重新啟動 iMac。唯一的啟動系統是Linux,而且我看不到GRUB 選單...希望它正在啟動)Linux 工作得很好,只是缺少一些無線和圖形驅動程式(使用Xorg 代替),但是透過乙太網路線將其插入後我的數據機已完成所有更新並安裝了驅動程式。 Wifi 驅動程式安裝連結: Ubuntu mac wifi 驅動程式

圖形驅動程式可透過系統設定 GUI 進行選擇

所以,回到雙重開機 Linux 和 Mac OS X。按下「Option 鍵」不再運作(GRUB 已覆蓋 iMacs MBR)。

我幾乎放棄在周末之前完成它,但後來我嘗試了 rEFInd:

sudo apt-add-repository ppa:rodsmith/refind
sudo apt-get update
sudo apt-get install refind

是我讓雙啟動在 Linux 和 Mac OS X 上完美運行所需的一切。

剩下的唯一問題仍然是 GRUB 啟動選單,由於一些錯誤的圖形選單,我猜想我看不到任何選項。我嘗試了控制台模式,但不起作用,啟動時出現一些有關圖形機制的錯誤訊息。我會盡快在這裡報告我解決了!

PS01:

然後我做了一些對所有 Ubuntu 安裝有用的調整: 如何加速 Ubuntu

尤其預載對我來說就像一個魔法:通常在啟動時緩慢 Gimp 現在只需半秒即可加載!

答案4

趕緊跑

os-prober

形成 linux 並重新運行

grub-mkconfig -o /boot/grub/grub.cfg

最後重新安裝 grub

grub-install /dev/sda

相關內容