关于黑苹果你必须要知道的事儿
创作立场声明:最近手头两台电脑一台主板坏了,在修,另一台则进行了更换,所以后两篇文章暂时写了一半,另外平时还要准备考试,所以更新的比较慢,请大家见谅。
什么是黑苹果
由于Macbook/iMac/Mac Pro均使用Intel处理器,让普通电脑安装macOS成为可能,在non-Apple机器上安装macOS就是黑苹果。
黑苹果的历史
在2005年之前,Apple的Macbook系列使用IBM的PowerPC架构处理器,所以macOS属于独占系统,仅仅Macbook系列可以安装,但是在2005年6月,苹果在WWDC上宣布他们将个人电脑从PowerPC架构转向Intel的x86架构。这就让很多人萌生了在非苹果硬件上安装macOS的想法。
大约3个月时间后,OS X 10.4 Tiger被匿名黑客宣布破解!但是当时的破解非常差劲,和现在AMD黑苹果类似,采用了更换定制内核的方法,这就要求每一个版本都要有黑客及时更新相应内核进行替换。
OS X 10.6 Snow Leopard发布后,osx86社区的一位黑客写了一个名为chameleon的bootloader,国内大家称呼为“变色龙”,这是第一个广泛性的引导器,基于这个bootloader我们可以比较容易地通过修改一系列config和DSDT来启动OS X,相较于之前替换内核的方法,大大减轻了黑客们的工作量。从此黑苹果慢慢进入了大众的视野,由困难变得简单起来。
OS X 10.10 Yosemite版本开始,出现了新的引导方式——Clover Bootloader,即四叶草。它支持UEFI启动,相较于Chameleon功能更加强大,适配更加完美,调试更加简单。和之前不同,10.10开始内核替换几乎绝迹,几乎所有的黑苹果都采用使用额外的bootloader来引导OS X原版安装镜像,尽量减少kext的修改,来实现稳定的黑苹果安装。
随着时间的推移,目前几乎所有的黑苹果都采用Clover引导。在极客们的努力下,越来越多的BUG被修复,kext封装越来越精简,我们配置黑苹果也越来越简单、方便。
为什么我们要黑苹果
接下来的比较纯粹从程序员角度,并非什么音频视频编辑。
Linux 在Windows/Linux/macOS之间对比,你会发现Linux对于界面做的真的比较一般,相对而言Ubuntu等大众Linux稍好,但是和其它两者相比就没什么优势,而且很多软件不适配,例如QQ等还需要wine来帮忙。
Windows Windows 10真心很不错,不仅拥有宇宙第一IDE和生产力鼻祖Office套件,拥有庞大的软件生态圈,QQ、微信更不会缺少,但是个人非常不喜欢cmd,和linux的bash相比简直是渣渣,这导致很多Terminal能完成的事情,Windows需要专门的软件,而且使用Windows就等于放弃了Linux/Unix工具链,就算能使用也非常麻烦。
macOS macOS一方面具有非常不错的UI界面,同时常见的Office、QQ、微信等软件都有,而且Unix-like的BSD内核让它拥有和Linux一样强大的Terminal,能使用Linux工具链,但这并不是说macOS就是天下第一系统了,相反,和Linux相比macOS的包管理机制弱爆了,homebrew早前甚至只有源码分发方式,下载完还得编译一遍,而且ruby的很多问题我还解决不了(可能是我不懂ruby所致),其次和iOS一样,macOS的OpenGL支持非常弱,所以图形能力在Apple产品上就不要考虑了,啥时候高冷的Apple能大力发展一下metal说不定还能看看,最后要说macOS其实属于表面光鲜,它很多细节体现出来macOS实际上粗制滥造,例如CPUPM都是一个个的配置文件,你的CPU符合这个文件就使用这套配置方案,如果不在其中那对不起,不支持。图形卡也是一样,很多BUG都是草草结尾,你真的细究会发现macOS和Linux完全不是一个级别的系统,大部分Linux发行版bug fixed or not fixed可以明显看出,但是macOS很多bug是差不多fix,能用,但很丑陋。
那为什么大部分的程序员都推荐Macbook Pro呢? 原因很简单,虽然macOS系统很粗制滥造,但是在Macbook Pro上用起来没啥问题,有bug但是会有苹果帮你处理,大多数人看中就是三点:有常用软件、能用Terminal和工具链、MacBook Pro总体而言还算不错的笔记本。很多时候不折腾是好事,工作学习就够累的了,为什么还要分心做些下水道活。
那黑苹果存在的意义是什么? 很多人看完上面觉得我在打脸自己,选择macOS是为了不折腾,但是黑苹果属于顶顶折腾人的,为什么我们要搞?实际上黑苹果有三部分用户:第一部分纯粹就是玩玩,折腾有意思,装完就完事儿了;第二部分人是电影、音频工作室,这个是真的,因为我身边就有此类人,苹果的产品是在太贵太贵,顶配iMac能接近十万,而且最让人**的是很多时候你有钱苹果也没有好的机器给你;第三类人是程序员,不过是没啥钱的程序员,例如学生、或者收入并不高的、新入职的程序员,有些时候为了将就,iOS开发必须要macOS,就试试黑苹果。总体而言,一二类占大多数,程序员如果用黑苹果一般都是公司配的Macbook不行,那么自己组一套不错的黑苹果用着。
黑苹果完美吗?
经过这么多年的发展,黑苹果基本上可以称得上是比较简单、相对完美了,特别是对于台式机,只要你用的是大众硬件,兼容硬件,那么基本上简单操作后你就可以得到一台比较完美的机器。那么完美主要包括哪几方面呢?我这里简单列举,包括但并不局限于(只说台式机啊):
CPU:个人觉得ivy bridge及之后的处理器一般都可以,Sandy bridge及更老的安装Mojave需要在Clover Boot Argument中添加一个跳过兼容性检查的设置。
显卡:最好最好要么是Intel的核显,要么是AMD RX 4xx/5xx或者Vega56/64,别N卡了,等驱动实在伤不起,AMD卡现在这么便宜,收一张玩玩花不了几个钱。
声卡:ALC系列的相对来说容易点,此外还要处理HDMI/DP输出声音
网卡:BCM94352z、BCM94360cd等等,基本我只用博通固定款
蓝牙:如果无线网卡是特定型号,一般蓝牙都能驱动
电源管理:原生CPU电源管理,变频等等
USB:USB内建,并不算难
睡眠:这玩意儿只要上面几个处理好,各种东西都内建完成,一般就可以用,但是台式机不睡眠也没啥大问题。
所以总的来说黑苹果台式机还是挺简单的,符合相对完美,且可以简易升级的机器给程序员用也很不错!很多时候公司发给你的MacBook Pro都是最低配的那种,18年前CPU都是双核四线程低压U,配8G内存 128G硬盘,说实话真的不能让人满意,所以花点小钱组一套强力台式机吊打MacBook Pro毫不费力。
笔记本的话会更复杂,首先是双显卡需要屏蔽独显,其次类似于屏幕内建等等的问题都会让你头大,所以笔记本最好是有现成的EFI。
黑苹果知识获取
tonymacx86.com:这是国外的一个黑苹果论坛,上面有几位非常厉害的Clover和相关Kexts维护者,不收费有详细教程,首推论坛!
insanelyMac:国外一个比较早的一个黑苹果论坛,就是在上文中osx86社区衍生而来的论坛,人数也不少,但是我用的较少,了解不多,有时候下载的会到这边来。
github:Github也是一个非常好的黑果资源搜索器,首先大部分的Kexts开发者都把库放到了这里,其次很多现成现成的EFI也在上边,在这里我发现了最佳黑苹果笔记本——XPS 9360顶配。
远景论坛:算是国内最大的黑苹果论坛,最早我接触黑苹果的时候就是在威锋x86和远景,相对而言威锋x86很多资料都太老了,置顶的精华都是好几年前的,对现在根本没有帮助,所以国内论坛首选远景,国内比较知名的黑果开发者也在上面混,但是远景也有很多问题,首先貌似现在是不开放的状态,注册要邀请码,其次远景曾经有一年左右时间存在问题,域名解析或者服务器挂了,最最重要的是远景知识不成体系,很多时候大家都是做了个EFI分享出来完事儿,究竟怎么做的,重点在哪里,这个比较少,而且很多资源都是搬运国外的东西,个人建议你如果黑苹果水平还不错,闲来看看别人在玩啥可以,但别想着从这里学会东西。
诸多个人论坛:这个需要个人收集,国内的有国光、黑果小兵,国外的nickwoodhams等等,先不用急着看,个人建议先从tonymacx86看起。
黑苹果原理
这部分原理为了让大家能听懂,我尽量说的简单一些
电脑系统的启动需要两个东西一起应用,一个是Bootloader,就是启动器,二是兼容这个启动器的操作系统。
启动器就是唤醒操作系统的一个小系统,它被烧录在主板ROM上,目前的通用启动器有BIOS和UEFI,没有UEFI BIOS这种东西,很多人误以为UEFI就是引导方式,并不是,UEFI是和BIOS平级的Bootloader。大多数电脑都是用基于这两款定制修改出来的Bootloader。
苹果很奇葩,它的引导方式是用的是苹果自家定制的EFI搭配各种软硬件引导进入macOS,EFI是UEFI的前身,它相当于在EFI基础上再做修改,和UEFI同属EFI衍生。普通UEFI是无法引导macOS的,不仅仅是不兼容,还在于无法提供各类macOS启动需要的数据和验证。
从黑苹果的历史中我们可以了解到,黑苹果的方法无非就是两种,一、替换内核,启动需要的信息全部写好,需要的验证删掉,这个操作相对繁琐,每个版本都需要替换,升级不易,目前AMD处理器黑苹果使用替换内核不太一样,它是将内核做了修改,让macOS也能识别Ryzen处理器,本质上还需要Clover引导,所以个人不是很推荐Ryzen,因为这不够原生,当然你只是想玩玩另说。二、启动器:大神开发出来第三方启动器,让UEFI先启动这个第三方启动器,然后第三方启动器再引导macOS,并且在启动过程中提供各类参数、数据、跳过验证等等。
目前最主流的是UEFI+Clover,首先最近五六年的主板都是UEFI,其次Clover发展的最快最好,支持最完善,生态最优。很多人可能会问我BIOS+Clover可以不,可以,但是我这里不讲,需要请自行研究。
还有一些奇怪的引导方式,例如Ozmosis等属于修改主板UEFI,让他能兼容macOS,并且提供需要的数据等等,但是个人不是很喜欢,首先Ozmosis发展的并不是特别好,仍然比较小众,维护者少,其次每次修改都需要刷写BIOS,大哥!ROM乱刷保不准哪天出事儿了哭都来不及,要用编程器救砖了,而且刷BIOS这个也太麻烦了,你刷个一次两次可以,刷N次就太累了,当然某些主板可以玩玩,比如有现成long release support的主板,例如我手头有一块技嘉Z97N-WIFI貌似是有人在维护的,总之不推荐。
总结一下,这里使用的UEFI+Clover引导macOS实际上是每次主板启动,都会引导硬盘EFI分区中的Clover,然后再由定制的Clover来引导macOS,Clover的功能非常强大,可以加载各种定制EFI文件,还可以提供对NVME支持,所以之前X99鸡血驱动有些方法就是使用Clover来加载,还有一些老主板引导NVME也使用了Clover。你完全可以把Clover理解为一个安装在硬盘上的Bootloader。
黑苹果安装大致流程解释
假设有一台空机器,我们要在上面安装macOS,那么我们首先需要在macOS下制作一个macOS安装U盘,这就是为什么我们在第一篇中写的是VMware安装macOS,我们可以借此创建一个包含macOS安装文件的U盘,接下来我们需要在U盘的EFI分区中安装Clover引导,这样我们在机器上插入U盘,UEFI就会引导U盘EFI分区的Clover,我们再借助Clover进入macOS安装环境。
这里最大的难点就在于如何配置Clover引导,Clover配置选项繁多,功能定义查找不清,我们将在下一篇文章中详细讲解,总之,只要能设置好Clover引导,我们就能顺利进入macOS安装界面,一步步安装macOS。所以经常你能在论坛上看到有人伸手要EFI,只要配置类似,可能就能顺利安装。
在安装完macOS后,我们需要把U盘的Clover文件放到硬盘的EFI分区中,然后对Clover进行进一步的设置,因为在安装的时候,我无所谓声卡网卡显卡是否正常驱动,甚至无所谓USB蓝牙等等,我只要安装完就行。但在安装完后,为了完美运行,我们就需要慢慢调试差错,修改Clover并加入Kexts让声卡显卡网卡工作,内建USB无线蓝牙,添加DSDT/SSDT让CPU工作变频正常,这就非常考验黑苹果的功底了,我们将在后面慢慢讲解。
结尾
最后要说一下,黑苹果真的很累很麻烦,而且黑苹果失败很多时候你是一头雾水,不知道哪里出错,要翻很多资料甚至很久之后你才会明白,而且有时候你明白了也没办法修补,因为毕竟我们能力有限,自己也不可能写驱动或者修改Clover,所以黑苹果且黑且珍惜,如果失败了也不要沮丧,这就是图一乐子,倘若你没有黑果基础,又在开始看之前就抱着一定要黑成功的打算,那我劝你还是早早退坑,买一台MacBook Pro,省下来的时间去赚钱说不定连十台Macbook都赚回来了。






