2020-05-20 | 技术 Hackintosh | 5 min read

此文章发表于 605 天前,请注意文章时效

因为疫情在家隔离已经快两个月了,学校不开门,实验室也不给进。无奈之下只好在家里「折腾」。因为之前在网上看到别人晒的联想 M920q 黑苹果装机,对于联想这个 Tiny 机型实在是心里种草,在 ebay 上搜索了下,发现有人出售 M910q 价格也比较合适,于是就拍下,准备搞黑苹果🐶。

为什么有这篇文章

因为自己以前在我的 T440P 上「折腾」过黑苹果,感觉现在的黑苹果安装已经非常简单,只要按照教程来,十有八九是可以成功的。但是我自己在安装 10.15.4 Catalina 的过程中遇到了很多指南上没有讲到或者是和指南推荐值不同的情况,为了对的起自己折腾花掉的时间,于是就把这些「坑」给记录下来。

机器配置信息

CPU: i5-7600T

iGPU: intel HD graphics 630

Disk01: Samsung SSD 860 EVO 500G

Disk02: Samsung MZVLM128HEGR-000L1

Chipset: Q270

RAM: 16GB

安装教程

推荐按照OpenCore-Desktop-Guide 指南进行配置安装。个人感觉这个指南已经是很详细的了,并且最好的一点是该指南里基本将能用的到的 config 设置项给解释了一遍,按照这个指南进行安装,可以很好的了解到自己的设置到底是在设置些什么。 尤其是对于「非标准硬件」[1]用户,非常有用。

我遇到的一些「坑」

休眠唤醒之后卡住、死机,只能硬重启解决

其实这个问题不是我在 Opencore 下遇到的,是我在 Clover 下遇到的问题。我刚开始是使用 Clover 安装的,心里想着毕竟是一个受众非常广的引导方式了,就算是遇到了问题应该也可以很容易的在网上找到。安装完之后,除了休眠之外,都非常完美,没有什么问题。但是毕竟是处女座,总想是是不是可以修复。

现象 可以休眠,也可以键盘,鼠标唤醒,但是在唤醒之后,系统很快就会「冻」住,无任何反应。

在网上搜了下,明确此问题会在以下情况下发生:

  • 使用了新的 AppleALC 补丁引起的问题
  • Clover 引导

退回 AppleALC 1.2.8 版本可以解决此问题。具体问题可以见下面的搜索结果:
STOP MACOS FROM FREEZING DURING SLEEP/WAKE ON A CATALINA HACKINTOSH
Catalina vanilla installation - freeze after sleep
关于数字音频中断,导致内核崩溃的解决方案

我尝试了下上面帖子中推荐的方法:

  1. 退回 1.2.8 版本 --> 退回旧版本之后,的确可以解决「冻死」的问题,但是声卡却无法驱动了,试了不同的 layout-id 也不成功,应该是 1.2.8 版本和 10.15.4 Catalina 不兼容的问题。
  2. 内核补丁 --> 无效

于是心里一横就准备换到 Opencore 下, 问题解决

Opencore 引导时,提示 memory panic stackshot succeeded 然后重启或者卡住

这种情况很有可能是没有分配 iGPU 的预留缓存,在 BIOS 中加入,或者在 Config 中添加 framebuffer-stolenmem 键。 这一个我找了个图片,图片如下:

卡在[EB|#LOG:EXITBS:START]

这个也是意料之外的问题,搜索了下,得到下面的帖子:

if you're stuck at "EndRandomSeed" OR [EB|#LOG:EXITBS:START] ERROR with OpenCore 0.5.7, try this to fix

需要将
RebuildAppleMemoryMap switch it OFF
SetupVirtualMap switch it ON
但是这是与 Vanilla 指南中的推荐值是相反的,原指南中对此两项的说明如下,我的 CPU 是 i5-7600T Kaby Lake 应该就是按照指南中的值来设定,不知道是哪里出了问题。

RebuildAppleMemoryMap: YES
Generates Memory Map compatible with macOS, can break on some laptop OEM firmwares so if you receive early boot failures disable this
SetupVirtualMap: NO
Fixes SetVirtualAddresses calls to virtual addresses, not needed on Skylake and newer. Some firmware like Gigabyte may still require it, and will kernel panic without this

仍然存在的问题

  1. 长时间休眠唤醒死机。 是的,现在不是因为「冻住」了,短时间内休眠再唤醒没有问题,但是长时间比如几个小时,就无法唤醒了。 使用命令pmset -g log | grep -i failure ,显示: Darkwake Exit Failure。尝试了几个方法,都没有效果,于是只好使用 Coffee Buzz 让系统不休眠。

总结一下,就是从一个唤醒问题,换到了另一个唤醒问题。😭😭😭😭 我折腾这一圈干啥!
最后附上我个人使用的EFI [2]


  1. 非标准硬件是指和网上大多数教程使用的硬件不同的硬件,是我杜撰的名词🦁。 ↩︎

  2. 仅作参考使用,在使用前建议先阅读 Open core 安装指南。 ↩︎

本文链接:https://willisfusu.github.io/post/Lenovo-M910q-OpenCore-Hackintosh/

此文章由李二先生采用知识共享署名-相同方式共享 4.0 国际许可协议进行许可,转载请注明出处。

🎉🎉🎉 我开通了Newsletter,欢迎订阅! 🎉🎉🎉