u盘efi4g (U盘efi) 个人硬件配置如下:

CPU:I5-6500

主板:ROG Z170-ITX(咸鱼买的二手,本来打算升级的CPU的,到现在也没搞)

网卡:板载有线Intel i219

无线:QCA61 也就是killer1535.不支持

内存:2个4G 2133(当时买CPU的时候送了一根,自己又买了一根)

显卡:蓝宝石RX580 2304sp

显示器:戴尔U2417


电脑

成果图


先说说安装黑苹果的背景,几年前配台式机是想玩游戏的LOL、使命召唤等,但是玩了一段时间之后就没什么兴趣了,可能作为半个程序员经常加班没精力了,电脑就用来看看电影什么的。无意中看到黑苹果,发现这是个神奇的东西,然后自己硬件条件比较好,就想搞一搞了,现在也不玩游戏了,感觉可以折腾一下。之前基于Colver装了一次,用了一个多月感觉还是很好的,除了wifi用不了

,其它都正常。逛帖子发现Open Core才是大趋势,而且比较考验技术,所以就有了本次折腾。人生贵在折腾嘛

说明:安装教程来自OpenCore-Install-Guide网站https://dortania.github.io/OpenCore-Install-Guide/prerequisites.html,只要大家认真阅读的话,完成安装没任何问题

需要的所有软件Python,下载地址 https://www.python.org/ftp/python/3.8.5/python-3.8.5.exegibMacOS,下载地址 https://github.com/corpnewt/gibMacOS/archive/master.zipDiskGenius,下载地址 http://download.eassos.cn/DG5301066_x64.zipSSDTime,下载地址 https://github.com/corpnewt/SSDTTime/archive/master.zipiasl,下载地址 电脑 https://acpica.org/sites/acpica/files/iasl-win-20200528.zip SSDT-USBX.aml,下载地址 https://github.com/dortania/OpenCore-Post-Install/raw/master/extra-files/SSDT-USBX.amlProperTree,下载地址 https://github.com/corpnewt/ProperTree/archive/master.zipGenSMBIOS,下载地址 https://github.com/corpnewt/GenSMBIOS/archive/master.zip环境准备

安装python和7zip,Python一定要勾选Add Python to PATH

制作Opencore启动U盘

这一步是最简单的,需要一个U盘,官方说是4G就够了,我用的是32G的。一定要把U盘的重要资料备份,过程将执行格式化

打开下载好的gibMacOS-master,运行gibMacOS.bat,选择你要下载的系统,等待下载完成,结束后会有gibMacOS-master\macOS Downloads\publicrelease\001-36801 - 10.15.6 macOS Catalina

管理员权限运行MakeInstall.bat输入你U盘的编号和选项O(欧),不是0(零)!!!一定要确认是你的U盘编号,不要选错了!!!此过程将格式化U盘,如果有重要资料提前备份!!!

结束后下一步将下载的pkg完整路径输入后回车键执行,然后等待。。。

最后是下载opencore最新版本

如果最后Copy boot报错可以忽略,只要U盘下面有了EFI文件夹就可以。

制作符合自己的DSDT和SSDT(复杂,慎重)

DSDT(Differentiated System Description Table),由于每台电脑硬件的位置及用法可能不相同,所以需要一个表格告诉操作系统硬件在哪里,怎么用。

SSDT(Secondary System Description Table),用来对DSDT进行修补,让硬件变成与白苹果类似的硬件。

由于执行自动下载特别慢还有可能失败,所以先下载好iasl。将下载好的iasl解压,文件放到SSDTTime工具下的Scripts里

进入SSDTTime,执行SSDTTime.bat,执行4,3,2,结束后会生成一个Results文件夹,下面就会生成你电脑硬件的DSDT.aml。

接下来就是制作你电脑的SSDT

首先去opencore说明文档看你CPU平台需要哪几个SSDT,例如我的是6代CPU,那么就是Skylake,7代是Kaby Lake,8代9代是Coffee Lake,十代是Comet Lake

按照说明我这边只需要制作SSDT-PLUG,SSDT-EC-USBX就可以(7代CPU也是)

如果你是8代9代则制作4个文件(SSDT-PLUG,SSDT-EC-USBX,SSDT-AWAC,SSDT-PMC)10代同样需要制作4个文件(SSDT-PLUG,SSDT-EC-USBX,SSDT-AWAC,SSDT-RHUB)SSDT-AWAC,SSDT-PMC,SSDT-RHUB的制作请自行去看文档吧,里面讲的也很清楚

上面脚本执行的步骤3生成了SSDT-PLUG.aml,步骤2生成了SSDT-EC.aml,这个可以直接用不需要修改,现在只需要SSDT-USBX.aml。这个文件基本是通用的,所以直接下载就可以了(文首提供了下载链接)

进入U盘BOOT,将制作好的SSDT拷贝到EFI-ACPI下


所有的ACPI文件

Drivers只保留2个必要(HfsPlus.efi和OpenRuntime.efi)

