我在我的主板(2008 年底的铝制主板)上安装了 Ubuntu 12.04。安装 Ubuntu 后,我无法启动 OS X。
事件顺序:
- 在 OS X 上安装 reFit
- 在分区驱动器上安装 Ubuntu。我还安装了 grub。
现在,当我启动 MB 时,只会显示 grub 菜单。当我在 grub 下选择 OS X 时,我会看到黑屏一段时间,然后机器重新启动(选择 OS X 64 位时)或无限期挂起(OS X 32 位)。您能帮忙吗?
链接到启动信息脚本的输出。http://paste.ubuntu.com/1028017/
答案1
在启动过程的早期听到提示音时,尝试按住 Option 键(如果您使用的是 PC 键盘,则按住 Alt 键)。这样应该会生成一个启动菜单,让您可以启动到 OS X。然后您可以重新安装 rEFIt(或切换到rEFInd,这是我更新的 rEFIt 分支,因为 rEFIt 已经两年多没有更新了。这应该可以解决问题。
如果使用 Option 或 Alt 无法显示启动菜单,请尝试使用 rEFIt 或 rEFInd 启动 CD。(这两个项目都有,但 rEFIt CD 更可能适用于 Mac。)同样,您可能需要按住 Option 或 Alt 才能看到 CD 作为启动选项。启动后,您可以(重新)安装 rEFIt 或 rEFInd。
如果这两种方法都不起作用,我还看到了另外三种方法,但它们都存在一定的风险:
- 您可以从 Ubuntu 移动或重命名 /boot/efi/efi/ubuntu/grubx64.efi 文件。这是 GRUB,移动/重命名它将迫使 Mac 的固件寻找其他启动选项,并且它应该会找到标准的 OS X 启动加载程序。进入 OS X 后,您可以挂载 ESP(“mkdir -p /boot/efi && sudo mount_msdos /dev/disk0s1 /boot/efi”),将 GRUB 移回其正常位置和名称,然后(重新)安装 rEFIt 或 rEFInd。风险在于,如果固件由于某种原因找不到 OS X 启动加载程序,您的系统将根本无法启动,直到您使用紧急光盘纠正问题,甚至直到您重新安装操作系统。
- 您可以做与上述相同的大部分操作,但请将 rEFIt 或 rEFInd 文件复制到 /boot/efi/efi/ubuntu,将 refit.efi 或 refind_x64.efi 重命名为 grubx64.efi。重新启动时,rEFIt 或 rEFInd 应该会出现,并且根据您使用的操作系统以及您对原始 grubx64.efi 的操作,您甚至可以立即启动这两个操作系统。缺点是后续的 GRUB 更新可能会抹去您的更改。
- 您可以尝试使用 efibootmgr 程序调整 EFI 引导加载程序配置,将 rEFIt 移回首位(或者,如果您尝试安装它,则将 rEFInd 置于首位)。风险在于,据报道,efibootmgr 至少会破坏某些 Mac 型号的固件。我的印象是,这个问题已在 3.0 版内核中得到纠正,但我没有找到任何权威信息。无论如何,如果您尝试这样做,请阅读 efibootmgr 手册页并发出必要的命令以将 rEFIt 重置为默认值,或者下载 rEFInd 并使用其 install.sh 脚本安装 rEFInd,这也将使用 efibootmgr 使其成为默认引导加载程序。
祝你好运!