问题综述 很多Intel集成显卡高分屏的用户会发现采用原版安装好OS X并生成Recovery HD分区之后, 无法顺利进入Recovery HD. 这是因为IOKit中存在对集成显卡刷新率的限制, 特别是在高分辨率的屏幕上面(例如3200x1800, 3840x2160, …).
解决方法 解决方法和之前一样, 只需要破解存在于IOKit中的限制即可, 但是需要注意和在OS X系统下破解的不同点: - 构成Recovery HD启动的BaseSystem.dmg 格式是只读(r/o)格式, 无法直接挂载破解, 需要转换成UDRW(r/w)可读写格式.
- Recovery HD 分区容量有限, 无法放入转换格式后的BaseSystem.dmg, 需要重新压缩成为原始的r/o格式.
- HiDPI启动过程可能存在花屏, 需要加入BooterConfig设置解锁HiDPI限制. 解锁HiDPI的BooterConfig标志位是 _ _ _ _ _ _ 1 _ (1代表解锁HiDPI, 0代表关闭).
上述的步骤最好是自动操作的, 因此我写了unlockRecovery.sh来完成这些步骤.
如何使用unlockRecovery.sh
- 打开终端, 输入下列命令下载最新版本的unlockRecovery.sh
- curl -o ~/unlockRecovery.sh https://raw.githubusercontent.com/syscl/HiDPI-RecoveryHD/master/unlockRecovery.sh
复制代码- 上述命令把unlockRecovery.sh下载到了用户目录(~), 下一步改变其权限(+x)以执行
- chmod +x ~/unlockRecovery.sh
复制代码在执行的过程中, unlockRecovery.sh会询问你EFI分区和Recovery HD分区的位置, 只需要按提示输入正确的位置并回车即可(可能需要询问密码).
如果所有的操作都成功了, 你会在终端中看到如下的输出 注意, unlockRecovery.sh 会设置BooterConfig = 0x2A (0 0 1 0 1 0 1 0 = 在启动过程中使用黑色背景, CSRConfigMode仅用于Recovery/安装环境对SIP进行配置, 在启动过程中使用HiDPI模式显示). 更多关于BooterConfig配置的细节请参阅[更新SIP配置方法简要说明] Apple SIP/Rootless安全技术介绍+测试分析及关闭方法
如果有任何疑问或者意见, 可以到https://github.com/syscl/HiDPI-RecoveryHD下面的issue反馈, 不要吝啬你们在https://github.com/syscl/HiDPI-RecoveryHD的点赞哦 ;) 祝你们成功! syscl ////
|