答案1
UEFI 需要干预,因为 Mac 主板上的 EFI 固件无法在磁盘上的标准位置找到有效的特定于操作系统的 EFI 启动固件。但是,假设您在该磁盘上有一个 macOS 恢复分区,它应该包含一份boot.efi
(特定于 macOS 的启动固件)副本,您可以使用它启动操作系统。
您的直接目标是帮助 EFI 定位并执行特定于操作系统的启动固件。最终目标是提供一个包含 macOS 的启动分区boot.efi
。现在您可能已经猜到boot.efi
是一个位于磁盘分区中 EFI 标准路径的 EFI 标准文件名,并且它包含特定于操作系统的启动固件(例如,Windows、Linux 等... 都有自己的风格boot.efi
)。
就我的情况而言,将 macOS 安装到根据这些说明创建虚拟机(从 Apple 下载的 ISO 映像运行 macOS 安装程序),首次启动时,启动分区存在,但未配置(可能未安装启动映像)。首次手动引导 EFI 启动 macOS 后,macOS 自动修复了启动分区,后续启动正常。
我可以按如下方式修复 UEFI 问题 (归功于VirtualBox 论坛):
在 UEFI 提示符下:输入出口
您将进入 EFI 文本模式 GUI。
选择靴子维护经理并点击。
选择从文件启动并点击
您应该在列表中看到两个条目(它们是神秘的 PCI 总线路径)。
列表中的第一个 PCI 路径可能是不包含可启动固件的启动分区。第二个 PCI 路径可能是恢复分区,即您需要从中启动的分区。如果第二个分区不是恢复分区,请查看列表中的路径,看看其中是否有恢复分区。如果恢复分区不存在且有效,则这些说明将不起作用。
单击第二个条目。您应该看到(然后单击):
macOS 安装数据
然后点击:
锁定文件
然后(如果存在),点击
引导文件
最后点击:
启动文件
安装将继续,否则您将启动进入操作系统或获得恢复实用程序菜单(可以从中重新安装 macOS 或磁盘实用程序跑步)。最后这句话的歧义在于,我在写这条评论之前就已经这样做了,我不记得我首先启动了什么,只记得它起作用了,而且不难弄清楚当时该做什么。
如果你有恢复分区,要直接启动到恢复模式,打开 Mac 并立即按住⌘+ R。
答案2
在 VM 设置常规 > 基本 > 版本中设置“macOS 10.13 High Sierra (64 位)”,因为现在您可能设置了 32 位版本。