vlambda博客
学习文章列表

英特尔十代CPU平台上安装黑苹果



作为一个系统发烧友,曾在裸机和虚拟机上安装过从CP/M, (DR, MS, PC)DOS, WIN3.x, WIN NT, OS/2, Novell Netware, Unixware, FreeBSD, OpenBSD, Linux ...。

可以说,亲历了一部比较完整的 nerd 折腾史。看着各种操作系统启动起来,你会回到特定的历史时代,那个时候 hacking 还是一个褒义词。有一群牛批的宅男(女),相信的是 Shut up and code, 崇尚的是究极事情背后的来龙去脉,在努力钻研提升自己知识技能的同时,也为广大不那么牛批的 nerd 们带来了精神上的极大愉悦 及肉体上的残酷折磨

在裸机上安装Mac,也即"黑苹果 —— Hackintosh",是一个系统发烧友绕不过去的坎,不要问有什么意义,意义在 Because you can, 在于不断的折腾,在于对系统的敬畏。



花了一晚上时间,给一台INTEL NUC10i7FNH便携电脑安装上了 macOS Catalina 10.15.7。等了大半年才动手的原因是苹果直到最近才有了10代U的产品,然后网上各种牛人也折腾得比较完美了,遂自己装来试试。

本文是一篇安装记录,同时也可做为通用黑苹果的参考。


英特尔十代CPU平台上安装黑苹果

INTEL NUC 10 迷你台式电脑 (117 x 112 x 51mm)



1 
计划及准备

按照先后顺序,把各个步骤需要的资源及耗时罗列一下:


内容 备注 耗时(分)
0
硬件
NUC、Macbook、32GB USB Key、100GB+ USB HDD
10
1
前期准备
  • 在Macbook的 Appstore下载macOS Catalina 10.15.7

  • 在原NUC上把Win 10做一个系统镜像

  • 从这个镜像恢复一遍系统确保镜像没问题。

做 Win10 镜像可让你无论如何折腾都能在走投无路的时候用15分钟回到从前,比从头装系统并配置要快多了,镜像就做在100GB的USB HDD上。

60
2
工具软件
  • 一个已经做好的EFI,这里用的是tonymacx86论坛上的 Intel NUC 10 Frost Canyon 帖子里第535楼的(阅读原文可直达)

  • MountEFI-update.zip

  • GenSMBIOS-master.zip

  • OpenCore-0.6.2-DEBUG.zip

  • HeliPort.dmg (Intel Open WiFi 6 驱动)

那些Zip工具都在Github上,是些用python写的脚本,搜一下就有。这时大约8GB的mac安装镜像下载好了,把它做到U盘上并修改U盘的隐藏EFI分区。

60
3
安装系统
  • 修改NUC的EFI设置

  • 用U盘安装macOS Catalina

  • 对NUC的硬盘EFI分区做必要修改

  • 启动后配置WiFI6 ,登陆 AppleID,安装App等后续配置。

大部分问题都出在EFI的兼容性上,可以下载多个版本测试哪个更加合适。

60
4
评估
使用一段时间看是否满意,否则恢复原系统镜像。
60

总耗时约四小时,如果做过一遍了,那么只是重复步骤 3 - 4,二小时内。有时候因为刷了新的BIOS而引起的兼容性问题,可能会导致整个工具链都要更新,这个时间是不可控的。不能随意对系统的固件、BIOS/EFI、macOS 系统进行更新尤其是大版本更新应该就是黑苹果最大的短板了(妨碍长期使用)。



2 
步骤记录

0. 硬件
确保所用硬件里面的数据都得到了正确备份且备份能被有效恢复。

1、2.前期准备及工具使用
  • 把32GB的U盘格式化成苹果文件系统:

英特尔十代CPU平台上安装黑苹果

用Disk Utility格式化U盘,不必取名,格式是苹果扩展分区,GUID分区表


  • 把下载的 macOS 写入U盘里面。从AppStore下载后在Application里面会多出一个 Install macOS Catalina 图标, 具体位置和命令如下:

英特尔十代CPU平台上安装黑苹果

命令:% sudo ./createinstallmedia --volume /Volumes/untitled


  • 先看看目前的分区状况和各个盘的编号是什么,记下来 U盘的标识是 disk2,上面的EFI分区是 disk2s1。

英特尔十代CPU平台上安装黑苹果

命令:% diskutil list


  • 取消U盘上EFI分区的隐藏,这要用到 MountEFI 工具。上一步看到是 disk2s1, 所以这一步选择 1, 回车。

英特尔十代CPU平台上安装黑苹果

命令:% ./MountEFI.command


  • 可以看到桌面上多了一个EFI的图标。

