前言

众多黑苹果驱动的作者已经停止对Clover的兼容支持,改向Opencore的兼容。所以也许在未来的某一天,Clover就越来越难用了。提前了解了解OpenCore,还是很有必要的。但是OpenCore毕竟没有Clover成熟,同样也没有很好用的可视化编辑器(OpenCore Configurator会导致config出错,慎用),fix的选项也没有,对hotpatch的要求就高了。经过一周的摸索,总结一些OC的坑,帮助以后的朋友少走一些弯路。

系统10.15.1→10.15.3自动更新顺利。之后升级OpenCore版本出现问题,0.5.2→0.5.5,卡驱动。找到问题后在文章中增加版本更新方法,需要可以研究一下。

我的配置

雷 神 G170P 笔 记 本,蓝 天(CLEVO)P170SMA模 具

CPU:Core i7-4710MQ 2.50GHz

主 板:CLEVO P17SM-A

硬 盘:威刚SSD 256GB

内 存:16 GB ( 威 刚 DDR3L 1600MHz )

显 卡:Nvidia GTX970M(DSDT屏蔽) Intel HD4600

有 线 网 卡:瑞 昱 RTL8168/8111/8112

无 线 网 卡:博通BCM94352HMB(原 装intel网 卡,无 解)

声 卡:Realtek ALC892

目录

一.准备工作

二.调试Config.plist

三.调试驱动

四.OpenCore更新

一、准备工作

准备工作分为以下几步:

①.在Clover引导下,正常运行macOS系统

②.BIOS设置

③.下载最新的OpenCore

④.安装Xcode或使用ProperTree

⑤.efi基础驱动

⑥.U盘或硬盘建立引导分区

⑦.确认电脑是否支持原生NVRAM

① 至少要先用Clover安装系统,并能够正常进入macOS系统,这样能测试OC能方便很多。如果零基础从OC直接安装系统,难度比较大。对于已经配置好Clover的,则需要精简EFI,把不必要的驱动,dsdt和ssdt删除。防止OC使用过程中不兼容导致的问题。

② BIOS设置

禁用

| Fast Boot |             | 快速启动 |

| CFG Lock |             | CFG锁 |

| VT-d |                     | Hyper Threading |

| CSM |                     | 兼容性支持模块 |

启用

| VT-x |                                | VT-x |

| Above 4G decoding |      | 大于4G地址空间解码 |

| Hyper Threading |           | 超线程|

| Execute Disable Bit |       | 执行禁止位 |

| EHCI/XHCI Hand-off |     | 接手EHCI/XHCI控制 |

|OS type:Windows 8.1/10|     |操作系统类型Windows8.1/10|

③ 下载最新的OpenCore

OpenCore-Releases:https://github.com/williambj1/OpenCore-Factory/releases

官方发布页下载的文件包里的Docs文件夹内的samplefull.plist改名为config.plist作为基础配置自己的OC。

④ 对于OC中Config.plist,Xcode是最好的选择。其次是ProperTree。

Plist Editor Pro会破坏结构,不能转换Base64.

OpenCore Configurator目前更新速度落后于OpenCore,因此会导致Config的损坏

⑤ efi基础驱动

ApfsDriverLoader.efi 或 Apfs.efi      识别APFS分区

FwRuntimeServices.efi     用来替换AptioMemoryFix.efi

UsbKbDxe.efi     OC内置驱动不工作,可以提供Apple热键和FileVault的支持。卡OC引导界面,可以删除

VirtualSMC.efi     配合VirtualSMC.kext使用,不能和FakeSMC.kext同时使用。

VBoxHfs.efi 或 HFSPlus.efi     识别HFS分区,对于不能进入Recovery,需要使用HFSPlus.efi

EmuVariableRuntimeDxe.efi     模拟NVRAM,对于没有原生NVRAM,需要此驱动(该驱动已和最新的FwRuntimeServices.efi合并,建议使用最新驱动)

