主要介紹3個內(nèi)容: 1,磁盤分區(qū)表格式:MBR、GPT 2,BIOS引導(dǎo)模式:Legacy BIOS、UEFI BIOS 3,引導(dǎo)修復(fù)方法:NTBOOTAutofix工具修復(fù)、BOOTICE工具修復(fù) 一、磁盤分區(qū)表格式 一般來說,磁盤分區(qū)表有兩種格式:MBR和GPT MBR分區(qū)表在windows操作系統(tǒng)下最多支持4個主分區(qū)或3個主分區(qū)+1個擴展分區(qū)(包含多個邏輯分區(qū)),擴展分區(qū)必須劃分為邏輯分區(qū)才能使用,1個擴展分區(qū)可以劃分多個邏輯分區(qū) MBR分區(qū)表不支持容量大于2.2TB的分區(qū)(一些硬盤制造商將他們的容量較大的磁盤升級到了4KB的扇區(qū),這意味著MBR的有效容量上限提升到了16 TB) 如下圖是一個MBR分區(qū)表示例:1個主分區(qū)+1個擴展分區(qū)(劃分了3個邏輯分區(qū)) GPT分區(qū)表對分區(qū)數(shù)量沒有限制,但在windows系統(tǒng)上最多可以支持128個主分區(qū) GPT分區(qū)表突破了MBR最大支持2.2T分區(qū)的限制,貌似最大支持18EB的分區(qū) 如下圖是一個GPT分區(qū)表示例:劃分了7個主分區(qū) 二、BIOS引導(dǎo)方式 UEFI BIOS目前主要的系統(tǒng)引導(dǎo)方式也有兩種:傳統(tǒng)的LegacyBIOS和新型的UEFI BIOS 一般來說,有如下兩種引導(dǎo)+磁盤分區(qū)表組合方式:LegacyBIOS+MBR和UEFI BIOS+GPT Legacy BIOS無法識別GPT分區(qū)表格式,所以也就沒有LegacyBIOS+GPT組合方式; UEFI BIOS可同時識別MBR分區(qū)和GPT分區(qū),所以UEFI下,MBR和GPT磁盤都可用于啟動操作系統(tǒng)。不過由于微軟限制,UEFI下使用Windows安裝程序安裝操作系統(tǒng)是只能將系統(tǒng)安裝在GPT磁盤中。 再來說說傳統(tǒng)Legacy BIOS和新型UEFI BIOS引導(dǎo)方式的工作原理吧: Legacy BIOS ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ LegacyBIOS→MBR→“活動的主分區(qū)”→\bootmgr→\Boot\BCD→\Windows\system32\winload.exe ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 傳統(tǒng)Legacy BIOS引導(dǎo)windows操作系統(tǒng)時,是通過一個活動的主分區(qū)下的bootmgr(啟動管理器)文件導(dǎo)入根目錄下boot文件夾里的BCD(啟動設(shè)置數(shù)據(jù))文件,然后BCD文件根據(jù)自身的配置內(nèi)容加載系統(tǒng)啟動文件winload.exe(位置:根目錄\Windows\system32\winload.exe)來啟動系統(tǒng)。 一個BCD文件可以加載多個系統(tǒng)啟動文件從而實現(xiàn)引導(dǎo)多個系統(tǒng)的啟動 通過EasyBCD工具看以看到BCD文件的內(nèi)容,如下是我的win8.1和win10兩個系統(tǒng)的BCD內(nèi)容: 我的windows 8.1在C盤,winload.exe位置:C: \Windows\system32\winload.exe 我的window 10在G盤,winload位置:G: \Windows\system32\winload.exe 通過BCD來加載不同位置的winload.exe來實現(xiàn)這兩個系統(tǒng)的啟動 通過引導(dǎo)修復(fù)工具NTBOOT Autofix查看BCD文件內(nèi)容,如下圖: 需要注意的是:MBR磁盤格式下,windows系統(tǒng)的啟動文件(bootmgr、BCD)必須存放在活動的主分區(qū)內(nèi),這樣才能正常引導(dǎo)系統(tǒng)啟動(MBR磁盤分區(qū)格式下,只允許有一個分區(qū)是活動的)。 如果是使用微軟原版操作系統(tǒng)按照windows安裝程序來進(jìn)行系統(tǒng)安裝,系統(tǒng)會自動創(chuàng)建一個隱藏的活動主分區(qū)(win7貌似是100M,win8貌似是350M)用來存放啟動文件; 如果采用其他安裝方式來安裝系統(tǒng),由于系統(tǒng)默認(rèn)并不會自動創(chuàng)建這個活動的主分區(qū),啟動文件將會存放我們的系統(tǒng)盤里,所以我們在采用其它安裝方式安裝第一個系統(tǒng)時,需要確保安裝系統(tǒng)的分區(qū)是活動的、而且是主分區(qū),而安裝第二個、第三個…系統(tǒng)時,就不必要求必須是主分區(qū)了,邏輯分區(qū)也可以,因為安裝第二個、第三個…系統(tǒng)時,我們已經(jīng)有了一個活動的主分區(qū)了(第一個系統(tǒng)所在的分區(qū)),這個活動的主分區(qū)下的BCD文件里已經(jīng)包含了我們的第二個、第三個…系統(tǒng)的啟動信息用來啟動第二個、第三個…系統(tǒng)。 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ UEFIBIOS→EFI系統(tǒng)分區(qū)(FAT格式的分區(qū))→\efi\Microsoft\boot\bootmgfw.efi→efi\Microsoft\BCD→\Windows\system32\winload.efi ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ UEFI BIOS引導(dǎo)windows系統(tǒng)時,是通過一個FAT格式分區(qū)下的bootmgfw.efi文件來導(dǎo)入BCD文件,然后BCD文件根據(jù)自身的配置內(nèi)容加載系統(tǒng)引導(dǎo)文件winload.efi (對比legacy引導(dǎo)發(fā)現(xiàn),UEFI的引導(dǎo)文件為winload.efi,而Legacy的引導(dǎo)文件為winload.exe) 需要注意的是:GPT磁盤格式下,windows系統(tǒng)的啟動文件(bootmgfw.efi、BCD)是存放在一個FAT格式的分區(qū)里的,有些出廠預(yù)裝win8系統(tǒng)的電腦下將該FAT分區(qū)稱之為ESP分區(qū)或EFI分區(qū) 如下圖,ESP和EFI分區(qū)一般都是隱藏的FAT分區(qū),可以通過DG分區(qū)工具來創(chuàng)建ESP分區(qū),還可以用DG為該分區(qū)添加盤符讓其在資源管理器下顯現(xiàn)出來 可見,UEFI+GPT模式引導(dǎo)windows系統(tǒng)時,并不需要mbr主引導(dǎo)記錄,也不需要活動分區(qū),只需要你一個存放了引導(dǎo)啟動文件的fat格式分區(qū)就可以了,這個fat分區(qū)當(dāng)然也可以是U盤等外接USB設(shè)備了。 就目前情況而言,GPT分區(qū)表磁盤不支持32位的win7以及win7之前的系統(tǒng),支持64位的XP、win7、win8、win10和32位的win8、win10。一般地,GPT磁盤多與64位windows系統(tǒng)組合搭配。 三、引導(dǎo)修復(fù)教程 再來說說引導(dǎo)丟失、損壞導(dǎo)致系統(tǒng)無法正常進(jìn)入情況下,如何通過修復(fù)引導(dǎo)來使系統(tǒng)正常啟動。 引導(dǎo)問題故障舉例: 常見的引導(dǎo)丟失、損壞情況說明如下: 上圖,Winload.exe文件有問題,可見是Legacy BIOS引導(dǎo)文件出錯;如果此處是winload.efi,則應(yīng)推測是UEFI BIOS引導(dǎo)文件出錯。 上圖,NTLDR is missing,NTLDR文件丟失。推斷為:XP等NT5.x架構(gòu)操作系統(tǒng)引導(dǎo)丟失。 NTLDR是如win 2000、XP、win 2003等NT5.x架構(gòu)操作系統(tǒng)的啟動管理器文件,與之對應(yīng)的bootmgr則是如Vista、win7/8/9/2008/2012等NT6.x架構(gòu)操作系統(tǒng)的啟動管理器,如下圖: 上圖,Bootmgr is missing,推斷為:win7、win8等NT6.x架構(gòu)操作系統(tǒng)引導(dǎo)丟失。 引導(dǎo)修復(fù): 針對于以上各種引導(dǎo)問題給出引導(dǎo)修復(fù)解決方法 一般地,引導(dǎo)修復(fù)有很多種方法,牛逼的大神直接使用dos命令來搞定,那么針對于我們普通用戶,我推薦你先使用網(wǎng)絡(luò)上的引導(dǎo)修復(fù)工具來進(jìn)行修復(fù),等到使用熟練了,想多學(xué)習(xí)些技術(shù),這時候再去研究dos命令吧。 下面介紹的兩種方法所涉及到NABOOT Autofix、BOOTICE、DG等工具一般PE下都會集成的,這里就不給大家放單獨的下載鏈接了。PE制作及使用的話,這里就不說了,記得N久N久N久以前就發(fā)過專門的教程了,如果你非要問我關(guān)于PE的東西,請百度“電腦店”“大白菜”“老毛桃”等關(guān)鍵字。 方法一:使用NTBOOT AutoFix工具來修復(fù)引導(dǎo) 引導(dǎo)修復(fù)工具有很多,這里推薦這款工具給大家,上手簡單,操作簡單 如果你的系統(tǒng)無法正常進(jìn)入,那么請到PE下運行NTBOOT AutoFix進(jìn)行修復(fù);如果你是多系統(tǒng),其中有一個系統(tǒng)可以正常進(jìn)入,其它系統(tǒng)引導(dǎo)丟失,那么就可以在這個正常的系統(tǒng)下使用NTBOOT AutoFix進(jìn)行修復(fù),一般PE下都會集成這個軟件。 選擇你的系統(tǒng)盤符,如下圖 可以選擇自動修復(fù)或手動修復(fù) 自動修復(fù):會自動檢測你的所有分區(qū),然后查找到你的分區(qū)上已安裝的系統(tǒng)自動進(jìn)行修復(fù) 手動修復(fù):檢測你的所有分區(qū),查找到你的分區(qū)上已安裝的系統(tǒng),讓你手動決定是否進(jìn)行修復(fù), 如下圖,我選擇了手動修復(fù),檢測到我的G盤安裝了win10,提示我修復(fù)還是跳過,因為我的引導(dǎo)正常,為了給大家演示,我選擇了跳過——不修復(fù),然后檢查到我的C盤安裝了win8.1 必須等到修復(fù)報告建立完成,才可以點擊“退出”完成引導(dǎo)修復(fù) 【注意】 使用該軟件進(jìn)行UEFI+GPT模式系統(tǒng)引導(dǎo)修復(fù)時,需要先掛載ESP/EFI分區(qū),可通過DG等工具為ESP/EFI分區(qū)指定盤符掛載,打開NTBOOT引導(dǎo)修復(fù)工具,在里面選擇ESP/EFI分區(qū)所在盤符,修復(fù)即可 方法二:使用BOOTICE工具來修復(fù)引導(dǎo) 此工具不是專門用來修復(fù)引導(dǎo)的,其功能很是強大,這里只講如何借助它修復(fù)引導(dǎo) 這里我以修復(fù)UEFI+GPT模式下win8和win10雙系統(tǒng)引導(dǎo)為例說明,Legacy+MBR類似 運行BOOTICE后,切換到“BCD編輯”,然后“新建BCD” 新建BCD,文件名為:BCD 然后點擊“查看/修改” 點擊“添加”,選擇“windows vista/7/2008”(這是NT6.x架構(gòu)系統(tǒng),當(dāng)然win8/10也適用) 點擊“添加”后,如下圖為默認(rèn)的初始BCD內(nèi)容,在此基礎(chǔ)上,我們進(jìn)行win8+win10 BCD的修改 按照下圖說明進(jìn)行各項修改,啟動文件winload.efi為UEFI+GPT啟動文件,如果是修復(fù)Legacy+MBR啟動文件,此處應(yīng)為winload.exe。 修改后,點擊“保存到當(dāng)前系統(tǒng)設(shè)置”,這樣,win8的BCD內(nèi)容就添加完成了 接下來,我們按照上面的方法再次添加win10的BCD信息,修改好之后,保存當(dāng)前系統(tǒng)設(shè)置,win10的BCD信息就添加好了;然后再點擊“保存全局設(shè)置”,這樣,win8和win10的引導(dǎo)信息就會保存到我們創(chuàng)建的這個BCD文件中了,如下圖: 創(chuàng)建好BCD文件后,我們只需在PE下將這個BCD替換到相應(yīng)的目錄下就可以完成引導(dǎo)修復(fù)了。上面我們是以UEFI+GPT模式舉例的,隨意此處BCD替換文件的目錄為ESP/EFI這個fat分區(qū):efi\Microsoft\BCD 如果是Legacy+MBR模式,若磁盤有一個隱藏的活動主分區(qū),我們需要先給這個隱藏的主分區(qū)添加盤符(PE下磁盤管理添加盤符或借助DG工具添加),然后將該BCD文件替換到這個活動主分區(qū):\Boot\BCD 方法二,同樣適用于單系統(tǒng)BCD文件的修改;也可以不新建BCD文件,直接對系統(tǒng)中的BCD文件進(jìn)行修改,就省去了替換BCD的步驟,如下: 之后的步驟跟上面一樣。 最后說明下,方法二看起來要比方法一復(fù)雜了許多,但是我為什么還要費如此功夫介紹呢?因為,通過方法二,大家會更加清楚理解UEFI+GPT、Legacy+MBR引導(dǎo)的運行機制,這樣就可以以不變應(yīng)萬變了! 另外,如果你是系統(tǒng)折騰狂的話,通過添加修改BCD文件,你甚至可以制作出支持UEFI和Legacy BIOS 的win7+win8+win10多合一啟動U盤,從而實現(xiàn)一盤在手,天下我有——一個U盤就可以搞定多個系統(tǒng)的安裝! |
|