英特尔十代CPU平台上安装黑苹果


  • 关键来了,把U盘上隐藏EFI弄出来,把我们下载的合适的EFI拷贝进去,这样才能用这个U盘启动PC进而安装 macOS. 其余工具和App可以拷贝到“Install macOS Catalina”分区里面去,因为在新的黑苹果里还要用到。

英特尔十代CPU平台上安装黑苹果

要保持 /EFI 的结构


3. 安装系统

  • 把U盘插入NUC,开机后按F2进入BIOS设置。目前mac系统明确不支持的功能是安全启动 Security Boot和SDCard3.0, 这两项禁止掉。把启动顺序调整到U盘,保存退出重启。


  • 正常的话会来到这个界面,因为原来硬盘上有 Win10,所以多了Windows这个图标。这里选择 Install macOS Catalina. 进去后先不要安装,用 Disk Utility 把硬盘上的 Win 分区清除掉,格式选 APFS 里面的,不加密。

英特尔十代CPU平台上安装黑苹果

U盘的EFI启动后界面


  • 不正常的话应该就是EFI没弄对或者写入U盘出错,排错。


  • 同等硬件下安装macOS的时间比Win10要得多。如果正常进入桌面,记得不要拔掉U盘,因为这个时候的启动靠的还是U盘上的EFI。我们需要把U盘上的能启动机器的EFI弄到硬盘上,以便下次能从硬盘启动。这时候又要用到 mountEFI了,只不过这次是从U盘的EFI拷贝到硬盘的EFI,不要记错标识符就可以了。


  • 联网。如果只有LAN,那么直接就上网了。难的是WiFi且仅有WiFi,NUC10上面是 Intel(R) Wi-Fi 6 AX201的无线模块,苹果和英特尔本身并没有提供原生的驱动,Linux也要内核到5.4后的发行版才支持Wi-Fi 6,目前要完全用足Wi-Fi 6的性能只能用Win 10英特尔十代CPU平台上安装黑苹果 。 还好有个牛批的人受不了了,自己编了个驱动并且把它开源了。。。英特尔十代CPU平台上安装黑苹果英特尔十代CPU平台上安装黑苹果英特尔十代CPU平台上安装黑苹果,下载 HeliPort.dmg 运行就可以了,实测可以达到 6-7 Mb/s 的下载速度,还成。


英特尔十代CPU平台上安装黑苹果


  • 重点:然后趁着硬盘EFI分区还在,用 GenSMBIOS去生成一下独有的序列号。这样相当于为PC伪装了一个合法的Mac硬件的身份。因为用的EFI是别人做好的,可能SMBIOS和UUID都已经同某个牛批的人的AppleID关联了,所以要生成独有的。这样也为后面小版本的系统更新做了铺垫,一般第二个小数点后的版本升级是可以的。

英特尔十代CPU平台上安装黑苹果

这里需要联网下载OpenCore,顺序是1-2-3-4-5-Q。第3步对于NUC10i7机型选择输入MacMini8, 1


  • 拔掉U盘,从硬盘开始正式的 macOS 引导吧。(当然,这里你有50%的几率再也进不去系统而里面还有50%的人没做Win10的镜像英特尔十代CPU平台上安装黑苹果


4. 评估


NUC10i7, 64GB 2667MHz DDR4 骇客神条内存,三星 970 EVO Plus 512GB SSD,可能是除 Mac Pro 之外最快的苹果系统了。用同一个C++程序对2万个随机数字排序,裸机的耗时跟Win10 下WSL2里的Debian 10差不多。

英特尔十代CPU平台上安装黑苹果


英特尔十代CPU平台上安装黑苹果


试了两个最新的 EFI ,一个雷电接口和Type-C有问题,一个解决了雷电问题但是关机变成了重启。 我恰巧又有雷电又要关机

我不用xcode,也不用macOS上独有而其他平台上没有的App, 有台Macbook pro够了。对于现在的 macOS ,已经没有了使用摩托罗拉和IBM芯片时代的特立独行和阳春白雪了,为了应对 Windows、Linux的竞争,添加太多的特性,惊吓过多惊喜过少。所以从跟 iPhone 说拜拜之后,很可能 mac 是下一个。iPAD pro 还成,会保留较长时间。以后等Macbook pro老了,这台NUC的黑苹果支持应该完美了,到时候看再弄吧。

是的,我已经恢复Win 10镜像了,因为下面这个真的是最强的PC桌面操作系统。有了Windows Subsystem Linux 之后(及 WSL2),它甚至还是最强的Linux发行版。



折腾是为了避免更大的折腾。
It's not easy to get to this point.