身為一個網頁前端工程師,難免會遇到瀏覽器不相容的問題。偏偏有一個叫做 Safari 的瀏覽器並不是那麼容易取得,他會出現在 iOS 與 macOS 系統上,算是蠻常見的瀏覽器,而呆呆翰手上既沒有 iPad 也沒有 Apple 品牌的電腦。
根據 Apple 的終端使用者協議 (EULA), macOS 不得安裝在非 Apple 品牌的電腦上,顯然在公司使用黑金塔不是什麼好點子,於是瞄準了至少可以安裝到 macOS OS 10.15 Catalina 的二手蘋果電腦來測試網站相容性。
經過一陣子等待,終於找到一台二手的 Apple Mac Mini 2009 (A1283) 只要兩千,透過 Catalina Patcher 也能夠順利安裝 macOS 10.15 Catalina ,以下分別是買到這台 Mac Mini 後硬體及軟體上的處理步驟。
硬體升級
首先這台 Mac Mini 拿到的時候賣家是標示「無法開機」,根據賣家的照片判呆呆翰斷應該是硬碟故障導致無法開機,所以從一開始這台 Mac Mini 就注定要被拆,至少要換個硬碟才能繼續用。當然拿到後發現賣家的硬碟似乎是好的還可以正常開機,多賺一顆 500G 機械式硬碟就是另一件事了。
拆解步驟基本上參考 iFixit 的更換硬碟手冊,不過我沒有 iFixit 用來拆卡榫的那把刀。我的作法是用一字起子開縫後,用過期的各種會員卡(麥當勞甜心卡、舊版安利美特會員卡等等)塞進去縫裡,把卡榫慢慢拉開。壞處是會留下一點痕跡,不過賣家原本就換過硬碟跟記憶體、原本就有痕跡,而且電腦底部呆呆翰我不是這麼在意。
另外主機板只要多拆左下角那根 T15 螺絲就可以拿出來了,呆呆翰有換散熱膏降低機器溫度。
記憶體升級
挖開後第一個升級目標是記憶體,根據 Apple 的技術規格網頁指出,出廠最高 1G x2 ,買來的時候賣家已經換裝 2G x2 ,但 4GB 還是有點太小,所以呆呆翰這裡又把它升級成 4G x2 共 8GB。
這裡要注意因為這台 Mac Mini 已經很老了不支援新的顆粒,必須使用 2Rx8 規格的記憶體(雙面有顆粒、每面八顆顆利),用 2Rx4 的記憶體會無法開機;速度理論上記憶體都可以降頻跑不會有問題。呆呆翰這裡買的是 SKHynix 2Rx8 4GB 1333Mhz 的記憶體,一開始系統開機半小時必定當機,後來重新插拔幾次把主機板上氧化的接點清除乾淨後就沒問題了。
硬碟升級
根據 Apple 技術規格,這台 Mac Mini 會搭配 120GB 、 250GB 或 320G 5400轉的 SATA 硬碟出貨,呆呆翰拿到的時候前一個賣家已經升級成 WD 500G 7200轉的黑標硬碟。但根據呆呆翰以前用過 Mac OS 10.5 ~ Mac OS 10.8 的經驗,從 10.7 開始 Mac OS 沒有固態硬碟 (SSD) 會很卡很不順,所以這邊最後換了 Intel S3610 200G 的 SSD 上去。
光碟機升級
呆呆翰手上有一些藍光光碟收藏,所以把藍光光碟機換上去會比較方便,所以原本的 DVD 光碟機呆呆翰沒有測試直接收進倉庫。
這邊要注意的是這台老 Mac Mini 是使用 12.7mm 的光碟機,不是現在常見的 9.5mm 厚度,如果買 9.5mm 的光碟機大概只剩一兩個螺絲孔可以鎖,剩下的螺絲孔完全對不上。
還有一點是 Mac Mini 的紅外線模組會擋住托盤式光碟機的托盤,所以就算你不把殼蓋起來,托盤式光碟機依然沒辦法用。目前呆呆翰有找到 12.7mm 的 SATA 介面的藍光光碟機型號如下:
- HLDS CA10N (藍光 COMBO / 藍光讀取 + DVD 燒錄)
- HLDS CA30N (藍光 COMBO / 藍光讀取 + DVD 燒錄)
- Panasonic UJ265 (可以燒藍光光碟)
可以用關鍵字 12.7mm+吸入式+藍光 去找適合的光碟機,台灣這邊能買的不多,如果要用英文搜尋可以試試 12.7mm+Slot+Load+Blu-Ray 去找看看。
硬體升級就到這邊了,Mac Mini 的 WiFi 網卡比較特殊,要升級到 802.11ac 應該是不太可能,除非有人做轉接版把那個特出插頭的排線轉成 mini PCI-e 或是 M.2。
軟體設定
macOS El Capitan
Mac Mini 2009 (A1283) 要安裝新版的 macOS 並不容易,官方支援的最新版本是 El Capitan ,但要安裝 El Capitan 也不容易,因為 EL Capitan 最後一版是 2006 年發布的,裡面的憑證已經過期,所以正常的安裝手段一定會出現「無法驗證此版本的『El Capitan』應用程式。可能是軟體毀損或下載時發生問題」
網路上找到幾種解法,改日期不知道為什麼對我的 Mac Mini 完全沒用,所以最後是直接打開終端機下指令解決:
installer -pkg /volumes/Mac\ OS\ X\ Install\ DVD/Packages/OSInstall.mpkg -target /Volumes/MacintoshSSD
用 installer 安裝除了沒有進度條外,另一個缺點是安裝好會是英文語系,進 macOS 後要再調整語系,不過他可以正常安裝。
macOS Catalina
裝好 El Capiton 後,就可以下載 macOS Catalina Patcher 開始製作 Patch 過的 Catalina 安裝隨身碟了,網站的教學也很仔細,記得重開一次後要回到隨身碟跑 Post-installer Patches 。
另外一點是跑完 Post-Install Patches 後,有一個 Force Cache Rebuild 的選項 ,這邊建議打勾後再重新開機。呆呆翰有遇到沒重建 Kext Cache 後開機卡住/開機後顯卡沒驅動的。
另外幾次實驗為了加速安裝,試著從 VM 安裝到實體的 SSD ,發現幾個注意事項:
- 最後一定要在實體機上執行 Post-Installer 並強制重建 Cache 否則不能開機
- VMware 的 USB 3.0 通透不太穩定常常卡住,用實體硬碟通透比較穩定
Windows 10
macOS 上的藍光光碟撥放軟體基本上都沒辦法完整撥放藍光光碟的內容:尤其使選單的部分,這體驗不完整,所以在 Mac Mini 上面安裝 Windows 依然有其必要。
不過這台老 Mac Mini 並不支援 UEFI 模式開機,他只是蘋果 EFI 並支援一部分 UEFI 標準內的東西,像是插入 UEFI + Legacy Mode 的開機隨身碟他會讀取 EFI/BOOT/BOOTX64.EFI 這個檔案開機。
但這個相容的程度並不足以開啟完整的作業系統(可以開 grub ,用 grub 開 MT86+ 也沒問題,但開 Linux 或 Windows 都不會有畫面),所以 Windows 得用 Legacy Mode 安裝。
但 Mac EFI 的硬碟採用 GPT 格式的分割區表(Apple 稱其為 GUID 分割區表),Legacy Mode 得用 MBR 格式的分割區表。這裡要採用折衷作法 Hybrid MBR ,也就是一個裝置同時有 GPT 與 MBR 的分割區表。
Hybrid MBR 除了用 BootCamp 作之外,也可以用 gdisk 來做。呆呆翰因為沒有 DVD 可以讓 BootCamp 識別,所以就用改用 gdisk 來做了,細節說明在 GitHub 上這個 Gist 也非常清楚,這邊只有幾個注意事項:
因為有安裝 Patch 過的 Catalina ,這麼老的 Mac Mini 原生是不支援 APFS 開機,所以它是透過 EFI 分割區安裝 APFS.efi 讓這麼老的 Mac Mini 可以讀取 APFS 分割區與裡面的卷宗開機。經過幾次實驗發現需要把 EFI 的開機分割區暴露出來,否則 Mac Mini 開機不會出現 EFI Boot 的選項,APFS 當然也就無法開機。
如果 Hybrid MBR 做失敗了, ask ubuntu 這個回答有寫到同樣使用 gdisk 清除 Hybrid MBR 的方法,如果 Windows 不能開機或是 macOS 不能開機,可以試著清除重作,比整個硬碟重來省下不少時間。
還有一個發現是做 macOS 雖然要求 GPT 分割區表,但不曉得是 APFS 的 Boot Loader 還是整個 macOS 看到 Hybrid MBR 似乎都會以 MBR 的分割為主。總之要 Windows 跟 macOS 都能開機,呆呆翰的作法是 讓兩個分割區表同步,不使用 EFI 保留分割區來保護 APFS。
再來是 Boot Camp 應該是認機型抓驅動的,所以 Boot Camp 雖然告訴你安裝 Windows 10 ,但做好驅動到 Windows 10 安裝會跳出「適用於 Windows 7」的錯誤無法繼續安裝,這裡用右鍵相容性改 Win 7 就可以裝好驅動了,裝好驅動記得讓 Windows Update 更新一下。
這邊坑比較深,呆呆翰第一次用 800G 的 SSD 做 Hybrid MBR 還有遇到 Windows 放在最後 60G 不能開機的奇怪問題,後來洗掉把 Windows 放在最前面、 macOS 放在後面才順利搞定,超莫名的。
至於不想燒光碟的解決方案,呆呆翰這裡的作法是做好 Hybrid MBR 後直接把硬碟拆下來,用 DISM / DISM++ 部屬,再用 bcdboot 確保安裝了 MBR 的 Bootloader 外,也用 Bootice 手動寫個 MBR 進去。
最後有一個很迷的事件,在這台老 Mac Mini 上 Catalina 沒辦法順暢撥放 1080P60FPS 的 YouTube 影片,但 Windows + PowerDVD 12 可以。
穩定度調教
目前這台機器用起來沒有非常穩定,用幾個小時後會當機。經過幾輪測試後發現可能跟溫度有關,目前用 Macs Fan Control 手動設定根據 CPU 核心溫度控制風扇,當 CPU 核心超過 45 度開始加速、最高接受 CPU 溫度燒到 63 度。
這個軟體除了可以再 Catalina 上搭配這台老 Mac Mini 運作外,也可在 Windows 下運作。不過老 Mac Mini 在 macOS Catalina 下沒辦法偵測到 GPU 的溫度,呆呆翰這邊懷疑 GPU 溫度過有導致當機,目前還沒完全排除當機的問題。