软件介绍
OC.Gen-X 是一款主要由 Pavo-IM Pavo 开发的小工具,用于一键生成适用于 OpenCore 的 EFI 引导文件夹(各项设置基于 Dortania 的 OpenCore 安装指南)。不过该 app 需要 macOS 环境才能运行,没有的用户可以先使用虚拟机安装 macOS(macOS 10.15 即可),配置好 EFI 文件夹后可以通过刻录镜像的方式安装 macOS。
截止目前,该软件支持以下硬件平台:
- 英特尔
- Haswell-E(第五代酷睿 X99 平台)
- Broadwell-E(第六代酷睿 X99 平台)
- Skylake-X/W 和 Cascade Lake-X/W(第七、九、十代酷睿 X 系列和 Xeon 系列)
- Ivy Bridge(第三代酷睿)
- Haswell 和 Broadwell(第四、五代酷睿)
- Skylake(第六代酷睿)
- Kaby Lake(第七代酷睿)
- Coffee Lake(第八、九代酷睿)
- Comet Lake(第十代酷睿)
- 消费级
- HEDT 平台
- AMD
- Ryzen Zen/Zen2(锐龙和 Threadripper 线程撕裂者)
- Proxintosh(Qemu+KVM)
- 目前支持 OpenCore 0.6.0 正式版
OpenCore 是什么?
目前黑苹果安装
主要通过使用 EFI 引导程序(Bootloader)的方法,现在较为流行的有 Clover 和 OpenCore。Clover 从变色龙时代进化而来,背负了很多沉重的历史包袱,为兼容性做出了各种妥协。OpenCore 在设计之初理念就较为先进,并且丢掉了不少 Clover 的历史包袱,轻装前行。理论上 OpenCore 可以正确引导所有基于 UEFI 技术的现代操作系统,也就是常见的 Windows、Linux、macOS 都是能被支持的,但目前 OpenCore 应用最多的就是黑苹果的安装使用。 OpenCore 的优势:
- 由 acidanthera 团队主导开发的黑苹果驱动已经全面转向 OpenCore,例如声卡 AppleALC、显卡 WhateverGreen、核心扩展 Lilu 等等,均不再测试 Clover 的兼容性,这些驱动是使用黑苹果必不可少的;
- 一般来说,OpenCore 系统的启动速度比使用 Clover 的系统快;
- 支持 UEFI 和传统启动引导模式(Legacy);
- Mask Patching 意味着 macOS 的更新几乎不会破坏基于 AMD 的黑苹果系统,而 OpenCore 拥有的 AMD OSX Patches 支持 High Sierra,Mojave 和 Catalina 的所有版本。
一键生成 OpenCore EFI 文件
接下来,我们运行 OC.Gen-X,根据自己的硬件平台勾选对应的设置,演示机型配置如下表:
下面根据演示机型进行配置,见图:
关于 SMBIOS:
- 这个可以理解成白苹果电脑的机型 ID,不同的标识符对应不同的白苹果产品线,数字则代表是第几代及其它配置区别,例如 iMac19,1 是一体机,Macmini8,1 是迷你机,MacPro7,1 是刨丝器专业工作站。
- 明白了上一点,接下来就容易理解了:黑苹果其实就是抄作业,使用相同或近似的硬件配置来仿冒白苹果机型,欺骗 macOS 让它以为自己运行在真正的 Mac 上,从而达到“黑”的目的(当然机型 ID 只是其中一环)。
- 如何选择适合你的 SMBIOS ID,请参阅:SIMBIOS ID、Platform-ID速查表。
- 如果你想把三个空都一并填了,请参阅:给黑苹果注入三码。
参数解释:
- -v 用于打开跑码模式,方便排错;
- debug=0x100 用于发生严重错误(Kernel Panic)后禁止自动重启,将停留在出错位置,方便排错;
- keepsyms=1 用于辅助上一个启动参数,可以对错误原因提供更多有用的信息;
- agdpmod=pikera 用于解决 Navi 核心的显卡启动黑屏问题,如果你是 Polaris(RX400/RX500) 或 Vega(56/64) 显卡则无需此项;
- 使用 Nvidia 显卡请添加 nvda_drv=1;
- 笔记本如需关闭独显请添加 -wegnoegpu;
- X99、X299 平台以及部分 AMD 平台需要添加 npci=0x2000 或 npci=0x3000,当跑代码卡在 PCI Start Configuration 时使用;
- 只有 AMD 平台的 BIOS 没有 Above 4G Decoding 选项时添加此参数,二者不可同时使用。
- alcid=11 是 AppleALC.kext 用于驱动声卡的参数,演示机型板载 ALC1220 芯片,可使用 layout-id 11 驱动声卡,其它芯片可参考 AppleALC.kext 提供的解码器支持表单和驱动更新日志。
现在,生成的 EFI 文件夹会出现在你的桌面,见图:
添加 SSDT
OC.Gen-X 默认不会添加任何 SSDT 文件,但大部分硬件配置正常运行 OpenCore 是需要 SSDT 文件的。所以,根据硬件配置的不同,还需要添加 OpenCore 适配的 SSDT 文件,否则一定会卡在跑码启动阶段。
详情请添加站长微信了解!上述链接中的内容可使用 MaciASL.app 直接编译为 .aml 文件最后,把以上你需要的 SSDT 文件放到 /EFI/OC/ACPI/ 目录,并在 config.plist 文件中启用:(下图使用的软件是 OpenCore Configurator,点击“浏览”添加指定文件)
BIOS 设置
详情请添加站长微信了解!
最终检查
请依次检查一遍所做的配置和文件,也可通过下面这个网站验证 config.plist 文件配置正确性。
- https://opencore.slowgeek.com
- 目前支持 OpenCore 0.6.0 正式版