Mac OS X 10.13 High Sierra环境下VirtualBox虚拟机卡在UEFI interactive shell的问题求助
Mac OS X 10.13 High Sierra环境下VirtualBox虚拟机卡在UEFI interactive shell的问题求助
Hey luka,太懂你这种第一次搞Mac虚拟机就卡壳的崩溃感了!我之前帮朋友踩过类似的坑,给你几个实打实的解决步骤,你跟着一步步来试试:
先解决当前卡在UEFI shell的问题:手动引导启动
当你看到UEFI interactive shell的界面时,按下面的操作来:
- 先输入
FS0:(如果没反应就依次试FS1:、FS2:,直到找到挂载了MacOS安装镜像的分区) - 接着输入
cd EFI\BOOT切换到启动目录 - 最后输入
BOOTX64.efi或者boot.efi,回车后应该就能进入MacOS的安装界面了
调整虚拟机配置,避免下次再卡
- 系统配置检查
打开VirtualBox的虚拟机设置,进入「系统」->「主板」:- 确保分配的内存至少4GB(Xcode吃内存很凶,太少会出各种问题),CPU核心数设为2核及以上;
- 勾选「启用EFI(特殊操作系统需要)」,然后把「启动顺序」里的「光驱」(你的MacOS安装镜像)拖到最顶端,硬盘紧随其后;
- 可以试试取消勾选「启用I/O APIC」,部分老版本VirtualBox和MacOS 10.13兼容有问题,关了这个可能能解决。
- 存储配置确认
到「存储」选项卡:检查虚拟硬盘有没有正确关联到虚拟机,而且你的MacOS安装镜像(.dmg/.iso)已经挂载在光驱里,状态显示「已连接」。 - 检查镜像完整性
如果你用的安装镜像不是官方渠道来的,大概率是损坏了。可以重新下载官方的MacOS 10.13安装包,然后用终端转换成VirtualBox能识别的ISO格式:# 生成临时镜像文件 hdiutil create -o /tmp/HighSierra.cdr -size 7316m -layout SPUD -fs HFS+J # 挂载镜像 hdiutil attach /tmp/HighSierra.cdr.dmg -noverify -mountpoint /Volumes/install_build # 转换为ISO格式 hdiutil convert /tmp/HighSierra.cdr.dmg -format UDTO -o /tmp/HighSierra.iso # 重命名文件 mv /tmp/HighSierra.iso.cdr /tmp/HighSierra.iso - Windows主机的额外注意点
如果你是用Windows电脑跑VirtualBox,一定要关掉Hyper-V!它会和VirtualBox的虚拟化功能冲突,导致虚拟机启动异常。可以通过「控制面板->程序->程序和功能->启用或关闭Windows功能」,找到Hyper-V取消勾选,重启电脑后再试。
如果试完这些还是不行,你可以把UEFI shell里显示的具体错误信息贴出来,或者虚拟机的配置截图,这样能更精准地帮你定位问题~
备注:内容来源于stack exchange,提问作者luka




