黑苹果开荒记系统篇: 超详细的纯净 MacOS 安装流程
大家好, 我是可爱的排骨 😁
前言
这一篇排骨来说说 Z490 主板的黑苹果系统安装流程 (基于 OpenCore). 仍然是以上一篇 (黑苹果开荒记硬件篇: 新品 10700K+圣旗 Z490 配置实例) 的硬件 Intel i7-10700K + 圣旗 Z490-PRO Gaming + 讯景 RX 480 为基础, 介绍排骨开荒吃土的全部过程~ 🤣
流程大概有以下几步:
制作安装盘.
下载相关文件和脚本工具.
提取 DSDT (系统信息)并制作补丁 (SSDT).
创建 config.plist (OC 配置) 并复制到安装盘.
重新分区
安装 MacOS 10.15.5.
补全驱动并修正 OC 配置.
安装 Windows 10. (可选)
文本安装配置流程主要参考自 [OpenCore Desktop Guide]. 由于平台限制要求, 本文所有需要下载的文件和程序都不能提供下载连接, 请充分自我发挥搜索本领~ 实在找不到可在评论区留言向排骨索取. 😅
制作安装盘
📢 排骨的黑苹果安装盘制作需要以下材料.
32G 以上的 USB 3.0 U盘一个. 排骨计划将 MacOS 10.15.5 Catalina 安装镜像, Windows 10 安装镜像, Ubuntu 18.04 安装镜像都放到这个 U盘里.
一台正常工作的 Windows 10 或 MacOS 电脑. 安装盘的制作和配置都需要用这台电脑来完成.
良好的网络环境, 足够的耐心, 懂点电脑技术的脑子.
📢 用 Win10 电脑制作安装盘.
下载黑果小兵或其他大佬制作的 dmg 镜像, Win10 安装镜像 (iso), Ubuntu Desktop 18.04 安装镜像 (可选).
下载 balenaEtcher, 再用它把 dmg 镜像写入 U盘.
下载 Win10 安装镜像 (iso), 用 dism 命令将镜像中的 install.wim 分成多个 1GB 的 swm 文件.
在 U盘的剩余空间中创建一个比 Win10 安装镜像稍大的 FAT32 分区. 然后将镜像里除 install.wim 外的所有文件复制到此分区. 再把上一步生成的几个 swm 文件复制到此分区里代替 install.wim.
在 U盘的剩余空间中创建一个比 Ubuntu 安装镜像稍大的 FAT32 分区. 然后将镜像里所有文件复制到此分区中 (可选). 这样排骨的完美安装盘就制作完成了. 将 Win10 和 Ubuntu 也一起做到 U盘是为了安装多系统时省事, 你也可以用多个 U盘来做.
详细的步骤可参考排骨的旧贴 [终极系统安装盘打造攻略-macOS+win10+ubuntu三合一].
📢 准备 OpenCore 需要的驱动, 补丁和工具. 上面制作的安装盘很可能无法让你直接进入到 Mac 系统安装界面, 特别是对于排骨现在开荒的这款最新的酷睿十代 Z490 主板而言. 7. 下载 github.com/acidanthera
仓库里的 OpenCore-0.5.9-DEBUG.zip)
并下载. 8. 下载并安装 python 3.8.x. 9. 下载 github.com/corpnewt
仓库里的 SSDTTime
, ProperTree
, GenSMBIOS
. 10. 下载 mackie100projects
的 OpenCore Configurator
. 11. 将 OpenCore-0.5.9-DEBUG.zip
中的 EFI
文件夹复制到 U盘 Win10 安装分区, 放到 Ubuntu 那个分区也行. 这样可以免去挂载 U盘 EFI 分区的麻烦. 12. 删除 EFI\OC\Drivers
中的以下文件, 然后添加 HFSPlus.efi
(). 13. 删除 EFI\OC\Tools
中除 OpenShell.efi
以外的所有文件. (用来检查CFG Lock
状态的VerifyMsrE2.efi
可以保留) 14. 下载并添加 kext 驱动并复制到EFI\OC\Kexts
文件夹中, 排骨开荒的这块圣旗 Z490 主板还需要额外添加 FakePCIID.kex
, FakePCIID_Intel_HDMI_Audio.kext
才能出声音. 15. 使用 ProperTree.bat
修改 USBInjectAll.kext
文件夹下的 Info.plist
文件 (没错, 苹果的应用程序 .app
和驱动程序 .kext
都是文件夹). 在 Root\IOKitPersonalities\ConfigurationData\Configuration
节点下找到 8086_a36d
, 将它改名为 XHC
并保存. 16. 从 github.com/dortania/Getting-Started-With-ACPI/tree/master/extra-files/compiled
下载 SSDT-AWAC.aml
, SSDT-PLUG-DRTNIA.aml
, SSDT-EC-USBX-DESKTOP.aml
三个文件放入 EFI\OC\ACPI
文件夹中. 排骨当然也全部手工折腾过这些 SSDT
的, 最后才发现用这几个现成的就够了. (此处省去三万字…)
📢 修改 OpenCore 的配置文件. 17. 将OpenCore-0.5.9-DEBUG.zip
中的Docs\Sample.plist
文件复制到EFI\OC
文件夹并改名为config.plist
. 18. 运行ProperTree.bat
来打开config.plist
文件. 19. 在 ProperTree
的 File
菜单里选择 OC Clean Snapshot
, 然后选中 EFI\OC
文件夹. 这样上面整理好的 efi
和 kext
文件就都引用到 OpenCore 的配置文件 config.plist
里了. 20. 按下图设置好 Booter
的 Quirks
. 如果开机 log 报错, 可以试尝着改变 RebuildAppleMemoryMap
和 SetupVirtualMap
的值. 21. 按下图设置好 Kernel
的 Quirks
. 其中的 AppleCpuPmCfgLock
和 AppleXcpmCfgLock
只有在主板 BIOS
的 CFG Lock
启用而又没有选项让你关闭时才需要打开 (可在开机时选择 VerifyMsrE2
来检查主板 BIOS
的 CFG Lock
状态). DisableIoMapper
打开就可以忽略 VT-d
了. XhciPortLimit
在定制好 USB 端口之后关掉. 22. 按下图设置好 Misc
的 Debug
和 Security
节点. Debug
下面的几个设置都是用来生成调试信息和错误信息的, 这部分的改动对安装和配置黑苹果系统没有影响, 可以不动. AllowNvramReset
会在 OpenCore
启动菜单中添加 Reset NVRAM
选项, AllowSetDefault
可以让你修改 OpenCore
启动菜单的默认选择项 (按 Ctrl+Enter). 最后两个选项是屏蔽和降低 MacOS 的安装检查功能, 减少黑苹果的出错率. 23. 按下图设置好 NVRAM
. UIScale
设置为 2 可以启用 HiDPI, 避免 OpenCore 启动时超高分屏显示器显示内容太小. boot-args
是 OpenCore 的启动参数, 上图参数表示显示全部启动信息, 方便进不了系统的同学拍照上线求助. prev-lang:kdb
初始语言设置, 默认是俄语, 改成 en-US:0
就是英语了. 24. 使用前面下载的 GenSMBIOS
来生成黑苹果的硬件注册信息. 运行 GenSMBIOS.bat
再选 3. Generate SMBIOS
. 然后输入 iMac19,1
(注意大小写和逗号) 就能生成一套 SMBIOS 信息了. 如果你想激活 iMessage/FaceTime 等功能, 就像去 checkcoverage.apple.com
检查你生成的 Serial
是否存在, 如果不存在就能用来激活 iMessage/FaceTime, 类似黑群晖洗白操作. 如果是这个串号已经存在, 表示同串号的苹果电脑别人已经在使用, 会有一些安全问题. 如下图就是排骨试出来的一个美国马凯特大学里的苹果电脑串号, 联网后会自动加入托管证书, 获取包含清空你电脑在内的各种权限~ 怕不怕. 25. 按下图设置好 PlatformInfo
. 其中的 SystemSerialNumber
, MLB
, SystemUUID
使用上一步从 GenSMBIOS
生成的信息来填充. MLB
就是 Board Serial
. 这步完成后就可以保存并关闭 config.plist
了.
📢 至此基于 OpenCore 的纯净安装盘已经制作完成了. 可以拨掉 U盘插到要吃黑苹果的主板上开机了. 记得把上面下载的 OpenCore Configurator
也复制到 U盘上!
安装 MacOS
按
F12
(圣旗主板的 BIOS 基本与华硕的一致) 进入 BIOS 设置.再按
F9
搜索Fast Boot
,Secure Boot
,Intel SGX
这三个选项并禁用.继续利用搜索功能找到以下选项并修改设置:
Intel VMX (这块主板没找到 VT-x): 开启
Above 4G decoding: 开启
Hyper-Threading: 开启
Execute Disable Bit: 开启
EHCI/XHCI Hand-off: 开启
OS type: Windows 8.1/10 UEFI Mode
DVMT Pre-Allocated(iGPU Memory): 64MB保存设置并重启, 然后按
F8
选择 U盘启动, 会看到有多个 U盘分区可选. 如果上面是把EFI
放在Win10
或Ubuntu
分区, 那就要选 3 或者 4. (1 是 EFI 分区, 2 是 MacOS 安装镜像分区, 3 是 Win10 安装镜像分区, 4 是 Ubuntu 安装镜像分区)进到 OpenCore 启动菜单时, 选择
Install macOS Catalina
. 选择后面带external
的表示是 U盘上的. 下图可能与你看到的选择数量和顺序不一样, 仅供参考.与各种错误作斗争~在成功进入 MacOS 安装界面之前拍照, 搜索, 重启. 包含但不限于
apfs_module_start ...
SMCSuper IO ...
Waiting on <dict ID="0"> ...
apfs_sysctl_register ...
Please go to https :// panic.apple.com to report this panic
终于进入了安装界面. 排骨首先打开
Disk Utility
处理一下分区.从左上
View
下拉框中选中Show All Devices
来显示整个硬盘而不只是分区.选择需要装黑苹果的硬盘, 点上方的格式化按钮
Erase
, 格式选择Mac OS Extended (Journaled)
, 分区表选择GUID Partition Map
. 完成后再点上方的分区按钮Partition
.点两次
+
新增两个分区, 先只改名字不改格式. 反正是开荒体验, 排骨随便平均了三个区. 一个 MacOS, 一个 Win10, 一个 exFAT 交换区.退出
Disk Utility
, 选择Install macOS
, 再选择一个分区开始安装.苹果安装程序会自己重启两次, 第一次重启后继续选择上次那个 U盘的分区进入
OpenCore
, 这回要选macOS Installer
.第二次重启还是需要用 U盘引导
OpenCore
, 但是选择进入的是MacOS
. 看到下面这个时区选择界面就说明黑苹果系统已经安装好了.第一次正式进入黑苹果系统时, 先找到
Terminal
再运行sudo spctl --master-disable
命令来开启第三方软件运行权限. 然后运行 U盘里的OpenCore Configurator
, 在其Tools
菜单项下面选择Mount EFI
, 挂载并打开黑苹果当前硬盘上的EFI
分区.将放到 U盘的
EFI
文件夹复制到刚刚挂载的硬盘EFI
分区中. 这样就可以拔掉 U盘直接从硬盘启动黑苹果系统了.
📢 黑苹果 MacOS 系统安装完成!
安装 Win10
黑苹果用得再溜, 也总会有需要用到 Windows 的时候. 在安装过 MacOS 后, 再安装 Win10 就很简单了.
插入前面制作的安装盘, 重启电脑. 在
OpenCore
启动菜单中选择Windows (external)
.进入 Windows 安装界面后, 按
Shift+F10
打开命令行容器. 进入diskpart
模式, 使用list disk
和select disk
命令选中硬盘, 再使用list part
命令列出硬盘的所有分区. 其中Partition 1
是装有OpenCore
的EFI
分区, 其它几个分别为macOS
,win10
,exfat
三个分区.使用
select part
命令选中我们准备安装 Win10 的Partition 3
分区, 因为它是苹果分区, Win10 不能使用, 所以要将它delete
掉.Partition 3
被删除后, 再使用create part primary
命令创建一个分区给 Win10 安装使用.使用
format fs=ntfs quick
命令将刚刚创建的分区格式化, 并用assign
分配一个盘符. 用list vol
命令可以看出每个分区被分配的盘符. 可以看到刚刚格式化好的要装 Win10 的 NTFS 分区盘符是F
.再选中
EFI
分区, 给它也分配一个盘符. 现在可以看到F
是预装 Win10 的分区,G
是EFI
启动区,C
是 Win10 安装包分区. 这几个盘符记好了. 后面要用.切换到
C
盘, 用dism /get-wiminfo /wimfile:sources\install.swm
命令找出准备安装的 Win10 版本. 排骨打算安装Index: 5
位置的Windows 10 Pro
.输入
dism /apply-image /imagefile:sources\install.swm /swmfile:sources\install*swm /index:5 /applydir:F:
直接将 Win10 安装包内存解压到F
盘. (原install.wim
由于大于 4GB, 在制作安装盘时被排骨分割成多个installx.swm
).最后使用
bcdboot F:\windows /s G: /f UEFI
命令将F
盘里的Windows
引导写入G
盘, 引导格式为UEFI
.退出 Win10 安装程序重启, 等待几分钟再看到的就是熟悉的 Win10 欢迎界面了! 之后开机时可以按
F8
选择从OpenCore
或者Windows Boot Manager
启动, 也可以在Bios
中设置启动顺序. 📢 现在 MacOS/Windows 单硬盘双系统搞定! 两个系统都可以正常读写第三个 exfat 分区. MacOS 可以直接读取 NTFS 分区, Win10 需要安装Linux Reader
等软件才可以访问苹果分区.
补遗
📢 定制 USB 端口
下载
github.com/headkaze/Hackintool
并运行.切换到 USB 页面, 可以看到所有可用的 USB 端口显示为绿色, 把黑色的 USB 端口都删除. 如果只有部分绿, 可以用把 USB 键盘或鼠标的 USB 2.0 插头和一个 USB 3.x 的 U盘把主机上每个 USB 都插一遍, 插绿它!
看看绿色端口总数是不是在 15 个之内, 多于 15 的话需要删除几个绿色端口. (上一篇排骨已经说明了圣旗 Z490-PRO GAMING 这块主板上哪些 USB 端口用到了, 正好与下图的绿色端口一致, 也正好是 15 个)
点击右下导出按钮生成一个
USBPorts.kext
, 把它复制到EFI\OC\Kexts
文件夹中.将
EFI\OC\Kexts\config.plist
文件中的USBInjectAll.kext
修改成USBPorts.kext
, 再把XhciPortLimit
改成false
.
EHCI: USB 2.0 控制器 (Intel Skylake 开始取消了, 如果你在其它教程中看到它, 请忽略)
XHCI: USB 3.x 控制器. (向下兼容 USB 1.1/2.0)
HSxx: HS (High Speed) 表示 XHCI 下的 USB 2.0 接口.
SSxx: SS (Super Speed) 表示 XHCI 下的 USB 3.x 接口.
macoS Catalina 限制每个 USB 控制器最多 15 个接口. (圣旗 Z490-PRO GAMING 只有一个 XHCI)
一个 USB 2.0 接口对应一个 HSxx, 如 HS13, 禁掉 HS13 这个接口就失灵了.
一个 USB 3.x 接口对应一个 HSxx 和一个 SSxx, 如 HS01/SS01. 禁掉 HS01 这个接口插鼠标键盘或其它 USB 1.1/2.0 设备不工作. 禁掉 SS01 则 USB 3.x 设备降为 2.0 模式运行. HS01/SS01 都禁掉则此接口完全失灵.
📢 修改电脑名称 打开 /Users/[用户名]/Library/Preferences/com.apple.SystemProfiler.plist
修改 CPU Names
节点的 string
值, 不要改 key
值.
<key>CPU Names</key>
<dict>
<key>F8JC-en-CN_CN</key>
<string>iMac (Shengqi Z490-PRO GAMING)</string>
</dict>
📢 使用无核显 CPU 如果你用的是带 F 无核显的 CPU, 那么在生成 SMBIOS 时输入 iMacPro1,1
, 这样黑苹果系统会将独显作为默认显卡.
📢 双系统时间同步
MacOS 与 Windows 采用不能的系统时钟识别方式. MacOS 会将系统时钟设置成 UTC
时间, 而 Windows 会把系统时候作为本地时间,
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1
如果你可以忍受 MacOS 下使用英国时间, 就不需要改 Windows 注册表了 😆