雪花台湾

Mac OS黑蘋果安裝(非Mac電腦)

Mac的作業系統從最早的10.0系列到去年出的10.11系列都叫os x,10.12系列開始不叫os x了,改名為MacOS Sierra,Mac的作業系統"正常來說"只能在Mac的硬體上執行,例如iMac、Mac pro,知道Mac作業系統不能裝在非Mac電腦上的原因嗎?      因為驅動

所以只要有驅動就能裝在非Mac電腦上了,需要驅動的硬體主要有CPU、主機板、顯示卡,主機板又分成幾部分:USB、音效、網路和其他裝置,Mac電腦用的CPU也是intel的,顯卡也是AMD或Nvidia的

Mac的驅動叫kext,已經有不少硬體在Mac作業系統有驅動,使得Mac的作業系統可以在非Mac電腦上使用,裝在非Mac電腦上的Mac作業系統叫做Hackintosh,但不是所有硬體都有驅動,太新的或不常見的硬體不一定有,如果選配的都是Mac電腦有在用的硬體型號是一定可以的

有要裝Mac作業系統的,可以在組電腦前先考量進去,選購的硬體必須有在Mac作業系統的驅動,推薦下面三個論壇,有Hackintosh的所有資訊

(1)tonymacx86

(2)InsanelyMac

(3)osx86

安裝法、所需工具、錯誤解決方式通通可以找到,要組電腦還沒有買配件的可以去論壇看看哪些硬體有支援,如果沒寫可以提問,已經買的也不用著急,可以問問有沒有支援或解決辦法,順帶一提,tonymacx86在發問前先寫上自己的CPU、主機板、顯示卡型號,要看rule,不然發問內容違反rule很容易被鎖帳號,3個論壇都是全英文,可以順便練練英文XD

Hackintosh的文章在網路上一大堆,每篇的版本和做法都不一樣,本人用的是OS X El Capitan10.11.6,主機板是x99晶片組的,這裡提供最general的安裝方式,無論哪個版本都可以看

1.首先,你必須找到一個已經在運行的Mac作業系統,如果你已經有Mac就不用煩惱了,沒有可以跟身邊人借,或用虛擬機模擬一個,關於用虛擬機模擬可以參考VMware安裝VMware模擬OS X,這是不求人的方法,雖然較麻煩

準備好一個16G的隨身碟,千萬不要用USB3.0

打開Mac作業系統上的磁碟工具程式,格式化隨身碟,輸入你要分割的層數、名稱、大小,格式要選Mac OS Extended(Journaled)

進入option,分割區配置選GUID,然後開始分割(新版的磁碟工具沒有分割區配置選項,要用舊版的,舊版可以到這裡下載)

打開App store,若尚未註冊,先註冊(這裡有免信用卡的註冊法)

下載OS X,App store當有新版本作業系統出來,過一段時間舊版的就會下架,只能下載到最新版的,如果這個帳號有下載過舊版的,可以載到舊版,所以建議每次有新版本出來就先下載放著,有下載過的要再次下載只要在purchased再次按download就行了

2.下載適合你想安裝的版本的unibeast(上面三個論壇可以找到)

將系統預設語言改成英文,進入unibeast

選擇要製作安裝碟的隨身碟

選擇你要安裝的Mac作業系統版本,如果剛剛沒有下載成功會是灰的,要重新下載

選UEFI mode

顯卡這裡可以不選,如果你的顯卡有包括在說明裡面可以打勾

確認,開始製作

燒錄中

4.燒錄完後會看到隨身碟裡的EFI資料夾,這是開機區,是開機引導程式clover的所在地

EFI資料夾裡面的結構:

boot資料夾裡面放了32位元與64位元的efi檔

ACPI裡面放的是與電源相關的原始檔和patch

kexts裡面放的是硬體驅動

themes是clover開機引導程式的主題樣式

config.plist是clover的設定檔

接著來設定clover,clover的設定在config.plist裡,它是用XML語言寫的

設定方式有3種

第一種

直接上論壇搜尋有沒有和你用完全一樣硬體的人成功安裝後留下來的config.plist或整個EFI資料夾,也就是所謂的懶人包,直接下載下來

下載clover configurator

打開到mount EFI,先按check partition,找到剛剛燒錄的隨身碟,會在external,有一塊空間已經有EFI資料夾

