来源头条作者:黑果魏叔
黑苹果安装
安装黑苹果按照我本站的安装教程所说顺利的情况会直接安装成功,如果是不幸遇到卡代码情况就比较麻烦了,本篇内容为大家提供各种已知的卡代码的解决方案。
本篇文章非入门级文章,着重讲解使用
OpenCore
做引导的时候遇到的卡代码问题,为你提供解决方案,但不保证100%适合你,因为每个人的机型配置引导都不一样。
下面正式为大家介绍各个代码的解决方法。
一、OC:configuration requires vault but no vault procide
(如下图)
解决方案:
Misc-其他设置Security
下
—Vault
设置成
Optional
新的
OC config
中
Vault
属性代替
RequireSignature
和
RequireVault
如果你的是老版本还有
RequireSignature
和
RequireVault
请把这两项设置为
False
禁用
二、OCS: No schema for xxxxx at xx index!
(如下图)
解决方案:
使用
ProperTree.app
或者
Xcode.app
打开
config.plist
配置文件,找到
for xxxxx at
中间的
xxxxx
名称。直接删除即可。
三、OCB:OcScanForBootEntries failure – Not Found Halting on critical error
(如下图)
解决方案:
config.plist
->
Misc
->
Security
->
ScanPolicy
->
0
四、This version of Mac OS X is not supported on this platform
(如下图)
解决方案:
一般这个问题是属于机型不支持当前系统版本,出现这个问题一般都是启动参数为:“
-v keepsyms=1
“
启动参数改为:“
debug=0x100 npci=0x2000 agdpmod=pikera
”
修改一下模拟机型的设置,直接选择和自己处理器想尽的配置即可。
五、[EB|`B:WFDW] Err(0xE)
(如下图)
解决方案:
config.plist
->
UEFI
->
Quirks
->
IgnoreInvalidFlexRatio
->
True/YES
如果第一步已经启用了还是卡这里那么就启用
config.plist
->
Kernel
->
Quirks
->
AppleCpuPmCfgLock/AppleXcpmCfgLock
->
True/YES
如果上面两个步骤都设置了还没有解决,那么就检查
BIOS
设置
CFG Lock
(MSR 0xE2 write protection)~CFG锁(MSR 0xE2写保护)(必须关闭,如果此项有,部分机型即使在
Kernel-> Quirks
下启用它,依然还是会卡上图的地方)
最后一个方法就是
config.plist
->
Booter
->
Quirks
->
SetupVirtualMap
把此项禁用关闭。
六、** In Memory Panic Stackshot Succeeded
(如下图)
解决方案:
如果你是卡在上图的这个界面或者是到这里就重启的情况,那么你可以通过以下办法去解决。
更新驱动,更新之后再配置一下
config.plist
如果排除了以上1的情况,则设置
config.plist
->
Kernel
->
Quirks
->
AppleCpuPmCfgLock/AppleXcpmCfgLock
->
True/YES
在
config.plist
添加阻止补丁 ->
DeviceProperties
->
Block
->
PciRoot(0x0)/Pci(0x1b,0x0)
->
MaximumBootBeepVolume
如果上面方法不能解决这个问题,可能是
kext
驱动加载问题,建议把
kext
必备驱动以外的都删除掉。
七、0C: Driver xxxxxxxx.efi at 3 cannot be started Already star ted! Halting on critical error
(如下图)
解决方案:
图片中都提示是
AptioMemoryFix.efi
找到你对应的
xxxxxx.efi
删除即可
八、0C: Hatt\’ing on critical error
(如下图)
解决方案:
卡在上图这个界面,就是
VoodooPS2Controller .kext
的问题,最简单的方式就是删除
xxxxxxxx .kext
驱动,以及删除
config.plist
配置
xxxxxxxx.kext
驱动即可
九、AppleIntelCPUPowerManagement :Turbo Ratios 0079
(如下图)
解决方案:
上面两张图卡代码的情况都不一样,但是解决方式还是相同的所以放在一块讲,具体解决方法请看下面。
缺少
SSDT-EC
补丁:对于桌面级电脑,请确保在
EFI
/
OC
/
ACPI
和
config.plist/ACPI
中都具有
SSDT-EC
->添加,再次检查是否已启用。笔记本电脑用户将需要重新命名他们的主要
EC
名称(例如:
SSDT-EC-USBX
中的
EC
需要修改为
EC0
或
H_EC
)另外,只要是卡在在
PCI
附近,也检测一下其他的
SSDT
补丁,部分电脑加载了与自己电脑兼容不好的
SSDT
补丁也会出现这种情况。
IRQ
冲突:在较旧的笔记本电脑和定制笔记本电脑上最常见,运行
SSDTTime
的
FixHPET
选项,然后将生成的
SSDT-HPET.aml
和
ACPI
补丁添加到您的配置中(没有
ACPI
补丁
SSDT
将无法工作)
PCI
分配问题:更新您的
BISO
确保它是最新的。大多数
OEM
在较旧的固件上的
PCI
分配都非常差,确保在
BISO
中启用了
Above4GDecoding
如果没有可用的选项,则添加到引导
args
。引导参数中未同时启用
Above4G
设置和
npci
它们将发生冲突
npci=0x2000
。其他重要的
BISO
设置:已禁用
CSM
已启用
Windows 8.1 / 10 UEFI 模式\\
十一、卡 no vault provided
解决方案:
如果卡在这个代码上,可以通过将
config.plist
设置为以下来关闭
config.plist
中的文件库:
Misc
->
Security
->
Vault
如果您已经执行了,还是同样错误,你将需要更新使用
Opencore.efi
文件
十二、卡 OC: Invalid Vault mode
解决方案:
这个代码并不是具体的一个错误,可能是拼写错误,你可以在
OpenCore
选项区分
sensitve
所以一定要仔细检查,
Misc
->
Security
十三、卡在EndRandomSeed上
解决方案:
ProvideConsoleGop
可能会丢失,因为这是过渡到下一个屏幕所需的内容,它最初是
AptioMemoryFix
的一部分,但由于此问题现在已在
OpenCore
中。可以在
UEFI
->
Output
下找到
缺少内核补丁程序(仅适用于
AMD CPU
确保它们是
Opencore
补丁而不是
Clover
。
Clover
使用
MatchOS
而
OpenCore
使用
MinKernel
和
Maxkernel
)
IgnoreInvalidFlexRatio
缺失,这对于
Broadwell
和更老的机型是必需的。不适用于
AMD
和
Skylake
或更高版本
AppleXcpmExtraMsrs
可能需要,这通常意味着奔腾
HEDT
和其他少数系统。不要在
AMD
上使用另一个可能的问题是,某些用户忘记了或无法在
BISO
中禁用
CFG-Lock
(特别是与用于电源管理的
0xE2 MSR
锁定位有关,显然更安全的是关闭
CFG-Lock
)。请注意,这仅适用于
Intel
用户,不适用于
AMD
。发生这种情况时,有几个可能的解决方法:固定
CFG
锁 (之后更新方法)启用
AppleXcpmCfgLock
和
AppleCpuPmCfgLock
这将分别禁用
XNU
和
appleintelcpupowermangment
中的
PKG_CST_CNFIG_
控件。不推荐长期解决方案,因为这会导致不稳定。
另一个可能的问题是
IRQ
冲突
Clover
有许多不同的修复程序,无需直接设置它们便可以应用。幸运的是,从四叶草转换为
OpenCore
的过程更加困难,尽管
CorpNewt
也修复了问题。
十四、看不到macOS分区
解决方案;
这个代码咱们主要检查以下内容即可。
ScanPolicy
设置为显示所有驱动器
0
拥有适当的固件驱动程序,例如
ApfsDriverLoader
和
HfsPlus(或VBoxHfs)
如果您正在运行网络恢复安装,则启用
AvoidHighAlloc
十五、用OpenCore引导后黑屏
解决方案:
这个问题主要是由于缺少
ConsoleGOP
请在您的配置下启用它:
UEFI
->
Output
->
ProvideConsoleGOP
如果这没有帮助,用调试版的
OpenCore.efi
和
BOOTx64.efi
并在你的
EFI
取代它们。这将显示有关您的实际卡住位置获得更多信息
OpenCore.efiBOOTx64.efi
十六、OC: OcAppleGenericInput… – Success
解决方案:
这个问题比较特殊,实际上这个不是错误,相反
OpenCore
不会向您显示所有调试信息。这是在内核加载之前/之时,因此我们需要检查以下内容
英特尔:
CFG
锁在
BISO
中禁用或与在内核中启用
AppleCpuPmCfgLock
和
AppleCpuPmCfgLock,Kernel
->
Quirks
验证是否已将正确的内核补丁添加到配置中(记住
OpenCore
补丁使用
MinKernel
和
MaxKernel
而
Clover
使用
MatchOS
)如果这没有帮助,请获取
OpenCore.efi
和
BOOTx64.efi
的调试版本,并在
EFI
中替换它们。这将显示更多的信息,你的实际上是在哪里卡住。
十七、OCB: failed to match a default boot option
解决方案:
与
OCB
相同的修复方法:
OCB: OcScanForBootEntries failure – Not Found
。
OpenCore
找不到任何具有当前扫描策略的驱动器,设置为
0
将允许显示所有启动选项:
Misc
->
Security
->
ScanPolicy
->
0
十八、OCABC: Memory pool allocation failure – Not Found
解决方案:
这是由于不正确的
BISO
设置和/或不正确的引导程序值造成的。确保
config.plist
->
Booter
->
Quirks
正确,并验证您的
BISO
设置:1.启用
4g
以上解码。2.
CSM
已禁用(在某些板上启用
Windows8.1/10WHQL
模式也可以这样做)
十九、OCS: No schema for DSDT, KernelAndKextPatch, RtVariable, SMBISO, SystemParameters
解决方案:
这是因为要么使用一个带有
OpenCore
的
Clover
配置,要么使用一个配置器,比如
Mackie
的
Clover
和
OpenCore
配置器。您需要重新开始并进行新的配置,或者找出需要从配置中移除的所有不需要的项目。
二十、OC: Driver XXX.efi at 0 cannot be found
解决方案:
确认您的
EFI
/
OC
/
Drivers
驱动程序与
config.plist
->
UEFi
->
Drivers
驱动程序匹配
二十一、Buffer Too Small
解决方法:
UEFI
->
Quirks
->
AvoidHighAlloc
->
Enable
在
BISO
中启用
Above4GDecoding
二十二、Plist only kext has CFBundleExecutable key
解决方法:
这是因为缺少或不正确的可执行路径
Executable path
当一个值不应该是实数时,它被设置为实数,通常是
Xcode
意外地转换了
HaltLevel
HaltLevel
2147483648
要修复
real
转为:
realinteger
HaltLevel
2147483648
二十三、OpenCore上选择macOS分区后卡住
解决方法:
CFG Lock not off
(仅限英特尔用户),两个解决方案:修补
MSR E2
(推荐的解决方案)
启用
AppleXcpmCfgLock
和
AppleCpuPmCfgLock
这将在
XNU
和
AppleIntelCPUPowerManagment
中分别禁用
PKG_CST_CNFIG_
控件。不推荐长期解决方案,因为这会导致不稳定。
二十四、无法在OpenCore引导界面选择器中选择任何内容
解决方法:
不兼容的键盘驱动程序:禁用
PollAppleHotKeys
并启用
KeySupport
然后从
config.plist
->
UEFI
->驱动程序中删除
OpenUsbKbDxe
如果上面的方法不起作用,则返回:禁用
KeySupport
然后将
OpenUsbKbDxe
添加到
config.plist
->
UEFI
->
Drivers
二十五、This version of Mac OS X is not supported: Reason Mac
解决方法:
当
SMBISO
不再受该版本
macOS
支持时,会发生此错误,请确保在
PlatformInfo
->
Generic
中设置值并启用自动。支持的
SMBISO
的提醒:
iMac13,x+iMacPro1,1MacPro6,1+MacBook8,1+MacBookAir5,x+MacBookPro9,x+
二十六、Couldn\’t allocate runtime area errors
解决方法:
这个就非常简单的只需要固定
kaslide
值就好。
二十七、SSDTs not being added
解决方法:
在
Opencore
中,在
ACPI
文件周围添加了一些额外的安全检查,特别是表长度头必须等于文件大小。这实际上是
iASL
在编译文件时的错误。如何找到它?示例:长度和校验和值是我们关心的,所以如果
SSDT
实际上是
347
字节,那么我们希望将长度更改为
0x0000015B(347)
(015B是十六进制的)解决这个问题的最好方法是获取一个新的
iASL
或
acidathera
的
maciASL
副本并重新创建
SSDT
*
Original Table Header:
* Signature
\”SSDT\”
*
Length 0x0000015D (349)
*
Revision 0x02
*
Checksum 0xCF
* OEM ID
\”ACDT\”
* OEM Table ID
\”SsdtEC\”
*
OEM Revision 0x00001000 (4096)
* Compiler ID
\”INTL\”
*
Compiler Version 0x20190509 (538510601)
二十八、OpenCore引导后重新引导到BISO
解决方法:
这个问题还是非常简单的这主要是因为
EFI
文件夹结构不正确,请确保所有
OC
文件都位于
ESP
(EFI系统分区)上的
EFI
文件夹中
二十九、RTC…, PCI Configuration Begins, Previous Shutdown…, HPET, HID: Legacy…
解决方法:
这个一般领域是很多
PCI
设备配置的地方,也是
AMD
黑客的大多数引导问题发生的地方。主要检查以下点:
缺少
EC
修补程序:
-对于
devstops
确保您的
EC SSDT
都在
EFI
/
OC
/
ACPI
和
ACPI
->
Add
中,仔细检查它是否已启用。
-注:笔记本电脑用户需要重新命名为自己机型
EC
名称2.
IRQ
冲突:
-在较旧的笔记本电脑和预制笔记本电脑上最常见,请运行
SSDTTime
的
FixHPET
选项,然后将生成的
SSDT-HPET.aml
和
ACPI
补丁添加到您的配置中(如果没有
ACPI
补丁
SSDT
将无法工作)3.
PCI
分配问题
-更新你的
BISO
确保它是最新的。大多数原始设备制造商在较旧的固件上的
PCI
分配都非常糟糕
-确保在
BISO
中启用了以上
4G
解码
Above4GDecoding
如果没有可用的选项,则将
npci=0x2000
添加到引导参数。如果启动参数中没有同时启用上述
4G
设置
Above4GDecoding
和
npci
它们将发生冲突
-其他重要的
BISO
设置:禁用
CSM
启用
Windows 8.1/10 UEFI模式
三十、\”Waiting for Root Device\” or Prohibited Sign error
解决方法:
这个问题通常被视为
USB
错误,有几种解决方法:
如果达到
15
端口限制,可以暂时解决此问题,但长期使用,我们建议您定制自己的
USB
另一个问题可能是某些固件无法将
USB
所有权转让给
macOS
要解决此问题,我们可以启用
ReleaseUsbOwnership
四叶草等效为
FixOwnership
三十一、macOS installer in Russian
解决方法:
请检查
NVRAM
->
Add
->
7C436110-AB2A-4BBB-A880-FE41995C9F82
->
prev-lang:kbd
您可能还需要在启动选择器中重置
NVRAM
如果上面方法没用,我们将强制删除该确切属性,然后让
OpenCore
重建它:
NVRAM
->
Block
->
7C436110-AB2A-4BBB-A880-FE41995C9F82
->
Item 0 then set it Type String and Value prev-lang:kbd
三十二、macOS Installer being damadged(macOS安装程序损坏)
解决方法:
下载
macOS
的最新版本安装。
如果你想安装当前版本,建议将终端中的日期更改为证书有效的日期,这需要你断开所有网络设备的连接(以太网,禁用Wifi),在终端中设置时间:
“date 0901000019”
参考:10.10:date 122014102015.3010.11:date 020101011610.12:date 010514102017.3010.13:date 0101012018.3010.14:date 0101012018.3010.15:date 12121212201911.0:date 121212122020
这里修改的原则为:安装版本发布日期后的一天左右,大家可以自行百度一下。
三十三、卡在或附近 IOConsoleUsers: gISOcreenLock…
解决方法:
检查
GPU
是否支持
UEFI
在
BIOS
中关闭
CSM
强制
PCIe 3.0
链接速度
三十四、IOConsoleUsers: gISOcreenLock…之后黑屏
解决方法:
遇到这个问题需要添加到启动参数
agdpmod=pikera
在不同的显示输出之间切换。
三十五、apfs_module_start…, Waiting for Root device, Waiting on…IOResources…, previous shutdown cause…(Catalina系统一般会卡这里)
解决方法:
如果卡在这里的话要确认一下
EC SSDT
是否启用,并适合你的系统。
三十六、内核奔溃 Cannot perform kext summary
解决方法:
通常,这被视为围绕预链接内核的问题,特别是
macOS
很难解释我们注入的内核。验证您的
kext
顺序正确(先是主插件,然后是插件
Lilu
始终是第一位)
更多黑苹果资源和解决办法,我放在评论区里