如何使用 GRUB2 从 APFS 分区加载 MacOS?

如何使用 GRUB2 从 APFS 分区加载 MacOS?

这是一台 Apple 机器,不是 Hackintosh。在 Apple 转向 APFS 之前,你可以将其放在 GRUB 的菜单项中:

set root=(your OS X partition)
chainloader /System/Library/CoreServices/boot.efi

但这不适用于 APFS,因为尽管 EFI 有 AFPS 的驱动程序,但 GRUB 无法读取它。

有没有办法在 GRUB 菜单中提供一个选项来启动 MacOS?以下是一些可能的实现方式:

  • 以某种方式让 GRUB 利用 EFI 的内置 APFS 驱动程序来加载 MacOS 引导加载程序
  • 将 MacOS 引导加载程序放在 GRUB 可以读取的地方
  • 使用 GRUB 启动可以加载 MacOS 的第三方 EFI 程序

有时在 GRUB 控制台中输入exit将加载 MacOS,但它并不一致——它有时会关闭机器,再次加载 GRUB,或者加载已安装的另一个操作系统。

答案1

我还没有测试过这些,所以我不能 100% 确定它们是否有效。

以某种方式让 GRUB 利用 EFI 的内置 APFS 驱动程序来加载 MacOS 引导加载程序

您可以尝试复制位于 /usr/standalone/i386/apfs.efi 的 apfs 驱动程序并将其加载到 apfs 卷(我不知道 GRUB 将如何处理)

将 MacOS 引导加载程序放在 GRUB 可以读取的地方

EFI 分区中有一个 boot.efi,您可以尝试链式加载。

使用 GRUB 启动可以加载 MacOS 的第三方 EFI 程序

在 hackintoshes 中使用的引导加载程序(例如 Clover 和 OpenCore)应该可以工作。只需禁用或删除 kext、驱动程序和 ssdt/dsdt 补丁即可。

相关内容