最近手頭兩臺電腦一臺主板壞了,在修,另一臺則進行了更換,所以后兩篇文章暫時寫了一半,另外平時還要準備考試,所以更新的比較慢,請大家見諒。
什么是黑蘋果
由于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,相較于之前替換內核的方法,大大減輕了黑客們的工作量。從此黑蘋果慢慢進入了大眾的視野,由困難變得簡單起來。


Clover
OS X 10.10 Yosemite版本開始,出現了新的引導方式——Clover Bootloader,即四葉草。它支持UEFI啟動,相較于Chameleon功能更加強大,適配更加完美,調試更加簡單。和之前不同,10.10開始內核替換幾乎絕跡,幾乎所有的黑蘋果都采用使用額外的bootloader來引導OS X原版安裝鏡像,盡量減少kext的修改,來實現穩定的黑蘋果安裝。
隨著時間的推移,目前幾乎所有的黑蘋果都采用Clover引導。在極客們的努力下,越來越多的BUG被修復,kext封裝越來越精簡,我們配置黑蘋果也越來越簡單、方便。
為什么我們要黑蘋果
接下來的比較純粹從程序員角度,并非什么音頻視頻編輯。


Ubuntu
Linux 在Windows/Linux/macOS之間對比,你會發現Linux對于界面做的真的比較一般,相對而言Ubuntu等大眾Linux稍好,但是和其它兩者相比就沒什么優勢,而且很多軟件不適配,例如QQ等還需要wine來幫忙。


Windows 10
Windows Windows 10真心很不錯,不僅擁有宇宙第一IDE和生產力鼻祖Office套件,擁有龐大的軟件生態圈,QQ、微信更不會缺少,但是個人非常不喜歡cmd,和linux的bash相比簡直是渣渣,這導致很多Terminal能完成的事情,Windows需要專門的軟件,而且使用Windows就等于放棄了Linux/Unix工具鏈,就算能使用也非常麻煩。


macOS Mojave
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,就試試黑蘋果??傮w而言,一二類占大多數,程序員如果用黑蘋果一般都是公司配的Macbook不行,那么自己組一套不錯的黑蘋果用著。
黑蘋果完美嗎?
經過這么多年的發展,黑蘋果基本上可以稱得上是比較簡單、相對完美了,特別是對于臺式機,只要你用的是大眾硬件,兼容硬件,那么基本上簡單操作后你就可以得到一臺比較完美的機器。那么完美主要包括哪幾方面呢?我這里簡單列舉,包括但并不局限于(只說臺式機?。?/p>
- 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貌似是有人在維護的,總之不推薦。


Clover Bootloader
總結一下,這里使用的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工作變頻正常,這就非??简灪谔O果的功底了,我們將在后面慢慢講解。
結尾
最后要說一下,黑蘋果真的很累很麻煩,而且黑蘋果失敗很多時候你是一頭霧水,不知道哪里出錯,要翻很多資料甚至很久之后你才會明白,而且有時候你明白了也沒辦法修補,因為畢竟我們能力有限,自己也不可能寫驅動或者修改Clover,所以黑蘋果且黑且珍惜,如果失敗了也不要沮喪,這就是圖一樂子,倘若你沒有黑果基礎,又在開始看之前就抱著一定要黑成功的打算,那我勸你還是早早退坑,買一臺MacBook Pro,省下來的時間去賺錢說不定連十臺Macbook都賺回來了。
版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。