将需要的驱动,放置在EFI——OC——Drivers中,同时在Config.plist——UEFI——Drivers添加efi驱动名

⑥ 使用硬盘工具新建一个esp(Fat16)新分区,空间不低于200MB来存放。U盘或硬盘分区都可以。我是在Windows中使用DiskGenius分的区。

⑦确认电脑是否支持原生NVRAM

打开终端输入:sudo nvram TestVar=HelloWorld然后输入密码

重启系统后输入:sudo nvram -p | grep 'TestVar'

如果显示:TestVar HelloWorld

说明原生支持NVRAM

二、调试Config.plist

OC的Config.plist与Clover的Config.plist结构有很大的不同,因此不能通用。整体结构以及说明参考黑果小兵:精解OpenCore和XJN`S BLOG:使用OpenCore引导黑苹果,以下主要说明容易出现的问题。OC中的config.plist是由Docs文件夹内的samplefull.plist改名而来。

①Misc—security—requiresignature—NO

防止出现报错:OC:configuration signed vault but no public key provided

②misc—security—requirevault—NO

防止出现报错:OC:configuration requires vault but no vault procided

③可以删除 #WARNING - 1 和 #WARNING - 2等

④Booter—Quirks—DisableVariableWrite—NO

禁止NVRAM写入,没有原生macOS支持NVRAM需要开启

⑤DeviceProperties—Add可以加入设备硬件地址以及补丁

可以使用Hackintool应用补丁生成设备硬件代码驱动硬件

例如:核显驱动、核显缓冲帧、EDID注入,声卡LayoutID注入、读卡器等等

注意:这里使用的代码与Clover的Config.plist中的Devices—Properties的代码通用

⑥OC上所有的kext、.efi驱动、.aml补丁都需要填入config.plist,并且都有加载顺序,有依赖的驱动要放在所依赖的驱动之后。

注意:Kernel—Add  按加载顺序加入kext名称

ACPI—Add  按加载顺序加入.aml名称

UEFI—Drivers  按加载顺序加入.efi驱动名称

⑦Kernel—Quirks—XhciPortLimit: YES

USB的15个端口限制补丁,建议定制USB后关闭该选项

⑧Misc—Boot—ShowPicker: YES

显示OpenCore的UI,可选引导项。

⑨NVRAM—LegacyEnable: NO

允许将 NVRAM 存储在 nvram.plist 中, 没有原生 NVRAM 的设备必须开启

⑩NVRAM—7C436110-AB2A-4BBB-A880-FE41995C9F82—csr-active-config: bytes = 0xe7030000 - SIP 完全关闭

⑪设置默认语言为中文,在NVRAM—7C436110-AB2A-4BBB-A880-FE41995C9F82—prev-lang:kbd中填入<7a682d48 616e733a 323532>(需要NVRAM支持,不支持原生NVRAM或者没弄好模拟NVRAM不生效)

⑫Misc—Security—AllowNvramReset:YES

在OC引导界面显示 Reset NVRAM选项

注意:如果用Clover启动过系统后,再用OpenCore启动系统,需要执行Reset NVRAM来清除NVRAM。清除NVRAM,会清除BIOS自定义引导项名称。

⑬Misc—Security—ScanPolicy:0

在OC引导界面显示所有可用硬盘

定义:

(01)0x00000001 — 限定为文件系统,由以下允许扫描文件系统子项开启

(02)0x00000002 — 限定为设备类型,由以下允许扫描设备类型子项开启

​ 允许扫描文件系统子项:

(03)0x00000100 — 允许扫描APFS文件系统

(04)0x00000200 — 允许扫描HFS文件系统

(05)0x00000400 — 允许扫描EFI系统分区文件系统

​ 允许扫描设备类型子项:

(06)0x00010000 — 允许扫描SATA设备

(07)0x00020000 — 允许扫描SAS和Mac NVMe设备

(08)0x00040000 — 允许扫描SCSI设备

(09)0x00080000 — 允许扫描NVMe设备

(10)0x00100000 — 允许扫描CD / DVD设备

(11)0x00200000 — 允许扫描USB设备

(12)0x00400000 — 允许扫描FireWire设备

(13)0x00800000 — 允许扫描读卡器设备

扫描策略数值=(01)+(02)+1个或数个允许扫描文件系统子项+1个或数个允许扫描设备类型子项

例如:希望扫描对象是APFS文件系统的USB设备,扫描策略数值=(01)+(02)+(03)+(11),经16进制加法计算得出,扫描策略数值=0x200103。

注意,使用时需将16进制转换为10进制。示例最终扫描策略数值=2097411

⑭ACPI—Patch放入dsdt、ssdt补丁

Kernel—Patch放入kext补丁

⑮PlatformInfo中直接删除Datahub,PlatfromNVRAM,SMBIOS这三项,无需填写。

⑯IgnoreInvalidFlexRatio: YES

(在 BIOS 中无法禁用 MSR_FLEX_RATIO(0x194) ,或OpenCore卡引导项时开启)

注意:部分OpenCore卡引导项,是由于UsbKbDxe.efi与键盘不兼容导致的,删除UsbKbDxe.efi即可

三、调试驱动

以我自身的驱动来说明

驱动目录

①建议使用VirtualSMC.kext,因为需要与Drivers中的VirtualSMC.efi配合

②建议定制USB驱动,如自定义的USBInjectAll.kext、USBPorts.Kext、或加载SSDT-UIAC

③建议定制声卡驱动,虽然万能声卡驱动也支持OC

④VoodooPS2Controller.kext与ApplePS2SmartTouchPad.kext中存在插件kext,在Config.plist中Kernel—Add分别加入

⑤.kext中没有驱动,只有info.plist的,Kernel—Add加入info.plist的path,不必加入kext的path。

⑥建议核显驱动使用Hackintool应用补丁生成核显代码、相关补丁以及EDID的注入,防止添加过多kext影响兼容性,同时定义CPU接口,方便加载HDMI视频音频

HD4600核显

四、OpenCore版本更新

写这篇文章时我的系统版本是10.15.1,OC是0.5.2。之后更新为10.15.3和0.5.5。

更新OpenCore版本需要注意以下四点:

①做好原有EFI的备份,config.plist—NVRAM—Add—7C4361......—boot-args中添加-v,更新时出错,可以及时发现问题

②下载最新OpenCore,替换原有EFI中的Bootx64.efi和OpenCore.efi

③最新OpenCore—Drivers找到需要的驱动,对原有EFI中的Drivers驱动进行替换

注:在0.5.5后Divers最新驱动已经合并到最新的OpenCore中

④查看最新OpenCore—Docs—SampleFull.plist中是否有更新,如有更新可以查看作者的说明进行修改,没有则直接使用之前的config.plist

持续更新中

opencore 启动总是在win_黑苹果OpenCore引导总结相关推荐

  1. opencore 启动总是在win_单双硬盘装Windows/Mac双系统用OpenCore引导菜单添加Windows引导项...

    本教程基于你的OpenCore引导已经能正常进Mac黑苹果系统,如果你的系统还不能正常进入黑苹果Mac系统,请参照此篇文章设置http://imacos.top/2020/04/04/1616/ Op ...

  2. opencore 启动总是在win_刷黑苹果之后无法进入BIOS设置opencore

    子方有话 子方的配置是是华硕B450MK+AMD R5 2600+GT710,在完成子方黑苹果系统的安装后,子方把引导转到了硬盘.没几次后,子方发现无法进入BIOS设置.不过可以通过F8键进入启动设置 ...

  3. OpenCore Gen-X :一键制作黑苹果OpenCore EFI文件

    OpenCore Gen-X 是mac上一款黑苹果OC引导配置制作小工具,可以一键制作黑苹果OpenCore EFI文件,不过该 app 需要 macOS 环境才能运行,没有的用户可以先使用虚拟机安装 ...

  4. OpenCore Configurator for Mac(黑苹果系统引导工具)

    OpenCore Configurator for Mac是一款黑苹果系统引导工具,OpenCore Configurator 可以通过提供更加通用和模块化的系统来解Clover带来的限制和问题,拦截 ...

  5. 联想小新Lenovo ideapad 700 – i7 6700HQ+GTX950M+HD530+ALC235 黑苹果OpenCore 引导安装Ventura13.2

    原文来源于黑果魏叔官网,转载需注明出处.(下载请直接百度黑果魏叔) 硬件型号驱动情况 主板联想 ideapad 700-15ISK ( 英特尔 PC 标准主机 CPU 桥 – 100 Series/C ...

  6. 黑苹果EFI引导启动文件,华硕X99 Deluxe+E5-1660v3+蓝宝石 RX 580 8G+macos10.14.x(7)

    黑苹果EFI引导启动文件,华硕X99 Deluxe+E5-1660v3+蓝宝石 RX 580 8G+macos10.14.x 下载地址:点击此处

  7. 一款黑苹果系统引导工具,系统来解Clover带来的限制和问题

    OpenCore Configurator for Mac是一款黑苹果系统引导工具,OpenCore Configurator 可以通过提供更加通用和模块化的系统来解Clover带来的限制和问题,拦截 ...

  8. XiaoMi-Ruby-15.6-UMA-only黑苹果efi引导文件

    电脑配置 规格 详细信息 电脑型号 小米笔记本Ruby15.6"2019款独显款(UHD 620+MX 110) 处理器 Intel(R)Core(TM)i5-8250U 内存 SK hyn ...

  9. 黑苹果OC引导 多彩绚丽霓虹 主题及安装教程

    本期给大家分享一款充满活力多姿多彩的主题,背景图纯黑,因此适合各分辨率下使用,如果喜欢可自行添加或制作好看的背景图替换(背景图建议高斯模糊处理). 主题背景纯黑,各个分辨率的显示器均能使用,但高分辨率 ...

最新文章

  1. 【Spark Summit East 2017】Spark与在线分析
  2. img元素高度多出来的几像素
  3. 【kernel 中内存分配那点事】
  4. 高等数学入门教程 — 极限
  5. c++学习笔记之运算符重载
  6. < meta name=“viewport“ content=“width=device-width, initial-scale=1.0“>的解释
  7. (78)FPGA内部资源与FPGA开发流程-面试必问(二)(第16天)
  8. SonicWall 防火墙曝严重漏洞,有些设备仍无补丁
  9. MacOS怎样启用悬停文本功能的具体操作方法!
  10. 洛谷 P2048 BZOJ 2006 [NOI2010]超级钢琴
  11. Eclipse创建并运行Java程序输出Hello World
  12. 大一线性代数知识点总结
  13. 国际h2真假u盘测试软件,u盘速度测试软件H2TEST
  14. Idea的JShell Console
  15. 《超越自卑的活法Live》内容整理
  16. 怎样选择(FC-SAN)光纤通道(存储)交换机
  17. Flask 上传自定义头像_1 使用Flask Uploads
  18. 收集到特拉斯的《引力的动态理论》之中的几句话
  19. 我对计算机的看法英语作文,我对创新的看法英语作文7篇作文
  20. destoon调用内容从第几篇开始

热门文章

  1. dma_alloc_coherent 申请内存用法和问题总结
  2. 浏览器导出ssl证书导入jdk
  3. 自己修好了乐视电视!
  4. Cell Reports:青年发育过程中脑血流与功能磁共振ALFF耦合
  5. 留存/复购cohort
  6. 大白菜U盘装系统工具,被爆出病毒!
  7. 个人项目(二)-- 自助点餐系统
  8. 用Java 开发 WebService Axis简单实例
  9. 即将拉开序幕!武汉市人工智能领域技术成果征集内容、范围和相关要求
  10. Excel2016工作表解除密码保护