按mount EFI partition掛載隨身碟裡放EFI的區段(如果燒錄好還沒有退出隨身碟,EFI區段還掛載在系統上,可以略過此步驟)

在桌面或finder可以看到EFI磁區 

進去會看到EFI資料夾,用下載的EFI資料夾取代替換掉

卸載磁區

第二種

用clover configurator設定clover

打開clover configurator,掛載磁區後,左邊有一排選項,一項一項設定,至於各參數的功能會在下面解釋

第三種

用文字編輯器或XML編輯軟體打開config.plist,直接設定

完整的參數設定在這裡

每個開頭的<dict>一定有一個</dict>結尾,每個<key>一定有一個</key>結尾,<array>、<string>也是,像C語言的 { 必有一個 } 作結尾,文件已經幫你分層了,從最靠左的往右一層層下去,所有對齊在同一行的都是同一層,以下圖為例,從最左邊的<dict>開始,第一項是ACPI,下面有一個<dict>,再往下往右看,在同一行的DSDT、DropTables、HaltEnabler、SSDT都是ACPI的子項目,直到和ACPI對齊在同一行的</dict>結束,而Debug、DropOEM_DSM、Name、ReuseFFFF是DSDT的子項目,<key>和</key>之間夾的是設定的名稱,每項設定名稱下面的<false/>或<true/>或<string></string>之間夾的是那項設定的內容

ACPI

  DSDT

    Debug:是否將電源相關的錯誤訊息紀錄在/EFI/CLOVER/misc/debug.log,<false/>為否,<true/>為是

    DropOEM_DSM:OEM為原廠的意思,本身就有原廠的硬體電源設定存在bios中的aml文件,它遵從ACPI標準,所以在大部分作業系統都可以使用,但Mac的作業系統不

    完全follow ACPI標準,這個項目設定是否關閉bois原生的DSDT資訊,如果Name選項使用的是bios的aml,這個選項要用<true/>,然後可以另外設定要不使用哪些硬體

    的OEM DSDT,如果Name選項使用的是你自訂的aml文件(在EFI資料夾裡),那個選項用<false/>

    Name:你要使用的硬體電源資訊設定文件(aml檔),預設是在EFI資料夾裡的DSDT.aml

    ReuseFFFF:有些原廠的裝置DSDT設定是ADR=0xFFFF,是否把它改成ADR=0,因為這裡不是使用原廠的DSDT設定

  DropTables:要停用的原廠ACPI設定,這部份預設的就好了,不須特別去修改

  HaltEnabler:當作業系統進入睡眠模式前,會將SLP_SMI_EN這個bit填1,是否在作業系統重新啟動時將這個bit填0,一般要設<true/>

  SSDT

    DropOem:是否不使用內部的SSDT設定,一般設為<true/>

    EnableC2:是否允許使用C2電源狀態

    EnableC4:是否允許使用C4電源狀態   

    EnableC6:是否允許使用C6電源狀態 

    EnableC7:是否允許使用C7電源狀態 

    Generate:是否使用p-states和c-states產生SSDT

Boot

  Arguments:開機模式,不同的硬體搭配有不同的設定,在下面有列出常見的

  Debug:是否將開機相關的錯誤訊息紀錄在/EFI/CLOVER/misc/debug.log

  DefaultVolume:設定每次開機到clover時如果沒有選要開機的磁區,預設會是哪一個,下面列出可用的設定

  Legacy:新的bios都使用UEFI模式,有同時用clover啟動舊版本的windows或linux才要特別設定,一般設成PBR就可以了

  NeverHibernate:是否關閉休眠狀態偵測

  Secure:是否以安全模式開機

  Timeout:開機到clover畫面多久沒按鍵盤即自動進入預設的作業系統

  XMPDetection:是否在偵測記憶體時讓記憶體超頻運作

CPU

  QPI:processor bus speed,單位是MHZ,但因為這個值長期有爭議,設成100就可以了

  Type:看這裡,從第802行~929行,找到你的CPU種類,填入return的值,例如CPU是Quad-Core Xeon類型,對照第802行,填入0x402

  UseARTFrequency:是否使用ARTFrequency