瞎家巧
校验提示文案
OranTing
校验提示文案
这是一个好天气
校验提示文案
狂野de大兔子
校验提示文案
马龙-荷兰豆
校验提示文案
lonely落叶
校验提示文案
琴秀
校验提示文案
太值了买买买
校验提示文案
南風不競
校验提示文案
ATM出来挨打
校验提示文案
嘉然辣辣米
校验提示文案
FireArk
校验提示文案
A谨堂
校验提示文案
Bruce-Chan
我们的时间这么值钱吗?
校验提示文案
DevilRabbit
校验提示文案
猪猪的丫丫
校验提示文案
十分钟泡面
校验提示文案
日照仁
校验提示文案
常爷凯申
校验提示文案
toshiki
校验提示文案
日照仁
校验提示文案
小凡人
校验提示文案
Bruce-Chan
我们的时间这么值钱吗?
校验提示文案
A谨堂
校验提示文案
十分钟泡面
校验提示文案
值友2487067059
校验提示文案
FireArk
校验提示文案
zijinyouyou
校验提示文案
嘉然辣辣米
校验提示文案
山越旅行
校验提示文案
可乐GZ
校验提示文案
那年夏天雨飘飘
校验提示文案
值友9979721443
校验提示文案
枫糖叶落
校验提示文案
值友1272002442
校验提示文案
Jiaxdon
校验提示文案
ATM出来挨打
校验提示文案
猪猪的丫丫
校验提示文案
a7a7
校验提示文案
南風不競
校验提示文案