前言

OpenCore 发布了 0.7.2 正式版,总体来看这并不是一个大更新,属于常规更新,但是在安全性方面做了一个不大不小的改动,影响了很多用户。

OpenCore 0.7.2 针对 macOS 允许加载的 APFS 驱动修改了时间和版本限制的默认值,这样导致了一个问题,即升级到 0.7.2 之后,还在使用低于 macOS 11.0 Big Sur 的用户会看不到系统选项。

问题原因

这里简单解释一下,不想看这个部分的直接跳过就行。问题产生的具体原因是 OC 团队修改了 APFS 驱动的 MinDate 和 MinVersion 默认值,但是他们把变更写在了发行包的文档 Differences.pdf 里,没有直接写在更新日志里,具体内容如下(红色部分为新值):

MinDate

Description: Minimal allowed APFS driver date.

The APFS driver date connects the APFS driver with the calendar release date. Apple ultimately drops support for older macOS releases and APFS drivers from such releases may contain vulnerabilities that can be used to compromise a computer if such drivers are used after support ends. This option permits restricting APFS drivers to current macOS versions.

  • 0 — require the default supported release date of APFS in OpenCore. The default release date will increase with time and thus this setting is recommended. Currently set to 2018/06/21 2021/01/01.
  • -1 — permit any release date to load (strongly discouraged).
  • Other — use custom minimal APFS release date, e.g. 20200401 for 2020/04/01.


MinVersion

Description: Minimal allowed APFS driver version.

The APFS driver version connects the APFS driver with the macOS release. Apple ultimately drops support for older macOS releases and APFS drivers from such releases may contain vulnerabilities that can be used to compromise a computer if such drivers are used after support ends. This option permits restricting APFS drivers to current macOS versions.

  • 0 — require the default supported version of APFS in OpenCore. The default version will increase with time and thus this setting is recommended. Currently set to the latest point release from High Sierra from App Store (allow macOS Big Sur and newer(748077008000000 1600000000000000).
  • -1 — permit any version to load (strongly discouraged).
  • Other — use custom minimal APFS version, e.g. 1412101001000000 from macOS Catalina 10.15.4.

翻译就不翻译了,简单来说就是 Acidanthera 团队觉得,允许 macOS 加载苹果已经放弃支持的 APFS 版本驱动,会对系统造成安全性问题(或有漏洞),于是他们把 MinDate 和 MinVersion 调整到了最低 macOS 11.0 Big Sur 对应的版本。由于 APFS 文件系统在 macOS 10.14 开始默认采用,到 10.15 的时候变为强制使用,这个修改就导致了 OpenCore 0.7.2 在引导界面无法看到低于 11.0 的系统选项。

解决方法

知道了原因,解决起来就很简单。修改 EFI 的 config 文件,将以下位置的两个值改为 -1 或其它值(文末说明):

config.plist → UEFI → APFS → MinDate/MinVersion

全选

复制

下面是 OpenCore Configurator 的修改方法:

openrestry中没有opm opencore没有界面_sed

下面是 OCAuxiliaryTools 的修改方法:

下面是 ProperTree 的修改方式:

其它值

如果你不希望失去 OpenCore 这两个功能为你提供的安全性,那么请升级到 macOS 11.0 Big Sur 及以上。也可以填写自定义值,下面是其它可以使用的值参考:

  • 10.13.6(17G66) High Sierra
  • MinDate:20180621
  • MinVersion:7480770080000000
  • 10.14.6(18G103) Mojave
  • MinDate:20190820
  • MinVersion:9452750070000000
  • 10.15.4(19E287) Catalina
  • 20200306
  • 1412101001000000

「注意」上面提到的值,对应标注了系统版本,当你的计算机安装了低于上述版本时,你需要选择一个更低的版本对应值。例如,上述标注 Catalina 的值最低版本 10.15.4,如果你安装的是 10.15.1,那么你需要输入 10.14.6 的值才能保证对引导进入 10.15.1 系统不产生影响。