Devices

  FakeID

    ATI:amd顯卡的fakeid

    IMEI:imei的fakeid

    IntelGFX:intel內建顯卡的fakeid

    LAN:網路界面的fakeid

    NVidia:nvidia顯卡的fakeid

    SATA:sata界面的fakeid

    WIFI:無線網路界面的fakeid

    XHCI:USB3.0界面的fakeid

  USB

    FixOwnership:是否開啟fixownership,設定為<false/>就可以了

    Inject:是否inject USB功能,一定要<true/>

DisableDrivers:有些driver和原廠的重複或同一設定在不同driver裡有不同值,必須設定不使用哪些driver

GUI

  Hide:要隱藏的分割區,可以填入partition名稱或GUID

  Language:設定clover help menu使用的語言,寫法是「語言:0」,可以用的語言代碼有enrufritesptbrdenlpluaczhridko

   Mouse

    DoubleClick:滑鼠點兩下之間的間隔偵測時間,單位是ms,500是最佳值

    Enabled:是否使用滑鼠

    Mirror:是否在單軸移動模式(只能垂直或水平移動)時的速度是相反的,也就是往反方向移動,給有軌跡球的滑鼠用的

    Speed:鼠標的移動速度,負的代表往反方向,2~8為正常值區間

  Scan

    Entries:是否自動掃描EFI分區

    Kernel:掃描linux kernel的相關設定

    Legacy:是否自動掃描legacy開機模式的作業系統

    Linux:是否自動掃描硬碟上的linux作業系統

    Tool:是否自動掃描UEFI工具

  ScreenResolution:螢幕的pixel數

  Theme:想要用的clover佈景主題

Graphics

  Inject

    ATI:是否使用amd顯卡的injection

    Intel:是否使用intel顯卡的injection

    NVidia:是否使用nvidia顯卡的injection

  NvidiaSingle:如果有2張nvidia的顯卡,而只要inject其中1張時可以用

KernelAndKextPatches

  AppleRTC:OS X有bios cmos的相容性問題,bios在每次重新開機後會reset,導致bios設定遺失,特別影響gigabyte的主機板,是否使用kext修正

  AsusAICPUPM:asus限制0xE2這個MSR register是唯讀的,但AppleIntelCpuPowerManagement.kext會嘗試去寫這個register,造成衝突,是否防止

  AppleIntelCpuPowerManagement.kext去寫入register

  Debug:是否在載入kernel patches和kext時印出錯誤訊息

  FakeCPUID:如果想在不支援的CPU安裝Mac作業系統,必須仿冒CPU的ID,避免kernel panic,要填入的值要去論壇找

  KernelCpu:排除舊版本Mac作業系統不支援YonahAtomHaswell這類CPU的問題 

  KernelHaswellE:Haswell-E的CPU不被OS X支援,這個patch排除相容性檢查

  KernelLapic:解決HP筆電的lapic問題

  KernelPm:針對Haswell CPU的電源管理patch,給10.8.5和10.9版OS X用的

  KextsToPatch:列出使用到的kext

RtVariables

  BooterConfig:r3259版本以後的clover可使用,填0x28就可以了

  CsrActiveConfig:SIP的設定,0x0=完全打開SIP,0x3=部份打開SIP,0x67=完全關閉SIP

SMBIOS

  BiosReleaseDate:bios釋出日期

  BiosVendor:bios製造商,填Apple Inc.

  BiosVersion:bios版本

  Board-ID:主機板id

  BoardManufacturer:主機板製造商,填Apple Inc.

  BoardType:MacPro填11,其他填10  

  ChassisAssetTag:電腦型號名稱,可以取自己想要的

  ChassisManufacturer:電腦製造商,填Apple Inc.

  ChassisType:從clover wiki上隨便選一個值填入,沒有影響

  Family:偽裝的Mac產品所屬的系列,例如iMac、MacBookAir、MacPro....

  Manufacturer:製造商,再次填Apple Inc.

  Memory

    Channels:你的記憶體的通道數

    SlotCount:你的主機板有幾個記憶體插槽

  ProductName:你要偽裝成的Mac產品型號,例如iMac14,2、MacPro5,1....

  SerialNumber:偽裝的Mac產品序號,可在網站論壇找到

  Trust:如果記憶體無法正確描述才設為<true/>

  Version:smbios的版本

SystemParameters

  InjectKexts:是否使用kext

  InjectSystemID:UUID可被inject differently且可被作業系統轉換成另一ID

Arguments常見參數

verbose mode: -v  

safe mode: -x

single user mode: -s

zone postponing: -no-zp

single cpu core mode: cpus=1

no kext cache mode: -f

disable VT-x or VT-d: dart=0

enable nvidia web drivers: nvda_drv=1 

disable nvidia graphics card: nv_disable=1

rootless mode: rootless=0 

問題出在pci configuration的需要加npci=0x2000或npci=0x3000,至於適用哪一個要試試看,可能其中一個可以或兩個都可以

如果要組合多個參數,只要每個參數間空一格就可以

※defaultvolume可用設定

(1)硬碟名稱

(2)硬碟GUID碼

(3)分割區路徑,例如HD(1,GPT,57272A5A-7EFE-4404-9CDA-C33761D0DB3C,0x800,0xFF000)

(4)LastBootedVolume:會載入上次開機的磁區

※fakeid=修正過的deviceid+vendorid,共8位,用與裝置原deviceid相近的deviceid來仿冒,使裝置可以在Mac作業系統上正常運作,每種硬體詳細該填什麼值要去論壇查,如果有驅動就不需要設fakeid,打0x0就可以了

※如果顯卡有驅動或已經可以正常運作就不需要injection了

KernelAndKextPatches底下的設定有需要的才開,不需要的都打<false/>

SMBIOS是用來偽裝成Mac的硬體資訊,讓Mac作業系統認為這是一台Mac,可以上Mac或Apple的相關網站,找你想要偽裝的機型,照著上面的規格填,SMBIOS的設定可以在安裝完後桌面左上角的Mac資訊看到

    

將你需要用到的驅動放進kexts資料夾裡

將你想要的clover主題放進themes資料夾裡

5.重新開機,進入bios

XHCI、EHCI都要開啟

SATA設定為AHCI模式

隨身碟移到第一優先開機

很多人說要設定vt-x、LAN、cpu...,其實不用

儲存後重新開機,到clover,選裝有Mac作業系統的隨身碟開機(如果插有不只隨身碟一個裝置,會出現其他選項,要選對)

會看到白色蘋果下面有一條白槓在跑

若出現白色禁止符號或卡住卡很久,回到clover,在external按空白鍵,進到開機模式選單,用verbose模式開機,把顯示出的錯誤訊息記起來,去網路上找解

開始安裝

選語言

點上面的工具程式->磁碟工具程式

選要安裝Mac作業系統的硬碟,按清除,如果只要用硬碟上的一塊空間裝Mac作業系統,要先分割好,這裡直接清除分割好的空間,忘記分割的可以離開安裝,分割好再進到這一步

格式選OS X擴充格式(日誌式),架構選GUID

繼續

繼續

選擇要安裝Mac作業系統的硬碟

安裝中

完成後重新開機,一樣用隨身碟開機Mac作業系統

選擇系統語言

選鍵盤語言和輸入法

現在不要傳送任何資訊

選是否啟用定位

用你的App store帳密登入

同意

設定使用者帳密

暫時不要允許iCloud尋找我的Mac

iCloud鑰匙圈稍後設定

不傳送診斷與用量給apple

設定完重新開機,從裝上Mac作業系統的硬碟開機

6.進到桌面,會要先抓鍵盤

按下左邊shift右邊的按鍵

按下右邊shift左邊的按鍵

選擇你的鍵盤種類

下載Multibeast

  

把缺的driver勾起來

選擇你的Mac作業系統所在的硬碟,安裝

接下來要將clover從隨身碟移到電腦上的硬碟 

再次打開clover configurator,按check partition

會看到裝有Mac作業系統的硬碟被分為3塊,EFI是開機區,有HFS的是主要磁區,recovery是還原用的

按下mount EFI partition,掛載EFI開機區

打開掛載的磁區,會看到裡面已經有一個EFI資料夾,裝有未設定過的clover

插上隨身碟,用隨身碟裡的EFI資料夾取代它

重新開機,進到bios,把硬碟上的clover設定為第一優先開機順序,以後就可以直接從內部硬碟上的clover開機了

如果想把開機區放到主要磁區(HFS+)所在硬碟外的另一顆硬碟,只要將隨身碟裡設定過的EFI資料夾放到你想用來開機的硬碟,bios就可以抓到了(下面用Ubuntu作示範)

先在你想放開機區的硬碟分割出一塊格式為fat32的空間

掛載分割好的fat32空間

確定有掛載

進到掛載的目錄,把隨身碟裡的EFI資料夾copy進去

卸載磁區

重新開機進入bios,就可以看到硬碟中自訂的開機區(範例中的dev/sdb2),以後可以從這個開機區開機了

如果有不只一個作業系統,只要滿足3個條件,clover就可以引導開機

(1)在其他硬碟位置有那個作業系統的開機區

(2)clover本身有支援那個作業系統

(3)scan裡的entries、tool、linux都設為true,kernel設為all

這樣就可以在clover選擇要進入的作業系統了

※補充一個NVidia driver安裝

NVidia Quadro和GeForce系列的顯卡在官網有給Mac作業系統用的driver,有2個driver要裝,一個是web driver,搜尋關鍵字是「QUADRO & GEFORCE MAC OS X DRIVER RELEASE 」,另一個是CUDA,找到適合你作業系統的版本,下載後直接安裝

但安裝好後還無法使用,先去下載EmuVariableUefi-64.efi,放到drivers64UEFI資料夾裡面(clover configurator裡面也有,可以用clover configurator直接安裝),如果有了就跳過此步驟

打開config.plist,在Arguments加上nvda_drv=1,要拿掉nv_disable=1,如果有設定的話

從桌面右上角NVidia的圖案進入driver設定頁面,勾NVidia web driver使用web driver,再重新開機

基本上可以正常驅動了,如果有碰到其他問題,可以看看這裡

7.系統設定簡介

從左上角的蘋果圖案進入系統偏好設定

桌面與螢幕保護程式

可以設定桌面背景圖片,下面的更換圖片可以設定要多幾更換一次圖片

Dock

就是桌面下方的應用程式欄,可以設定它的大小、位置、其他效果

語言與地區

左邊的加號/減號可以新增/移除語言,可以設定一種語言為主要語言,主要語言即是系統默認的語言,所有界面幾乎都會顯示主要語言,右邊可以選地區、一週的第一天、曆法、時間格式

  

下面的進階點進去可以設定數字、貨幣、度量衡格式

安全性與隱私

設定喚醒是否需要密碼、可執行從什麼來源的App,灰色的要解開左下角的鎖才能設定

鍵盤

設定鍵盤的連續按鍵偵測速度

設定快捷建,在選項右邊的按鍵符號按下滑鼠左鍵,再按下想要設定的快捷鍵就可以更改

建議用Mac鍵盤,因為多了command鍵,在Mac作業系統的刪檔、複製、貼上....都需要command鍵,有Mac鍵盤方便很多,或找到標準鍵盤上對應的command鍵位置去設定(參考這裡)

滑鼠

設定游標移動速度、滾輪捲動速度,捲動方向是滾輪滾的方向和頁面捲動方向要同向或反向

聲音

音效是系統音效,輸出是音訊輸出裝置(喇叭),輸入是音訊輸入裝置(麥克風),可以選內建揚聲器、line out、數位輸出,端看你的硬體

網路

設定你的連線類型

 

日期與時間

設定要自動從網路更新時間或自己設定

選擇時區

設定時間格式

共享

與網路共享資料夾或印表機相關的設定

使用者與群組

管理使用者帳戶、密碼

App Store

與app store相關的設定

桌面左上角有一個finder,點選偏好設定

finder就是Mac作業系統的檔案總管

可以設定側邊欄要顯示哪些位置、是否顯示副檔名

打開應用程式或工具程式資料夾,把你常用的app拖曳到下面的dock,就可以直接在dock啟動了

  

dock上有一個火箭圖示的launchpad,可以看到所有的應用程式

接著做完小細節的修正,就完成啦!

P.S.如果要在Mac作業系統上讀寫外接的硬碟或隨身碟,要先將硬碟或隨身碟格式化成exfat或fat32系統才能識別

P.S.因為真正的iMac最多只能支援2個螢幕的延伸桌面,所以SMBios設定為iMac的,超過2個的螢幕會無法顯示,但Mac pro可以支援2個以上,可以試試SMBios設定為MacPro是否可以顯示2個以上,或嘗試有沒有其他方法,歡迎留言討論

相关文章