# 我的电脑配置
硬件类型 | 硬件型号 |
---|---|
处理器 | AMD Ryzen 5 3600 6-Core 六核 |
主板 | 微星 B450M MORTAR MAX(MS-7B89) |
内存 | 16GB 海盗船 DDR4 3200MHz |
主硬盘 | SATA 英特尔 ssd 240GB |
显卡 | AMD Radeon RX 5600XT (蓝宝石) |
声卡 | 瑞昱 ALC892 @ AMD High Definition Audio 控制出去 |
网卡 | 瑞昱 RTL8168/8111/8112 Gigabit Ethernet Controller / 微星 |
# 说明
大部分基本安装教程我都是跟着官方提供的教程走的。
注意
官方教程网址访问是需要 科学上网,这点对国内有点泪目了。
为了更快浏览文档,我将官网文档做了一份镜像在 gitee。终于可以流畅访问了。😭
重要事情说三遍!
跟着教程走!跟着教程走!跟着教程走!
可以解决 90% 的问题。
# 安装准备环境
- macOS 操作系统: 因为我有台 MacBook, 我就直接在 macOS 系统上操作。
- terminal 终端使用基础,掌握基本命令使用。
- 其他操作系统请查看官方文档对应教程。
# 引导方式
我使用的是目前最新的 opencore 0.6.0 版本。
可以直接去 GitHub Release 下载对应版本。
# U 盘 引导安装
在 macOS 系统上制作 U 盘引导 如下:
# 下载操作系统
强大网友已经开发好了下载工具,可以通过下面的脚本进行下载 macOS
下载 gibMacOS 后,进入文件夹执行 ./gibMacOS.command
选择需要下载的系统版本:
# 制作 macOS 安装 app
执行 gibMacOS 文件夹里面命令 BuildmacOSInstallApp.command
用于生成安装镜像。
输入下载的 macOS 系统绝对路径回车,如图
执行完成后系统目录会多出一个安装程序。
# U 盘格式化处理
通过 macOS 工具 Disk Utility
对 U 盘进行格式化处理。
- 注意: 默认情况下磁盘工具只显示分区,通过快捷键
CMD/Win + 2
显示所有设备,对 U 盘设备进行格式化处理
# 开始制作 U 盘系统引导
通过终端执行createinstallmedia
指定 u 盘进行刻录操作
sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume
- 注意:
/Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia
路径是上一步制作安装 app 产物,createinstallmedia
命令在安装 app 里面找到。
执行命令后开始等待制作完成。
# 制作 EFI 引导文件
挂在 U 盘 EFI 分区:
- 查看 U 盘的 EFI 分区信息, 简单根据分区空间判断那张是 U 盘
diskutil list
- 挂在 EFI 分区
我这里是 /dev/disk2s1
sudo diskutil mount /dev/disk2s1
此时 U 盘 EFI 分区内容应该是空的。接下来就是引导文件制作了。
# 添加基本 opencore 文件
下载 opencore 文件解压拷贝 EFI 目录到 EFI 分区里面:
注意要整个 EFI 文件夹拷贝进去。
版本说明:
DEBUG
:调试版本,这个版本提供更详细信息帮助发现问题,引导速度会相对慢一点。U 盘建议用这个版本,方便发现处理各种问题。RELEASE
:发行版,更快速的引导时间,但是实际上 OpenCore 中没有提供有用的调试信息,这使得故障排除更加困难。系统安装完成后,基于主机引导可以配置这个,意味着我们已经解决了大部分问题并正常启动系统。
注意
Windows 用户安装可以跳过这步了,因为前面制作 u 盘在 window 上面通过脚本帮你处理好了。
# 移除不必要的一些驱动文件
如图,保留红框文件,其他文件可以删除。具体说明可以看官网文档说明。
注意
这些都是 opencore 引导必备文件!
下一步收集相关 ACPI、KEXT、固件驱动等
# 收集固件、驱动
# UEFI 固件驱动
必须放在 EFI/OC/Drivers/
用于查看 HFS 卷(即 macOS 安装程序和恢复分区/映像)所需。 请勿混用其他 HFS 驱动程序
# Kexts
必须放在 EFI/OC/Kexts/
# 必须要有
VirtualSMC 插件
# 显卡驱动
AMD 显卡驱动就要靠玩意了!
# 声卡驱动
我的 AMD 系列声卡麦克风不支持,前置面板耳机接口无法使用。
# 网卡驱动
瑞昱网卡驱动
# 其他驱动
用于修复非 apple NVMe 上的电源管理和初始化,如果 m2 口的 ssd 需要加上。
# SSDTs
修复 EC 问题,具体说明请看Fixing Embedded Controller
# 重头戏:config.plist 配置
建议用 opencore configuration(简称 OCC) 配置工具。
作者更新频繁,bug 什么修复及时,内置各种默认添加配置。
无脑式修改什么的最舒服了!
将 opencore 包里面 Docs/Sample.plist
放在 EFI/OC/
目录下,文件名改为 config.plist
# ACPI
配置如图: 记得勾选启用
# Booter
Quirks 启用如图:
# DeviceProperties
声卡 ID ,核心显卡驱动显示等可以在这里注入修改。
- 声卡 ID 注入我直接在引导参数添加了,这里就没有。
- AMD 3600 没有核心显卡
# Kernel 内核设置
kext 直接拖拽到这里配置,或者点击浏览加载。注意加载顺序。
Lilu.kext
和VirtualSMC.kext
必须放在前面。AMDRyzenCPUPowerManagement.kext
必须放在SMCAMDProcessor.kext
前面- Quirks 都是根据官方文档说明点的。
AMD CPU 补丁
可以通过编辑器批量修改。当然可以通过 OCC 一个个添加。具体就不说了,可以看官方文档说明
官网补丁下载位置: kernel patches
# Misc 配置
其他配置保持默认,修改项如下:
- Debug 项
Quirk | Enabled |
---|---|
AppleDebug | YES |
ApplePanic | YES |
DisableWatchDog | YES |
Target | 67 |
- Security
Quirk | Enabled |
---|---|
AllowNvramReset | YES |
AllowSetDefault | YES |
Vault | Optional |
ScanPolicy | 0 |
# NVRAM
添加
4D1EDE05-38C7-4A6A-9CC6-4BCCA8B38C14
7C436110-AB2A-4BBB-A880-FE41995C9F82
我的配置 boot-args 是
agdpmod=pikera keepsyms=1 debug=0x100 alcid=1
boot-args 有关配置如下:
boot-args description -v 输出详细系统加载日志信息,方便排查,u 盘引导建议加上这个参数 debug=0x100 调试用 keepsyms=1 和 debug=0x100 一起使用,内核奔溃时候输出有用信息,方便排查 npci=0x2000 看不懂啥意思,只要注意一点就行。如果主板 BIOS 设置开启了 Above4GDecoding ,这个参数不用添加。否则冲突 alcid=1 声卡注入 ID,alc892 我测试了所有 ID,事实证明只有 1 效果是最好的 agdpmod=pikera AMD 显卡黑屏修复 nvda_drv_vrl=1 英伟达显卡驱动
- 开启 WriteFlash
# PlatformInfo 平台信息
主要添加苹果产品类型、序列号,ID 等
通过命令生成 GenSMBIOS
- iMacPro1,1: AMD RX Polaris and newer
- MacPro7,1: AMD RX Polaris and newer(Note that MacPro7,1 is also a Catalina exclusive)
这里使用 iMacPro1,1
#######################################################
# iMacPro1,1 SMBIOS Info #
#######################################################
Type: iMacPro1,1
Serial: C02YX0TZHX87
Board Serial: C029269024NJG36CB
SmUUID: DEA17B2D-2F9F-4955-B266-A74C47678AD3
- ROM:添加网卡的 mac 地址的值。(注意,可以用一个伪装的 MAC 地址值,这里我用的是自己网卡的)
# UEFI
- 驱动
添加:HfsPlus.efi
和 OpenRuntime.efi
# B450M 主板 BIOS 配置
# 关闭选项
- 快速启动(Fast Boot)
- 安全启动(Secure Port)
- 串行端口(Serial/COM Port)
- 并行端口(Parallel Port)
- CSM 兼容模式(比如改成 UEFI, 我这里是用 UEFI 引导)
# 开启选项
- Above 4G decoding(注意 NVRAM 配置启动参数,如果添加了 npci,这里需要关闭)
- EHCI/XHCI Hand-off
- Windows 8.1/10 UEFI Mode
- SATA Mode: AHCI
最后
接下来就是插入 U 盘到主机,开机按 F11 可以选择 U 盘引导
# 注意事项
- EFI 配置变更
需要引导使用 Reset NVRAM
,否则可能会用旧的配置引导。保守点就是每次 EFI 文件变成都执行一下 Reset NVRAM
- 如果遇到引导跑完代码后显示器黑屏
但是屏幕看起来是亮的?电源指示灯正常的? 不妨看看显示器是否多个接口,没切换到正确的?(我就被坑到了。。)
# 最后
不得不说 OpenCore 官方文档是真的全面呀,想想之前用 clover 熬夜试错那真是老泪众横。爱了爱了
献上我的 EFI 文件: