【PE環境 修復引導文件】ghost備份與還原


1 前言

前兩天整理資料,清理磁盤,對電腦(win10 64位系統,GPT磁盤分區,UEFI啟動方式)備份后,嘗試能否正常還原。過程都很順利,但結果不太如意,如下圖(網上截圖,忘了留圖“紀念”)。

BOOT設置的改變並無卵用,用U盤啟動PE系統檢測后,有如下結果

最后一句話顯示,Boot出問題了,也就是在開機啟動時系統引導過程出差錯了。需要進行系統引導修復。下面介紹相應的概念。

 

2 相關概念

  2.1 傳統BIOS啟動與EFI/UEFI

  PC啟動過程中,BIOS(基本輸入/輸出系統,固件)擔負着初始化硬件,檢測硬件功能,以及引導操作系統的責任,在早期,BIOS提供一套運行時的服務程序給操作系統及應用程序使用。BIOS程序存放在ROM中,系統加電時處理器的第一條指令的地址會被定位到BIOS的存儲器中,使初始化程序得到執行。

  EFI(可擴展固件接口)是由Intel主導的PC系統中替代BIOS的升級方案,BIOS以16位匯編代碼,寄存器參數調用方式,靜態鏈接,以及1MB以下內存固定編址的形式存在了十幾年,缺乏文檔,完全基於經驗和晦澀約定的一個事實標准。而EFI用模塊化,C語言風格的參數堆棧傳遞方式,動態鏈接形式構建,是硬件和預啟動軟件間的接口規范。組成成分包括GUID(Globally Unique Identifier,全局唯一標識符)磁盤分區系統(GPT)等。

  UEFI是由EFI 1.10為基礎發展起來的,它的所有者已不再是Intel,而是一個稱作Unified EFI Form的國際組織,貢獻者有Intel,Microsoft,AMI,等幾個大廠,屬於open source,目前版本為2.1(據說已更新),編碼99%都是由C語言完成的。

  2.2 磁盤分區MBR與GPT

有時候,安裝系統會出現如下圖(網絡截圖)的意外現象,提示EFI系統上,windows只能安裝到GPT磁盤。(按理說EFI系統可以安裝到MBR磁盤,只是說GPT磁盤必須要以UEFI啟動,所以該圖出現的問題還不清楚...)

 

  MBR(Master Boot Record硬盤的主引導記錄)只能存在4個主分區。MBR分區結構只能支持到2.2T的硬盤,超過2.2T就必須采用GPT分區。GPT的分區類型由GUID來表示。就Windows而言,采用了GPT的硬盤,要想安裝並啟動Windows操作系統,只能選擇高於XP的64位操作系統,並且采用UEFI方式安裝、引導,否則無法啟動,而包括XP在內及其之前的32位操作系統完全不支持GPT,別說安裝、引導系統,直接無法識別。

  UEFI啟動(Windows操作系統)的話,並不強制要求硬盤必須為GPT分區,而是只要硬盤上存在EFI啟動文件且位於FAT(16/32)分區就可以了(UEFI無法從NTFS分區啟動)。因此如果是小於2.2T的硬盤,不必非得轉換成GPT也可以引導系統啟動。也就是說,UEFI+MBR也是可行的。

  而GPT硬盤的話,則必須使用UEFI引導,BIOS無法原生引導GPT硬盤上的操作系統。可以將MBR磁盤轉換為GPT磁盤,並且只有在磁盤為空的情況下,才可以將GPT磁盤轉換為MBR磁盤。

  2.3 PE、Ghost與U盤啟動

  WINPE(winpe一般是基於winxp系統的,win7pe是基於win7系統的,PE-預安裝環境)簡單的說是一個簡化的小系統,它的界面雖然和WINXP差不多,可是功能不完全,只能在上面執行一些電腦的最基本操作,包括硬盤問題修復。

  Ghost(幽靈)軟件是美國賽門鐵克公司推出的一款出色的硬盤備份還原工具,可以實現FAT16、FAT32、NTFS、OS2等多種硬盤分區格式的分區及硬盤的備份還原。俗稱克隆軟件。是用來做硬盤和系統備份的,操作簡單,但是前提是要有.GHO備份文件。

  總的來說,PE可以理解為一個縮水的windows操作系統,存儲於磁盤中,並完全運行於內存,擁有較為完整的操作系統界面,但不是每個程序都能正常運行,通常PE系統中會集成一些磁盤分區、GHOST類的軟件,而GHOST只是一種軟件,用於完整地備份和恢復某個磁盤分區或者整個磁盤,也可以用GHO格式的磁盤鏡像中恢復指定分區,通常用於快速安裝操作系統或者進行系統還原使用。總結:前者是操作系統類軟件,后者是應用程序

  2.4 GHO與ISO文件

  ISO 擴展名是光盤鏡像格式。並不是系統文件。GHO 為ghost備份后的備份文件。有與沒有跟ISO沒關系。一般網上的Ghost系統都是打包成ISO格式以方便刻錄成光盤。里面都含有Gho文件,可以把它解出來單獨使用。即網上下載的GHOST系統安裝文件一般為ISO文件,里面包含有GHO文件和相應的系統安裝器(exe-可執行文件)。完整過程見參考資料[3]。

  2.5 主分區、擴展分區、邏輯分區

  主分區是一個比較單純的分區,通常位於硬盤的最前面一塊區域中,構成邏輯C磁盤。在主分區中,不允許再建立其它邏輯磁盤。 
  擴展分區的概念則比較復雜,也是造成分區和邏輯磁盤混淆的主要原因。由於硬盤僅僅為分區表保留了64個字節的存儲空間,而每個分區的參數占據16個字節,故主引導扇區中總計可以存儲4個分區的數據。操作系統只允許存儲4個分區的數據,如果說邏輯磁盤就是分區,則系統最多只允許4個邏輯磁盤。對於具體的應用,4個邏輯磁盤往往不能滿足實際需求。為了建立更多的邏輯磁盤供操作系統使用,系統引入了擴展分區的概念。 
所謂擴展分區,嚴格地講它不是一個實際意義的分區,它僅僅是一個指向下一個分區的指針,這種指針結構將形成一個單向鏈表。這樣在主引導扇區中除了主分區外,僅需要存儲一個被稱為擴展分區的分區數據,通過這個擴展分區的數據可以找到下一個分區(實際上也就是下一個邏輯磁盤)的起始位置,以此起始位置類推可以找到所有的分區。無論系統中建立多少個邏輯磁盤,在主引導扇區中通過一個擴展分區的參數就可以逐個找到每一個邏輯磁盤。 
需要特別注意的是,由於主分區之后的各個分區是通過一種單向鏈表的結構來實現鏈接的,因此,若單向鏈表發生問題,將導致邏輯磁盤的丟失。 

  通常的理解是,一個硬盤的主分區是包含操作系統啟動所必需的文件和數據的硬盤分區,要在硬盤上安裝操作系統,則該硬盤必須得有一個主分區。
  擴展分區也就是除主分區外的分區,但它不能直接使用,必須再將它划分為若干個邏輯分區才行。邏輯分區也就是我們平常在操作系統中所看到的D、E、F等盤。不管使用哪種分區軟件,我們在給新硬盤上建立分區時都要遵循以下的順序:建立主分區→建立擴展分區→建立邏輯分區→激活主分區→格式化所有分區。

 

3 U盤啟動PE系統及修復引導配置詳細步驟

  3.1 關於PE系統

雖然PE系統精簡化了,但如果PC系統在日常使用過程中遇到問題,比如,無法正常啟動,想要備份系統,想要還原到之前的版本等,就能發揮強大的作用了。較常用的包括Diskgenius分區工具、硬盤內存掃描檢測工具、破解Windows登陸密碼、核心功能GHOST備份還原、系統啟動引導修復等。

  3.2 修復引導配置

  關於GHOST備份還原,過程比較簡單,大家可以直接檢索,網上有相關的經驗介紹。

  關鍵在於還原后的系統能否正常運行。下面直接進入引導修復的配置環節,具體參考資料[5]。

  <用bootice手動修復>

  從efi引導啟動過程來看,雖然它的文件很多,但主要用到的就是兩文件,我們完全可以在各pe下掛載esp分區,從硬盤系統中復制bootx64.efi文件,然后用bootice制作好bcd,就完成efi引導修復。詳細步驟如下

1)啟動任一pe,用esp分區掛載器或diskgenuis掛載esp分區;

2)查看esp分區是否可正常讀寫,如不正常可重新格式化為fat16分區格式;

3)在esp分區中建立如下空文件夾結構

\efi\boot\   (bootx64.efi等復制)

\efi\microsoft\boot\ (bcd等建立)

4)復制硬盤系統中的bootmgfw.efi(一般在c:\windows\boot\efi下)到esp分區的\efi\boot\下,並重命名為bootx64.efi

5)打開bootice軟件,有esp分區的\efi\microsoft\boot\下新建立一bcd文件,打開並編輯bcd文件,如圖為編輯界面:

  a)添加“windows vista\7\8啟動項(圖中白框下面的選項“添加”)

  b)指定磁盤為硬盤系統盤在的盤

  c)指定啟動分區為硬盤系統分區(一般為c:)

  d)指定啟動文件為:\Windows\system32\winload.efi, 是*.efi,不是*.exe,要手工改過來
  e)最后保存當前系統設置並退出。
這樣子,精簡的UEFI引導就手工修復了。重啟即進入還原后的系統。
注:XP PE不能識別GPT格式的硬盤分區,用2003PE中的disk.sys替換xpPE內核中的相應文件,就可以讓XP PE也能識別GPT磁盤格式分區
指定啟動分區不是esp分區所在分區,就是硬盤64位7 8系統所在分區
指定啟動文件為:\Windows\system32\winload.efi, 是*.efi,不是*.exe,要手工改過來

 

4 參考資料

[1]概念介紹 http://www.360doc.com/content/14/0923/16/10366845_411787717.shtml

[2]概念介紹 http://zhidao.baidu.com/link?url=hMEp5K4zyGKDYyi5KOx_lmHzLgv46h3SuCjdsePBdQnPO-fAYLPaupAzgN63K-XBFTZVdLgH-R2UGNmUi6tbc0CRa5QJzlFo1icmVhBDqZm

[3]ISO文件單獨提出GHO文件進行系統安裝  http://zhidao.baidu.com/question/168461585.html?qbl=relate_question_0&word=gho%D3%EBiso%D7%B0%CF%B5%CD%B3%CA%B1%D3%D0%CA%B2%C3%B4%C7%F8%B1%F0

[4]硬盤分區 http://zhidao.baidu.com/link?url=fQrKTCfTN9ewUvQ3mvI-yOMqN_SUY1BJ9lgsDNxodRZ-0pNliuui0ttK20A4XN1dkBtTCseHpofTR2yZjno0BK

[5]修復啟動引導 http://bbs.wuyou.net/forum.php?mod=viewthread&tid=323759

 

5 期望

有時間的話再嘗試多系統安裝,比如WIN7系統和Ubuntu系統,建立好開發環境。

 

6 題外話

1)由於EFI驅動開發簡單,所有的PC部件提供商都可以參與,情形非常類似於現代操作系統的開發模式,這個開發模式曾使Windows在短短的兩三年時間內成為功能強大,性能優越的操作系統。基於EFI的驅動模型可以使EFI系統接觸到所有的硬件功能,而在BIOS中添加幾個簡單的USB設備支持都曾使很多BIOS設計師痛苦萬分。

2)UEFI已具備文件系統的支持,它能夠直接讀取FAT分區中的文件。什么是文件系統?簡單說,文件系統是操作系統組織管理文件的一種方法,直白點說就是把硬盤上的數據以文件的形式呈現給用戶。Fat32、NTFS都是常見的文件系統類型。

3)可開發出直接在UEFI下運行的應用程序,這類程序文件通常以efi結尾。既然UEFI可以直接識別FAT分區中的文件,又有可直接在其中運行的應用程序。那么完全可以將Windows安裝程序做成efi類型應用程序,然后把它放到任意fat分區中直接運行即可,如此一來安裝Windows操作系統這件過去看上去稍微有點復雜的事情突然就變非常簡單了,就像在Windows下打開QQ一樣簡單。

4)一台PC多用戶(參考網上相關回答)

  a)當使用電腦時,每個用戶是獨立工作的,只能相互切換使用。
  b)當切換到另一用戶操作時,不影響原用戶的程序(只是暫時保留活動,呈現睡眠狀態)。
  c)但如果以管理員Administrator進入系統,對程序進行刪除、卸載時,會影響到另一個用戶的使用。
  d)所以,除了卸載程序外,電腦在兩個用戶間切換是不影響的。

小結:原則上多用戶操作系統是互不影響的,但是如果你是以管理員身份登陸的,在進行程序的刪減時就會影響到其他用戶,而且在進行對其他用戶有影響的操作時,系統會自動的對你提出警告的,該操作對其他用戶有影響,是否繼續進行。

(轉載請附帶上所有的參考資源,有錯誤可以尋溯到出處,知錯能改,善莫大焉……  最后,感謝互聯網!)

5)關於引導文件

 

BIOS+MBR

UEFI+GPT

組成結構

(非)隱藏、活動的主分區

ESP分區+主分區

引導文件所在分區

與系統在同一分區根目錄/不在同一分區(只需活動主分區)

ESP分區

引導文件關鍵(相同)

分區屬性+引導程序

分區屬性+引導程序

小結:兩者的系統文件(操作系統)一樣,僅引導方式不同。

6)制作啟動U盤

  <6.x與5.x>

 

  <隱藏選項>

  <制作U盤啟動>注意寫入方式與引導扇區

  <制作WIN10安裝U盤>注意寫入方式與引導扇區

 

7)關於備份工具

  <Ton8PE>

良心作品,但版本較低,適用於傳統BIOS啟動恢復、備份與還原。

  <大白菜>

最新版啟動方式為UEFI啟動,可以理解為Ton8PE的升級版。

  <dism++>

沒有使用過,但網絡評論說ghost備份還原已過時,推薦此工具

 

小結:目前使用大白菜工具進行備份與還原,同時附加系統引導修復。

21:29:22 2016-06-10

進擊的石頭


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM