EFI 模式的 GRUB 应该能够链式加载 OS X 引导加载程序,但 GRUB 探测器可能不知道在哪里可以找到它。它传统上存储/System/Library/CoreServices/boot.efi在 OS X 根分区上;但自从优胜美地以来,它通常存储在紧急启动磁盘上,因为根文件系统现在默认使用 LVM 设置,固件无法读取。无论如何,您可能需要编写自定义 GRUB 条目才能启动它。有关一些基本信息,请参阅此处,但并未针对您的需要提供完整的说明。
如果您的 Ubuntu 安装处于 BIOS/CSM/legacy 模式,则可能会更难,因为 GRUB 无法重定向到 EFI 模式引导。GRUB 能够直接引导 OS X 内核,但是设置起来可能很棘手,并且可能会失去 OS X 中的一些功能。这绝对是边缘/前沿的东西,所以我不建议你尝试它。如果您愿意这样做,您可能可以在 Internet 上的某个地方找到说明,但我手边没有任何 URL。
许多 Mac 用户更喜欢使用 GRUB 以外的其他东西作为默认引导加载程序,将 GRUB 降级为次要状态或根本不使用它。执行此操作的传统工具是rEFIt,但它已被废弃五年了。它仍然有效,但如果您使用优胜美地或其他一些相对较新的选项,您可能需要跳过一些额外的环节。我创建了一个名为rEFInd 的 rEFIt 分支。它得到积极维护,可以启动您的任何操作系统。如果愿意,您可以先在 CD-R 或 USB 闪存驱动器上试用它,然后再将其安装到硬盘上。(下载页面包括指向两种类型媒体的图像的链接。rEFInd 可以直接启动 Linux 内核,从而绕过 GRUB;或者它可以链式加载到 EFI 模式或 BIOS 模式的 GRUB。它还可以链式加载到 OS X 引导加载程序以及 EFI 模式和 BIOS 模式 Windows 引导加载程序。
EFI 模式的 GRUB 应该能够链式加载 OS X 引导加载程序,但 GRUB 探测器可能不知道在哪里可以找到它。它传统上存储
/System/Library/CoreServices/boot.efi
在 OS X 根分区上;但自从优胜美地以来,它通常存储在紧急启动磁盘上,因为根文件系统现在默认使用 LVM 设置,固件无法读取。无论如何,您可能需要编写自定义 GRUB 条目才能启动它。有关一些基本信息,请参阅此处,但并未针对您的需要提供完整的说明。如果您的 Ubuntu 安装处于 BIOS/CSM/legacy 模式,则可能会更难,因为 GRUB 无法重定向到 EFI 模式引导。GRUB 能够直接引导 OS X 内核,但是设置起来可能很棘手,并且可能会失去 OS X 中的一些功能。这绝对是边缘/前沿的东西,所以我不建议你尝试它。如果您愿意这样做,您可能可以在 Internet 上的某个地方找到说明,但我手边没有任何 URL。
许多 Mac 用户更喜欢使用 GRUB 以外的其他东西作为默认引导加载程序,将 GRUB 降级为次要状态或根本不使用它。执行此操作的传统工具是rEFIt,但它已被废弃五年了。它仍然有效,但如果您使用优胜美地或其他一些相对较新的选项,您可能需要跳过一些额外的环节。我创建了一个名为rEFInd 的 rEFIt 分支。它得到积极维护,可以启动您的任何操作系统。如果愿意,您可以先在 CD-R 或 USB 闪存驱动器上试用它,然后再将其安装到硬盘上。(下载页面包括指向两种类型媒体的图像的链接。rEFInd 可以直接启动 Linux 内核,从而绕过 GRUB;或者它可以链式加载到 EFI 模式或 BIOS 模式的 GRUB。它还可以链式加载到 OS X 引导加载程序以及 EFI 模式和 BIOS 模式 Windows 引导加载程序。
我安装了没有 rEFInd 的 Debian。我很难从 GRUB 引导 OSX。我必须按下Alt按钮才能启动进入 MacOs。
我在 40_custom 文件中尝试了多个条目,但无济于事。
40_custom
我不小心偶然发现了这个解决方案:我刚刚通过在文件夹中的文件中包含以下代码在 GRUB2 中创建了一个菜单项/etc/grub.d/
;然后我跑了
sudo update-grub