目录:
清理四叶草
验证您是否正在使用NVRAM
启用仿冒的NVRAM(使用nvram.plist)
本节适用于那些没有本机NVRAM的用户,与macOS不兼容的本机NVRAM的最常见硬件是X99和某些X299系列芯片组:
- X99
- X299
对于B360,B365,H310,H370,Z390用户,请确保在EFI / OC / ACPI和config.plist-> ACPI-> Add下都具有SSDT-PMC。
清理三叶草
因此,有些人可能没有注意到,但是Clover可能已在macOS中安装了RC脚本以进行正确的NVRAM仿冒。这是一个问题,因为它与OpenCore的仿冒方法冲突。
要删除的文件:
/Volumes/EFI/EFI/CLOVER/drivers64UEFI/EmuVariableUefi-64.efi/Volumes/EFI/nvram.plist/etc/rc.clover.lib/etc/rc.boot.d/10.save_and_rotate_boot_log.local/etc/rc.boot.d/20.mount_ESP.local/etc/rc.boot.d/70.disable_sleep_proxy_client.local.disabled/etc/rc.shutdown.d/80.save_nvram_plist.local
如果文件夹为空,则也将其删除:
/etc/rc.boot.d/etc/rc.shutdown.d
验证您是否正在使用NVRAM
首先,打开终端并一次运行以下一行:
sudo -s
sudo nvram -c
sudo nvram myvar=test
exit
现在重启并运行:
nvram -p | grep -i myvar
如果没有任何返回,则您的NVRAM无法正常工作。如果包含myvar test返回的行,则您的NVRAM正在工作。
注意:nvram -c需要关闭SIP,另一种方法是在引导菜单上擦除NVRAM。提醒您需要Misc -> Security -> AllowNvramReset -> YES
启用仿冒的NVRAM(使用nvram.plist)
要启用仿冒的NVRAM,您需要设置3事项:

在您的config.plist中:
- Booter引导程序:
DisableVariableWrite: 调成YES
- Misc -> Security:
ExposeSensitiveData: 调成0x3
- NVRAM:
LegacyEnable: 调成YESLegacyOverwrite调成YESLegacySchema:设置NVRAM变量(OpenCore将其与nvram.plist中存在的变量进行比较)WriteFlash: 调成NO
在您的EFI中:
OpenRuntime.efi驱动程序(正常睡眠,关机和其他服务才能正常工作需要
现在获取“ LogoutHook.command”并将其放置在安全的地方(例如,在用户目录中,如下所示):
/Users/(your username)/LogoutHook/LogoutHook.command
打开终端并运行以下命令:
sudo defaults write com.apple.loginwindow LogoutHook /Users/(your username)/LogoutHook/LogoutHook.command
瞧!您已经模拟了NVRAM!
请记住,这需要nvram命令支持该-x标志才能正常工作,而该标志在macOS 10.12及更低版本中不可用。如果要安装macOS 10.12或更早版本,则需要复制nvram.mojave到与相同的文件夹中LogoutHook.command,这可以通过调用它而不是系统nvram命令来解决。
还有一点需要注意的是,macOS只能读取nvram.plist,但除非运行关机过程,否则将无法写入nvram.plist。这意味着运行上面的测试将无法进行


评论0