HfsPlus.efi 查看HFS卷(即macOS安装程序和恢复分区/映像)所需OpenRuntime.efi 用作OpenCore的扩展,以帮助修补boot.efi以修复NVRAM和更好的内存管理。


Driver文件

Kexts如下VirtualSMC.kext 必备 模拟在实际macs上找到的SMC芯片,如果没有此macOS,它将无法启动Lilu.kext 必备 用于修补AppleALC,WhateverGreen,VirtualSMC和许多其他修补程序所需的许多进程。没有莉露,他们将无法工作WhateverGreen.kext 必备 用于图形补丁DRM,boardID,帧缓冲区修复等AppleALC.kext 必备 音频驱动SMCProcessor.kext 用于监视CPU温度SMCSuperIO.kext 用于监视风扇速度IntelMausi.kext 板载网卡驱动,如果你的是最新的2.5G网卡就不能用这个


修改config.plist

下载opencore的release版本,把docs里的Sample.plist,将文件修改为config.plist,放到U盘EFI-OC下

运行ProperTree-master下的ProperTree.bat,选择打开config.plist

ACPI和Kexts

下面要关联我们本机的配置文件,按住Ctrl+Shift+R,选择BOOT-EFI-OC,确定后就关联了我们设置好的ACPI和Kexts,这两块内容就不需要修改了

关联后ACPI部分会显示你加入的aml文件,必须有这3个文件,如果不对就再操作一遍


检查ACPI-Add


检查Kernel-Add


修改其它选项,建议去OpenCore-Install-Guide说明中按照图解去修改相关选项,地址见文首。每个平台参数可能区别很大,这边我仅以6代CPU,也就是Skylake举例

Booter

无需修改!

DeviceProperties

默认项可以直接删除,这个是关于声卡的,用不到,装完之后再配置即可

添加核显参数

鼠标放到DeviceProperties-add右键选择new child under "add",Key值改为PciRoot(0x0)/ Pci(0x2,0x0),然后type改成dictionary

右键新添加的项选择new child under "PciRoot(0x0)/ Pci(0x2,0x0)",Key值改为AAPL,ig-platform-id,Type改为Data,Value改为01001219(注意:我是用独显输出,核显只是帮助计算;如果你用核显输出显示的话就设置为00001219


DeviceProperties

Kernel

这里有坑,要小心,我踩到了!!!这边只需要修改Quirks就可以

AppleCpuPmCfgLock False 主板没有CFGLock设置需要改为TrueAppleXcpmCfgLock False 主板没有CFGLock设置需要改为TrueDisableIOMapper False 主板没有VT-d设置需要改为TruePanicNoKextDump TruePowerTimeoutKernelPanic TrueXhciPortLimit True


Kernel-Quirks

Misc

修改Debug和Security两项

Debug》》

AppleDebug YESApplePanic YESDisableWatchDog YESTarget 67

Security》》

AllowNvramReset YESAllowSetDefault YESScanPolicy 0SecureBootModel DefaultVault Optional


Misc

NVRAM

Add》》4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14

UIScale 02 开启HiDPI

》》7C436110-AB2A-4BBB-A880-FE41995C9F82

boot-args -v keepsyms=1 debug=0x100 alcid=1 如果你用的RX5000系列显卡需要加agdpmod = pikeraprev-lang:kbd en-US:0WriteFlash YES


NVRAM

PlatformInfo

使用下载好的GenSMBIOS-master下的GenSMBIOS.bat,输入3,回车

输入iMac17,1,回车。将生成的数据填入PlatformInfo-Generic,对应关系如下:

Type == SystemProductNameSerial == SystemSerialNumberBoard Serial == MLBSmUUID SystemUUID


生成数据


填入

UEFI

检查一下Driver有没有关联正确,有HfsPlus.efi和OpenRuntime.efi这两个就可以


UEFI

这样就设置完了,结束后可以去网站验证你的config.plist文件,https://opencore.slowgeek.com 注意选择正确的CPU平台和OpenCore版本。如果全部通过就可以进行安装了


验证页面


验证结果

安装

主板设置

Fast Boot ==DisableSecure Boot ==Disable Serial/COM Port ==DisableParallel Port ==DisableVT-d ==Disable 主板没有此选项则需要修改Kernel-Quirks-DisableIoMapper ==TrueCSM ==DisableThunderbolt ==DisableIntel SGX ==DisableIntel Platform Trust ==DisableCFG Lock ==Disable 主板没有此选项则需要修改Kernel-Quirks-AppleCpuPmCfgLock=True && AppleXcpmCfgLock=True VT-x ==EnableAbove 4G decoding ==EnableHyper-Threading ==EnableExecute Disable Bit ==EnableEHCI/XHCI ==Hand-offOS type ==Windows 8.1/10 UEFI Mode 或者 Other 一定不能是WindowsDVMT Pre-Allocated(iGPU Memory): 64MBSATA Mode ==AHCI

设置U盘为第一启动

进入安装页面后选择macOS Base System (External)这一项直到Apple的Logo出现,下面就是正常的系统安装设置了


电脑