正文内容 评论(0)
大家好, 我是可爱的排骨
前言
这一篇排骨来 Z490 主板的黑苹果系统安装流程 (基于 OpenCore). 仍然是以上一篇 (黑苹果开荒记硬件篇: 新品 10700K+圣旗 Z490 配置实例) 的硬件 Intel i7-10700K + 圣旗 Z490-PRO Gaming + 讯景 RX 480 为基础, 介绍排骨开荒吃土的全部过程~ 流程大概有以下几步: 制作安装盘. 安装 Windows 10. 下载相关文件和脚本工具. 提取 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 电脑制作安装盘
1、下载黑果小兵或其他大佬制作的 dmg 镜像,、Win10 安装镜像 (iso)、Ubuntu Desktop 18.04 安装镜像 (可选)
2、下载 balenaEtcher, 再用它把 dmg 镜像写入 U盘
3、下载 Win10 安装镜像 (iso), 用 dism 命令将镜像中的 install.wim 分成多个 1GB 的 swm 文件
4、在 U盘的剩余空间中创建一个比 Win10 安装镜像稍大的 FAT32 分区. 然后将镜像里除 install.wim 外的所有文件复制到此分区. 再把上一步生成的几个 swm 文件复制到此分区里代替 install.wim
5、在U盘的剩余空间中创建一个比 Ubuntu 安装镜像稍大的 FAT32 分区. 然后将镜像里所有文件复制到此分区中 (可选). 这样排骨的完美安装盘就制作完成了. 将 Win10 和 Ubuntu 也一起做到 U盘是为了安装多系统时省事, 你也可以用多个 U盘来做. 详细的步骤可参考排骨的旧贴 [终极系统安装盘打造攻略-macOS+win10+ubuntu三合一]
准备 OpenCore 需要的驱动, 补丁和工具上面制作的安装盘很可能无法让你直接进入到 Mac 系统安装界面, 特别是对于排骨现在开荒的这款最新的酷睿十代 Z490 主板而言。
> 下载github.com/acidanthera仓库里的OpenCore-0.5.9-DEBUG.zip)并下载.> 下载并安装 python 3.8.x.> 下载github.com/corpnewt仓库里的SSDTTime,ProperTree,GenSMBIOS.> 下载mackie100projects的OpenCore Configurator.> 将OpenCore-0.5.9-DEBUG.zip中的EFI文件夹复制到 U盘 Win10 安装分区, 放到 Ubuntu 那个分区也行. 这样可以免去挂载 U盘 EFI 分区的麻烦.> 删除EFI\OC\Drivers中的以下文件, 然后添加HFSPlus.efi()。
> 删除EFI\OC\Tools中除OpenShell.efi以外的所有文件. (用来检查CFG Lock状态的VerifyMsrE2.efi可以保留)> 下载并添加 kext 驱动并复制到EFI\OC\Kexts文件夹中, 排骨开荒的这块圣旗 Z490 主板还需要额外添加FakePCIID.kex,FakePCIID_Intel_HDMI_Audio.kext才能出声音。
> 使用ProperTree.bat修改USBInjectAll.kext文件夹下的Info.plist文件 (没错, 苹果的应用程序.app和驱动程序.kext都是文件夹). 在Root\IOKitPersonalities\ConfigurationData\Configuration节点下找到8086_a36d, 将它改名为XHC并保存。
> 从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 的配置文件。> 将OpenCore-0.5.9-DEBUG.zip中的Docs\Sample.plist文件复制到EFI\OC文件夹并改名为config.plist。> 运行ProperTree.bat来打开config.plist文件。> 在ProperTree的File菜单里选择OC Clean Snapshot, 然后选中EFI\OC文件夹. 这样上面整理好的efi和kext文件就都引用到 OpenCore 的配置文件config.plist里了。> 按下图设置好Booter的Quirks. 如果开机 log 报错, 可以试尝着改变RebuildAppleMemoryMap和SetupVirtualMap的值。
> 按下图设置好Kernel的Quirks. 其中的AppleCpuPmCfgLock和AppleXcpmCfgLock只有在主板BIOS的CFG Lock启用而又没有选项让你关闭时才需要打开 (可在开机时选择VerifyMsrE2来检查主板BIOS的CFG Lock状态).DisableIoMapper打开就可以忽略VT-d了.XhciPortLimit在定制好 USB 端口之后关掉。
> 按下图设置好Misc的Debug和Security节点.Debug下面的几个设置都是用来生成调试信息和错误信息的, 这部分的改动对安装和配置黑苹果系统没有影响, 可以不动.AllowNvramReset会在OpenCore启动菜单中添加Reset NVRAM选项,AllowSetDefault可以让你修改OpenCore启动菜单的默认选择项 (按 Ctrl+Enter). 最后两个选项是屏蔽和降低 MacOS 的安装检查功能, 减少黑苹果的出错率。
> 按下图设置好NVRAM.UIScale设置为 2 可以启用 HiDPI, 避免 OpenCore 启动时超高分屏显示器显示内容太小.boot-args是 OpenCore 的启动参数, 上图参数表示显示全部启动信息, 方便进不了系统的同学拍照上线求助.prev-lang:kdb初始语言设置, 默认是俄语, 改成en-US:0就是英语了。
> 使用前面下载的GenSMBIOS来生成黑苹果的硬件注册信息. 运行GenSMBIOS.bat再选3. Generate SMBIOS。
然后输入iMac19,1(注意大小写和逗号) 就能生成一套 SMBIOS 信息了。
如果你想激活 iMessage/FaceTime 等功能, 就像去checkcoverage.apple.com检查你生成的Serial是否存在, 如果不存在就能用来激活 iMessage/FaceTime, 类似黑群晖洗白操作. 如果是这个串号已经存在, 表示同串号的苹果电脑别人已经在使用, 会有一些安全问题. 如下图就是排骨试出来的一个美国马凯特大学里的苹果电脑串号, 联网后会自动加入托管证书, 获取包含清空你电脑在内的各种权限~ 怕不怕。
> 按下图设置好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 ...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值。
CPU Names F8JC-en-CN_CN iMac (Shengqi Z490-PRO GAMING)
使用无核显 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 注册表了 。