我正在尝试使用我的 MacBookPro 的 EFI 固件双启动 El Capitan 和 Ubuntu MATE,而不使用 rEFInd 或 rEFIt。http://courses.cms.caltech.edu/cs171/materials/pdfs/How_to_Dual-Boot_OSX_and_Ubuntu.pdf展示了如何在不擦除和重新安装 OS X 的情况下执行此操作。我在创建 Ubuntu 启动分区时遇到了问题——磁盘实用程序不会将其缩小到 5 GB 以下。我不会为了引导加载程序而浪费 5 GB。所以我在谷歌上搜索了一下,找到了这个 StackExchange 问题(链接已删除),它甚至引用了我使用的指南。在命令行中,diskutil 不会将分区缩小到足够小。然后我看到了该问题唯一答案的最后一条评论,它说从真正的 ESP 启动是一个更好的选择。所以现在我一直在思考如何使用 Mac 的固件启动 Ubuntu。我粗略地想到了三种不同的方法:
- 在 Mac 上已经存在的 ESP 上安装引导加载程序。我可能会
ubiquity -b
在终端中使用,然后使用与此类似的过程安装引导加载程序(链接已删除)。 - 执行与上述相同的操作,但创建一个新的 ESP(不确定是否有必要)。
- 不要弄乱 ESP 并使
bless
EFI 文件在安装 Ubuntu 的同一分区上可启动。(会有 EFI 文件吗?)
如果我看起来好像不知道自己在做什么,那是因为我不知道,这也是我来这里的原因。这些选项有用吗?有没有更好的设置方法?
编辑:好的,我已经安装了 Ubuntu MATE。我选择在 Mac 上已有的 ESP 上安装引导加载程序,一切顺利。但是,当我启动固件时,显示的唯一选项是 Macintosh HD。当我从 OS X 重新启动时,它将重新启动到 OS X。但是,我可以安装安装了 GRUB 的 ESP,然后在命令行中祝福它,Mac 将重新启动到 Ubuntu MATE。我的结论是,固件只允许用户从已安装的卷启动,我可能必须在 OS X 中安装我的 ESP 或为引导加载程序使用不同的分区(并将其安装在 OS X 中)。
编辑 2:已解决。我刚刚将 ESP 中的 grubx64.efi 文件复制到 ESP 中的目录 /EFI/boot/bootx64.efi(或任何 fat32/efi 分区),Apple 的固件检测到了它。感谢/u/5HT-2a。
答案1
您不必使用磁盘实用程序来创建分区,因为这显然是该工具的限制,为什么不使用其他工具进行分区,例如实时 CD?Arch 和 Ubuntu 在 UEFI 中安装时并不完全相同。我建议使用备用介质来安装 ubuntu,选择手动配置,在安装时,您可以将 ubuntu 的启动分区设置为“boot”,并将 esp 设置为 boot\efi。esp 上有关 ubuntu 的所有内容都将位于“ubuntu”文件夹下。设置和安装准备就绪后,您应该添加一个在 El Capitan 上链式加载 ubuntu 的选项(但可以这样做吗?- 我对 osx 一无所知)或使用 cloverefi,据我所知,它是 hackintosh 用户中最广泛使用的。https://sourceforge.net/projects/cloverefiboot/