黑苹果找不到系统更新
曦子解决黑苹果感知不到系统更新。
缘起
macOS 快要发布 Sonoma
了, 今天发现系统版本才 Ventura 13.2.1
.
预备
本文适用于 opencore
.
查找 opencore
官方文档发现如下:
WARNING: Disabling SIP can break OS functionality such as software updates in macOS 11, Big Sur and newer. Please be careful to only disable specific SIP values instead of disabling SIP outright to avoid these issues.
不难发现, 如果禁用了 sip
会导致系统更新异常.
然后往下翻,又发现:
With macOS Catalina and newer, Apple split the OS and user data into 2 volumes where the system volume is read-only by default. To make these drives writable we’ll need to do a few things: Note: Users of SecureBootModel may end up in a RecoveryOS boot loop if the system partition has been modified. To resolve this, Reset NVRAM and set SecureBootModel to Disabled Note: Due to how OS updates work in macOS Big Sur and newer, changing the system volume can in fact break OS updates. Please edit with caution.
看起来如果处理过 SecureBootModel
也会造成无法更新.
开干
首先打开 terminal
, 如果结果给下面不太一样就要从开启 SIP
开始, 否则从 设置 SecureBootModel
开始.
➜ ~ csrutil status
System Integrity Protection status: enabled.
开启 SIP
opencore
的 sip
设置在 NVRAM -> Add -> 7C436110-AB2A-4BBB-A880-FE41995C9F82 -> csr-active-config
.
这里是一个二进制标记位, 所以他是个十进制, 官方给了几个示例:
00000000 - SIP completely enabled (0x0).
03000000 - Disable kext signing (0x1) and filesystem protections (0x2).
FF030000 - Disable all flags in macOS High Sierra (opens new window)(0x3ff).
FF070000 - Disable all flags in macOS Mojave (opens new window)and in macOS Catalina (opens new window)(0x7ff) as Apple introduced a value for executable policy.
FF0F0000 - Disable all flags in macOS Big Sur (0xfff) which has another new flag for authenticated root (opens new window).
这里我们只要设置 00000000
即可.
注意需要重启在启动界面执行 ResetNvram
.
设置 SecureBootModel
这个选项在 Misc-Security-SecureBootModel
是个枚举项.
到这里重启就可以看到系统更新了.