我有一臺(tái)裝有黑蘋果的電腦,MacOS和Win10分別裝在兩個(gè)不同的固態(tài)硬盤中匿沛,Opencore引導(dǎo)安裝在有MacOS系統(tǒng)的固態(tài)硬盤的EFI分區(qū)下,所以想進(jìn)MacOS系統(tǒng)時(shí)必須得把其所在的硬盤提到第一順序上來(lái)榛鼎,然后進(jìn)Win10就得提它所在的盤到第一順序上來(lái)逃呼,這樣感覺(jué)特別麻煩鳖孤,就想,能不能用Opencore來(lái)引導(dǎo)這兩家的系統(tǒng)抡笼?
答案是肯定的苏揣,但是一開始我是不成功的。
首先蔫缸,我這種雙硬盤腿准,分開安裝兩個(gè)系統(tǒng)的方案是最安全,設(shè)置也最簡(jiǎn)便的拾碌,opencore官網(wǎng)教程如是說(shuō)吐葱。
一開始,我信心滿滿校翔,因?yàn)楫?dāng)我把兩個(gè)硬盤都掛上的時(shí)候弟跑,我看到Opencore 開機(jī)的第一選項(xiàng)默認(rèn)就是Windows,開心的選擇它開機(jī)防症,也確實(shí)出現(xiàn)了Windows開機(jī)畫面孟辑,然后就是藍(lán)屏,與時(shí)俱進(jìn)的藍(lán)屏——帶二維碼的藍(lán)屏蔫敲!嚇得我趕緊網(wǎng)上查什么原因饲嗽,有說(shuō)嘗試打開 Booter-Quirks-SyncRuntimePermissions 的,有說(shuō)在Misc-HideSelf去掉勾選奈嘿,然后在Misc-BlessOverride添加\EFI\Microsoft\Boot\bootmgfw.efi子選項(xiàng)的貌虾,有說(shuō)打打ACPI補(bǔ)丁的,我的ACPI是我根據(jù)官網(wǎng)教程自己用軟件制作的裙犹,應(yīng)該沒(méi)問(wèn)題尽狠,就試了一下調(diào)參數(shù),還是不行叶圃。
網(wǎng)上有些人說(shuō)袄膏,像我這樣的雙系統(tǒng)他們什么都不用做,就能很好的引導(dǎo)win10掺冠,為什么到了我這里就不行了沉馆?問(wèn)題出在哪里?這點(diǎn)困擾了我很長(zhǎng)一段時(shí)間德崭,前兩天換了一個(gè)平臺(tái)才搞明白悍及,原來(lái)是EFI引導(dǎo)搞的鬼。之前接癌,我用的平臺(tái)是老舊平臺(tái),也就是傳統(tǒng)的BIOS legacy引導(dǎo)扣讼,黑蘋果也是在Opencore里模擬的EFI環(huán)境來(lái)啟動(dòng)的缺猛,而到了引導(dǎo)win10就不行了,明明win10的所在的硬盤由MBR轉(zhuǎn)成了GPT,也創(chuàng)建了EFI引導(dǎo)所要求的ESP分區(qū)荔燎,也通過(guò)微盤PE之類的PE系統(tǒng)修復(fù)了UEFI引導(dǎo)耻姥,可就是一引導(dǎo)就藍(lán)屏!搞得我不得已有咨,又轉(zhuǎn)回MBR分區(qū)表琐簇,然后通過(guò)PE系統(tǒng)修復(fù)MBR引導(dǎo),用著傳統(tǒng)的引導(dǎo)模式使用著win10座享,總有點(diǎn)不舒服的感覺(jué)婉商,就是一朵鮮花插在牛糞上的感覺(jué)!
前兩天渣叛,我靈機(jī)一動(dòng)丈秩,會(huì)不會(huì)是因?yàn)槲夷翘灼脚_(tái)太老舊了,不是真正的帶UEFI引導(dǎo)的主板造成的淳衙,想到這點(diǎn)蘑秽,立馬換了一套平臺(tái),酷睿四代的平臺(tái)箫攀,主板也是配套的帶UEFI引導(dǎo)的肠牲,首先,又是一頓反轉(zhuǎn)操作靴跛,用PE系統(tǒng)的diskgenius把分區(qū)表由MBR轉(zhuǎn)換成GPT的缀雳,然后用PE系統(tǒng)自帶的修復(fù)引導(dǎo)軟件,選擇修復(fù)UEFI引導(dǎo)汤求,把EFI引導(dǎo)修復(fù)了俏险,再次開機(jī),這回選擇第一選項(xiàng)Windows扬绪,成功引導(dǎo)進(jìn)入系統(tǒng)竖独,證明Opencore確實(shí)是能做到MacOS及Windows雙引導(dǎo)。
那為什么我之前的老舊平臺(tái)不行呢挤牛?問(wèn)題就是出在EFI引導(dǎo)上莹痢。老舊平臺(tái)不帶EFI引導(dǎo)功能,所以墓赴,雖然硬盤分區(qū)是按照EFI引導(dǎo)的要求建立了一個(gè)ESP分區(qū)竞膳,然后也修復(fù)了UEFI引導(dǎo),這里所謂的修復(fù)UEFI引導(dǎo)诫硕,其實(shí)就跟opencore引導(dǎo)是一樣的坦辟,只不過(guò)是把EFI引導(dǎo)所需的文件拷貝到ESP分區(qū)而已,所以有了這些引導(dǎo)文件后的ESP分區(qū)并不就意味著有了EFI環(huán)境了章办,還得模擬一把锉走,而之前我犯了一個(gè)常識(shí)性的錯(cuò)誤滨彻,在MacOS系統(tǒng)所在的硬盤的EFI分區(qū)是安裝了模擬EFI環(huán)境的DuetPkg的,而我就據(jù)此認(rèn)為挪蹭,Windows系統(tǒng)所在的盤也有了EFI環(huán)境了亭饵,因?yàn)槲沂怯玫膐pencore在引導(dǎo)嘛,而opencore所在的盤是有模擬了EFI環(huán)境了梁厉,所以它應(yīng)該也能傳導(dǎo)到win10所在的盤辜羊,但事實(shí)情況不是如此,它們兩個(gè)是獨(dú)立的词顾!我需要在的win10所在的硬盤的ESP分區(qū)上安裝模擬EFI環(huán)境的DuetPkg八秃。我之前的文章上有寫怎么安裝這個(gè)模擬環(huán)境,使用Bootice這個(gè)小工具可以做到计技。
我很多年之前就養(yǎng)成了系統(tǒng)出故障不重裝的習(xí)慣喜德,不管是藍(lán)屏還是引導(dǎo)損壞,或是驅(qū)動(dòng)故障還是病毒所致(很少碰到)垮媒,基本都能搞定舍悯,算下來(lái),Windows系統(tǒng)已經(jīng)穩(wěn)定的運(yùn)行十多年了睡雇,從來(lái)沒(méi)有重裝過(guò)萌衬,從windows XP升級(jí)到windows 7, 整個(gè)win7的生命周期安然渡過(guò),直到某天被自動(dòng)升級(jí)到win10它抱,到了win11秕豫,實(shí)在是老舊平臺(tái)(第一代酷睿平臺(tái))不支持了,才換了一個(gè)四代的平臺(tái)观蓄,但系統(tǒng)依然是之前從win7升上來(lái)的win10系統(tǒng)混移。
UEFI引導(dǎo)的主板出來(lái)后相當(dāng)長(zhǎng)一段時(shí)間,我用的依然是老舊平臺(tái)侮穿,所以對(duì)于UEFI引導(dǎo)以及BIOS legacy引導(dǎo)處于一知半解的狀態(tài)歌径,因?yàn)闆](méi)有用過(guò)UEFI平臺(tái)的主板,我認(rèn)為我對(duì)EFI引導(dǎo)沒(méi)怎么搞清楚亲茅,也確實(shí)是這樣回铛。幫同事從舊平臺(tái)切換到UEFI平臺(tái)的時(shí)候,嚇過(guò)幾次克锣,直接把帶系統(tǒng)的硬盤掛到新平臺(tái)上茵肃,進(jìn)不了系統(tǒng),由于是生產(chǎn)環(huán)境使用的硬盤袭祟,加上多年養(yǎng)成的習(xí)慣验残,肝了一兩次到深夜才解決,bcdedit修復(fù)啟動(dòng)項(xiàng)也摸過(guò)好幾回巾乳,修復(fù)引導(dǎo)也試過(guò)好多回胚膊,還是不太懂其中的原理故俐,后來(lái)玩opencore,才慢慢有些理解EFI引導(dǎo)這玩意紊婉。
之前就說(shuō)過(guò),作為大一統(tǒng)的windows辑舷,其兼容性之強(qiáng)是其他系統(tǒng)所無(wú)法比擬的喻犁,在windows7出來(lái)后,就要考慮到市面上既有老舊平臺(tái)何缓,又有UEFI的平臺(tái)肢础,并且新出來(lái)的UEFl引導(dǎo)的主板也向下兼容,可以設(shè)定為使用傳統(tǒng)引導(dǎo)模式碌廓,也就是主板的CSM兼容模式選項(xiàng)传轰,那么它安裝時(shí)就得有一個(gè)判斷機(jī)制來(lái)辨別這種差別,以便安裝不同的引導(dǎo)谷婆,通過(guò)以管理員身份運(yùn)行命令提示符工具輸入:bcdedit /enum命令慨蛙,接下來(lái)的輸出如果看到Winload.efi,則說(shuō)明這是通過(guò)EFI引導(dǎo)的纪挎。
如果看到是winload.exe期贫,則表明是MBR分區(qū)表的傳統(tǒng)BIOS引導(dǎo),也叫 legacy 引導(dǎo)
一個(gè)傳統(tǒng)的MBR分區(qū)表的硬盤如下:
當(dāng)然异袄,你看到的這張圖通砍,是我從GPT分區(qū)表強(qiáng)行轉(zhuǎn)成MBR后的樣子,所有在系統(tǒng)盤分區(qū)前面還有一個(gè)小分區(qū)烤蜕,就是所謂的ESP分區(qū)封孙,不過(guò)在轉(zhuǎn)為MBR分區(qū)表后,它就是一個(gè)普通FAT32分區(qū)了讽营。
帶EFI分區(qū)的GPT分區(qū)表的樣子:
比前圖比起來(lái)虎忌,就是在分區(qū)圖前面的描述有點(diǎn)不同,一個(gè)是基本MBR斑匪, 一個(gè)是基本GPT呐籽,但是對(duì)于ESP分區(qū)所占的盤符的稱呼不同了,MBR分區(qū)下蚀瘸,就叫“本地磁盤”狡蝶,在GPT分區(qū)表下叫"ESP",前者是一個(gè)普通的贮勃,可用來(lái)存放文件的磁盤分區(qū)贪惹,后者,是一個(gè)特定作用的磁盤分區(qū)寂嘉,一般用來(lái)存放EFI引導(dǎo)用的文件奏瞬。
可以看到我的這個(gè)硬盤的ESP分區(qū)枫绅,也就是EFl引導(dǎo)用來(lái)存放文件所在的分區(qū),大小為600MB硼端,分區(qū)格式為FAT32, 如果使用系統(tǒng)安裝盤安裝系統(tǒng)時(shí)并淋,默認(rèn)的分區(qū)大小是200MB,該分區(qū)為隱藏分區(qū)珍昨,且不可讀寫县耽,用diskgenius給該分區(qū)指定盤符后,在PE系統(tǒng)里可以掛載到根目錄下镣典,變成一個(gè)普通的可讀寫的分區(qū)兔毙,在Windows系統(tǒng)下面,里面的文件是這樣的:
有很多從WinXP升級(jí)到Win7的用戶兄春,盡管其用著新平臺(tái)澎剥,但其引導(dǎo)模式依然是MBR+傳統(tǒng)Bios引導(dǎo),另一些用戶由于分區(qū)是MBR分區(qū)赶舆,主板的CSM兼容模式默認(rèn)打開哑姚,然后安裝的時(shí)候自然也就是傳統(tǒng)引導(dǎo)模式了,又加上早些年固態(tài)硬盤貴涌乳,自然就看那用不上的200MB分區(qū)礙眼蜻懦,總想把它刪了然后利用上,對(duì)于非UEFl引導(dǎo)來(lái)說(shuō)夕晓,這沒(méi)毛病宛乃。
實(shí)際上,當(dāng)我把GPT分區(qū)轉(zhuǎn)為MBR后蒸辆,那600MB的ESP分區(qū)真的好想刪了它征炼!但是我不能夠這樣做!
UEFl引導(dǎo)的引導(dǎo)文件在ESP分區(qū)下躬贡,傳統(tǒng)引導(dǎo)的引導(dǎo)文件在C盤的Windows文件夾下谆奥,那傳統(tǒng)引導(dǎo)的Windows系統(tǒng)的EFl引導(dǎo)文件在哪里?我們知道傳統(tǒng)引導(dǎo)的系統(tǒng)用不上這些文件拂玻,但用不上是一回事酸些,有沒(méi)有又是另一回事,出于兼容性考慮檐蚜,Windows系統(tǒng)是兩種引導(dǎo)的引導(dǎo)文件都有的魄懂,不管有沒(méi)有UEFl引導(dǎo)專用的ESP分區(qū),這些用于UEFl引導(dǎo)的文件位于C:\Windows\Boot\EFI文件夾之下闯第,沒(méi)有PE系統(tǒng)的時(shí)候市栗,可以把硬盤掛在另一臺(tái)電腦上,然后直接把這些文件拷貝過(guò)去,應(yīng)該跟修復(fù)引導(dǎo)的做法是一樣的功效填帽。
好了蛛淋,前面說(shuō)了這么多,就是想搞明白篡腌,傳統(tǒng)的BIOS引導(dǎo)的主板能不能夠使用Opencore的多引導(dǎo)功能褐荷,答案是肯定的,另外哀蘑,我試過(guò)了诚卸,在config.plist文件里Misc-BlessOverride加不加\EFI\Microsoft\Boot\bootmgfw.efi子選項(xiàng),都沒(méi)有影響绘迁,只要如下操作就能行:
1、用PE盤的diskgenius工具把硬盤的分區(qū)表用由MBR轉(zhuǎn)為GPT
2卒密、如果沒(méi)有EFI分區(qū)缀台,要調(diào)整系統(tǒng)盤C盤的空間以方便新建一個(gè)ESP分區(qū)
3、用PE盤的修復(fù)引導(dǎo)工具修復(fù)一下UEFI引導(dǎo)
4哮奇、用PE盤的bootice扇區(qū)編輯工具修復(fù)一下主引導(dǎo)記錄膛腐,以及分區(qū)表引導(dǎo)記錄
修復(fù)主引導(dǎo)記錄時(shí)選中要修復(fù)引導(dǎo)的磁盤,對(duì)應(yīng)的文件為boot0;
修復(fù)分區(qū)表引導(dǎo)記錄時(shí)選中要選擇EFI引導(dǎo)的ESP分區(qū)鼎俘,對(duì)應(yīng)的文件為boot1f32
把bootX64文件拷貝到EFI分區(qū)根目錄下并更名為:boot
以上三個(gè)文件在openocore的Utilities\LegacyBoot文件夾里面哲身,做完這些后,你的傳統(tǒng)BIOS主板就搖身一變成帶UEFI引導(dǎo)環(huán)境的主板了贸伐,這是一種軟實(shí)力提升勘天,然后就可以愉快地使用opencore引導(dǎo)來(lái)玩耍MacOS和Windows10雙系統(tǒng)了。
題外話:如果你的黑蘋果系統(tǒng)是安裝在移動(dòng)硬盤里的捉邢,把win10系統(tǒng)的EFI引導(dǎo)分區(qū)里的Micosoft文件夾拷貝到黑蘋果的EFI分區(qū)下面的EFI文件夾里面的話脯丝,開機(jī)進(jìn)入Opencore引導(dǎo)畫面,將會(huì)看到有兩個(gè)windows引導(dǎo)選項(xiàng)伏伐,其中一個(gè)被標(biāo)上了(external)宠进,也就是從外部設(shè)備啟動(dòng)windows的意思,我試過(guò)了藐翎,都是可以的材蹬,相當(dāng)于有了一備份的引導(dǎo)。