情况一:
先上两张错误的截图
-V进mac不滚代码直接卡++加号或者加号下几行代码Error allocating 0x11c8d pages at.....卡住解决方案
解决方案
首先需要bios关闭CFG-Lock,进入引导/EFI/ClOVER/drivers/UEFI文件夹下
- OsxAptioFix3Drv-64.efi
- OsxAptioFix2Drv-64.efi
- OsxAptioFixDrv-64.efi
- AptioMemoryFix.efi
- AptioMemoryFix-64.efi
- OsxAptioFixDrv-64.efi + Test2-2016.efi 组合
- OsxAptioFix2Drv-free2000.efi
- AptioMemoryFix.efi + MemoryAllocation.efi 组合
以上驱动除非标注,否则不能同时使用,其他未标注驱动只能使用其中一个,分别尝试放入以上驱动依次测试是否解决这个问题。例如 AptioMemoryFix.efi 可以和 MemoryAllocation.efi 一起使用也可单独分别使用
方式一:Aptionmemoryfix.efi为 Osxaptionfix*.efi 一次一个 ,Osc aptionxxx.efi 300主板用, OsxAptioFix2Drv-free2000.efi。并且设置slide=0(clover界面按O,在启动参数那回车,填写后再回车)
方式二:将drivers64UEFI下的OsxAptioFixDrv-64.efi删除,再将OsxAptioFix2Drv-64.efi放入drivers64UEFI即可!
情况二:
情况二主要是从clover版本5017之后安装10.15.4版本遇到的比较多卡+++++++++加号(如下图)
ERROR!!! Uncompress prelinked kernel
ERROR!!! Load prelinked kernel with status 0x800000000000007
Error loading kernel cache (0x7)
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
解决方案一
针对情况二图中的这个情况,我专门配置了一份EFI引导,但不保证所有情况都能用,我自己测试可以解决卡+++++加号的问题,但是该引导只能助你顺利的通过卡++++++加号的这一步,剩下的驱动也好,安装问题也罢,还是要自己搞定
EFI引导下载地址
解决方二
1.文件介绍
Clover 自 r5120 版开始已经正式整合了 OcQuirks.efi,替换了其它内存修复程序。本解决方案供还未升级或不想升级的用户参考。
OcQuirks
EFI驱动程序依赖于OpenRuntime.efi
,并且必须将它们一起安装在CLOVER
EFI驱动程序目录中。可以在发行版zip中找到OpenRuntime.efi
,它与OcQuirks
一起构建。
2.使用说明
要安装OcQuirks
,请下载最新版本或按照以下说明进行构建,然后将其安装到EFI中,以替换任何现有的内存修复驱动程序。
- 挂载您的EFI分区。
- 将您的EFI卷备份到可启动的USB驱动器中,并验证它是否可以工作。
- 从EFI卷上的
Clover
驱动程序文件夹中删除AptioMemoryFix
和所有OsxAptioFix
开头的驱动。 - 将
OcQuirks.efi
,OpenRuntime.efi
和OcQuirks.plist
添加到EFI卷上的Clover/drivers/UEFI
文件夹中(如下为文件夹结构)。
EFI
└── CLOVER
└── drivers
└──UEFI
├──ApfsDriverLoader.efi
├──HfsPlus.efi
├──......
├──OpenRuntime.efi
├──OcQuirks.efi
├──OcQuirks.plist
├──......
└──VirtualSmc.efi
- 完成后重启。
如果您的系统无法启动,请使用U盘重新启动到macOS并通过相反的过程进行还原。检查以下参数,并使用与您的系统更匹配的参数配置OcQuirks.plist
。
默认设置基于AptioMemoryFix
,并且在设计时考虑了新的Intel系统。您的系统可能需要自定义设置(例如Z390可能需要DevirtualiseMmio
+ ProtectUefiServices
,较旧的100-200系列可能需要``EnableWriteUnprotector)。还假定所有
slide值都是有效的(不需要注入
slide=xxx` )。
3.OcQuirks.plist配置参数说明
通过将OcQuirks.plist
放到Clover/drivers/UEFI
文件夹中,可以更改下面列出的参数。可以在发行zip或OcQuirks存储库的根目录中找到。如果未找到plist,则使用以下默认值。
OcQuirks | 默认值 | 描 述 |
---|---|---|
AvoidRuntimeDefrag | True | 开启后会修复 UEFI 的运行服务, 例如日期, 时间, NVRAM, 电源控制等 |
DevirtualiseMmio | False | 开启后会减少 Stolen 内存占用空间,扩大 Slide = N 值的范围, 适用于大多数主板 |
DisableSingleUser | False | 开启后会禁止 Cmd + S 和 -s 的使用,使设备更加接近于 T2 白苹果 |
DisableVariableWrite | False | 开启后会禁止 NVRAM 写入, 在 Z390/HM370 等没有原生 macOS 支持 NVRAM 的主板上需要开启 |
DiscardHibernateMap | False | 开启后会重用原始休眠内存映射,仅某些旧硬件需要 |
EnableSafeModeSlide | True | 开启后会允许在安全模式下使用 Slide 值 |
EnableWriteUnprotector | False | 开启后会在执行期间删除 CR0 寄存器中的写入保护 |
ForceExitBootServices | True | 开启后会确保 ExitBootServices 即使在 MemoryMap 发生更改时也能调用成功, 除非有必要, 否则请勿使用 |
MmioWhitelist | Array | 设计为用plist dict值填充,描述使用DevirtualiseMmio quirk时对特定固件功能至关重要的地址。 |
ProtectMemoryRegions | False | 开启后会用于修复人为制造和睡眠唤醒的问题, AvoidRuntimeDefrag 已经修复了这个问题所以请尽可能避免使用这个 Quirk |
ProtectSecureBoot | False | 避免操作系统对 UEFI 安全启动变量 (db , dbx , PX , KEK ) 进行写入, 这个选项主要用于避免 Insyde 主板和 MacPro5,1 的 NVRAM 问题 |
ProtectUefiServices | False | 保护UEFI服务不被固件覆盖。 |
ProvideConsoleGopEnable | True | 如果控制台句柄中缺少图形输出协议,请安装。 |
ProvideCustomSlide | True | 如果 Slide 值存在冲突, 此选项将强制 macOS 执行以下操作:使用一个伪随机值。只有在遇到 Only N/256 slide values are usable! 时需要 |
RebuildAppleMemoryMap | True | 生成与macOS兼容的内存映射。 |
SetupVirtualMap | True | 开启后会将 SetVirtualAddresses 调用修复为虚拟地址 |
SignalAppleOS | False | 通过 OS Info 将 macOS 加载的信息报告给其它操作系统, 用于在 Windows 中为 MacBook 启用 iGPU |
SyncRuntimePermissions | True | 同步运行时环境的内存权限。 |
有关 OcQuirks
的更详细说明,请查阅《OpenCore配置手册》。
OcQuirks
下载链接:
关于clover 5120引导卡+++一般是内存问题,clover 5120的新内存文件在drivers\off\OpenRuntime.efi和OcQuirks.efi替换掉UEFI里的内存文件OsxAptioFix3Drv.efi或AptioMemoryFix.efi等等,在clover 5120 中,OcQuirks.plist已经合并在config中
评论89