软件介绍

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,根据自己的硬件平台勾选对应的设置,演示机型配置如下表:

esxi opencore_黑鲨创建nt6引导出错

下面根据演示机型进行配置,见图:



esxi opencore_黑苹果_02

esxi opencore_esxi opencore_03

esxi opencore_黑鲨创建nt6引导出错_04

esxi opencore_esxi opencore_05

esxi opencore_微信_06

esxi opencore_微信_07

esxi opencore_微信_08

esxi opencore_黑苹果_09

esxi opencore_微信_10

esxi opencore_黑苹果_11

esxi opencore_黑苹果_12

关于 SMBIOS:


  • 这个可以理解成白苹果电脑的机型 ID,不同的标识符对应不同的白苹果产品线,数字则代表是第几代及其它配置区别,例如 iMac19,1 是一体机,Macmini8,1 是迷你机,MacPro7,1 是刨丝器专业工作站。
  • 明白了上一点,接下来就容易理解了:黑苹果其实就是抄作业,使用相同或近似的硬件配置来仿冒白苹果机型,欺骗 macOS 让它以为自己运行在真正的 Mac 上,从而达到“黑”的目的(当然机型 ID 只是其中一环)。
  • 如何选择适合你的 SMBIOS ID,请参阅:SIMBIOS ID、Platform-ID速查表。
  • 如果你想把三个空都一并填了,请参阅:给黑苹果注入三码。

esxi opencore_黑苹果_13

参数解释:


  • -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 文件夹会出现在你的桌面,见图:


esxi opencore_微信_14

添加 SSDT

OC.Gen-X 默认不会添加任何 SSDT 文件,但大部分硬件配置正常运行 OpenCore 是需要 SSDT 文件的。所以,根据硬件配置的不同,还需要添加 OpenCore 适配的 SSDT 文件,否则一定会卡在跑码启动阶段。

详情请添加站长微信了解!上述链接中的内容可使用 MaciASL.app 直接编译为 .aml 文件最后,把以上你需要的 SSDT 文件放到 /EFI/OC/ACPI/ 目录,并在 config.plist 文件中启用:(下图使用的软件是 OpenCore Configurator,点击“浏览”添加指定文件)


esxi opencore_ci_15

BIOS 设置

详情请添加站长微信了解!

最终检查

请依次检查一遍所做的配置和文件,也可通过下面这个网站验证 config.plist 文件配置正确性。



esxi opencore_微信_16