将 Yosemite 应用于我的三重启动 MacBook Pro 后,它无法启动 Windows 或 Ubuntu。
我安装了 rEFInd,现在我可以在 rEFInd 菜单中看到所有三个操作系统,但是当我选择 MacOS X 以外的任何系统时,启动失败并显示“没有可启动媒体”。
有什么提示吗?
答案1
我使用 修复了这个问题efibootmgr
。我没有安装 Windows,但这个过程对你来说应该类似。
如果您无法启动 Ubuntu,请使用实时版本。
首先确保你已经efibootmgr
安装
$ sudo apt-get install efibootmgr
然后检查 EFI 可以从哪些分区启动
$ sudo efibootmgr
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000,0082
Boot0000* ubuntu
Boot0080* Mac OS X
Boot0081* Mac OS X
Boot0082*
BootFFFF*
在我的情况下,它列出了 4 个分区。Boot0000
是安装了 Grub 的 Ubuntu 分区,默认情况下我想启动这个分区。
我发现这Boot0080
是旧 Mavericks 安装的恢复分区,而Boot0081
是 Yosemite 恢复分区。Yosemite 所在的分区实际上安装,就我而言, 是Boot0082
Grub 无法直接加载 Mac OS X,但我可以配置 EFI 在 Grub 退出时加载 Mac OS X 分区。
所以我跑了
$ sudo efibootmgr -o 0000,0082
概括地说,这意味着Boot0000
,在安装 Grub 的地方,将首先运行,然后如果你退出 grub(按c
end 然后输入命令exit
),你就可以启动到 Mac OS X
为了使启动 Mac OS X 的过程更加舒适,你可以在 Grub 启动菜单中添加一个条目,退出并启动 Mac OS X。只需编辑/etc/grub.d/40_custom
并附加以下内容
menuentry "Exit to Max OS X" {
exit
}
并使用以下命令重新加载 Grub 配置
sudo update-grub
一切都应该有效
答案2
问题其实很简单:Yosemite 升级用不包含现有 Windows 和 Ubuntu 分区的新 MBR 分区表覆盖了“假”MBR 分区表。
解决方案:1)启动到 rEFInd 命令 shell 2)执行命令 gptsync_x64.efi 3)用 Y 回答问题:(解释)分区表不匹配,您想看看我修复它之后会是什么样子吗?您希望我修复它吗?
然后我重新启动,一切都正常。
展望未来,OSX 仅支持 64 位,早期的 Intel-Mac 无法运行 Lion 之后的系统。但 64 位 EFI 可以很好地启动 32 位操作系统。