Grub2

在 MacBook Pro 上 EFI 引導至 Linux

  • November 24, 2018

8,3 MacBook Pro 2011,執行 Ubuntu 11.10 amd64。

這是情況。螢幕背光和其他一些東西只有在 EFI 中啟動時才有效,所以我需要在 EFI 中啟動 Ubuntu 才能正常工作。

如果我在啟動時按住 Alt 並以這種方式啟動 Linux,那麼我啟動到 EFI 就可以很好地適應我現有的 GRUB2 設置,並且螢幕亮度正常。

我想讓它更“自動”一點。我目前正在使用 rEFIt 來啟動機器上的各種作業系統。不幸的是,rEFIt 不會以 EFI 模式啟動 Linux,它使用的是傳統模式,我相信,這似乎等同於 BIOS。

因此,我為 rEFIt 安裝了一個 GRUB2 EFI 模組,現在我可以在我的啟動菜單中看到它。問題是我遇到了啟動問題。使用以下 GRUB 命令,我可以看到核心啟動,但它掛在

*ERROR* failed to get supported _DSM functions

並且從未真正完成。這是我的 GRUB 配置文件:

set debug=fg
insmod efi_uga
insmod font

if loadfont ${prefix}/unicode.pf2
then 
   insmod gfxterm
   set gfxmode=auto
   set fgxpayload=keep
   terminal_output gfxterm
fi

menuentry "Linux (BIOS)" {
   search --file --no-floppy --set=root /vmlinuz
   loadbios /boot/vbios.bin /boot/int10.bin
   linux /vmlinuz root=/dev/sda4 video=efifb
   initrd /initrd.img
}

我基本上有兩個問題。

  1. **有沒有辦法在 rEFIt 中啟用 EFI 引導到 Linux?**如果可能的話,我可以避免完全搞亂 GRUB。
  2. **我在 GRUB 上做錯了什麼?**如果我不能讓 rEFIt 正常執行,我應該如何在 EFI GRUB 配置文件中引導我的核心?我嘗試在我的系統上使用它/boot/grub/grub.cfg,但這也不起作用。

為什麼我可以使用 Apple 的“alt”載入程序啟動支持 EFI 的 Linux,而我不能使用 rEFIt 啟動支持 EFI 的 Linux?

嘗試添加noefiGRUB_CMDLINE_LINUX_DEFAULTin 行的末尾/etc/default/grub,然後執行grub-mkconfig -o /boot/grub/grub.cfg(假設這是您的 grub 配置文件所在的位置)。

我曾經得到完全相同的錯誤。這解決了它。雖然我仍然無法讓鍵盤工作……

引用自:https://unix.stackexchange.com/questions/30672