UEFI引導修復教程

轉自:http://blog.163.com/ycy_sdfc/blog/static/196180420144183845261/

當uefi引導文件損壞,或ghost還原64位系統到C盤,因無uefi引導還是不能啓動系統。
怎麼修復UEFI引導呢?

UEFI引導基本原理:

  1、esp引導分區
  esp磁盤分區是gpt格式硬盤放efi引導文件的磁盤,在mbr格式硬盤中也可以由任一fat格式磁盤分區代替
  2、efi文件結構
  efi\boot\bootx64.efi
  efi\microsoft\boot\bcd
  3、efi啓動過程
  uefi bios啓動時,自動查找硬盤下esp分區的bootx64.efi,然後由bootx64.efi引導efi下的bcd文件,由bcd引導指定系統文件(一般爲c:\windows\system32\winload.efi)

修復方法:

  一、用bcbboot自動修復
  我們建議大家啓動64位8PE,用它帶的bcdboot來修復。
  (一)指定esp分區修復
  環境爲64位8PE,bios/uefi啓動進入下都可以
  1、啓動64位8PE,並用esp分區掛載器或diskgenuis掛載esp分區
  打開cmd命令行,輸入以下命令並運行
  bcdboot c:\windows /s o: /f uefi /l zh-cn
  其中:c:\windows 硬盤系統目錄,根據實際情況修改
  /s o: 指定esp分區所在磁盤,根據實際情況修改
  /f uefi 指定啓動方式爲uefi
  /l zh-cn 指定uefi啓動界面語言爲簡體中文
  注:64位7PE不帶/s參數,故7PE不支持bios啓動下修復
  (二)不指定esp分區修復
  環境爲64位Win7或Win8PE,只有uefi啓動進入Win PE纔可以
  不用掛載esp分區,直接在cmd命令行下執行:
  bcdboot c:\windows /l zh-cn
  其中 c:\windows 硬盤系統目錄,根據實際情況修改
  /l zh-cn 指定uefi啓動界面語言爲簡體中文
  注:在Win8 PE中,我們也可以在uefi啓動進入Win pe後,掛載esp分區用方法(一)修復
 

  二、用bootice手動修復
  從efi引導啓動過程來看,雖然它的文件很多,但主要用到的就是兩文件,我們完全可以在各Win pe下掛載esp分區,從硬盤系統中複製bootx64.efi文件,然後用用bootice製作好bcd,就完成efi引導修復。
  1、啓動任一Win 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文件,添加“windows vista\7\8啓動項,指定磁盤爲硬盤系統盤在的盤,指定啓動分區爲硬盤系統分區(一般爲c:)
  指定啓動文件爲:\Windows\system32\winload.efi, 是.efi,不是.exe,要手工改過來
  最後保存當前系統設置並退出。

  注:Winxp PE不能識別gpt格式的硬盤分區,用2003PE中的disk.sys替換xpPE內核中的相應文件,就可以讓xpPE也能識別gpt磁盤格式分區
  指定啓動分區不是esp分區所在分區,就是硬盤64位Win7、Win8 系統所在分區
  指定啓動文件爲:\Windows\system32\winload.efi, 是.efi,不是.exe,要手工改過來
  

其它問題

  1、手工運行ghost並不會修復esp分區
  2、用老大們的一鍵還原,現在慢慢加上了還原後esp引導修復功能,如實測深山的一鍵還原就自帶esp分區uefi引導修復
  3、用微軟原版系統光盤安裝或PE下安裝,當然都會自動修復esp引導。

@echo off
:1
title BIOS+UEFI引導修復工具1.1
color 03
echo *******************************************************************************              
echo *                           BIOS+UEFI引導修復工具1.1                          *
echo *                                                                             *
echo *******************************************************************************
echo *                                                                             *
echo *          此工具主要用於修復Windows引導,兼容BIOS啓動和UEFI啓動。            *
echo *          同時也可以用於修復多系統引導                                       *
echo *                                                                             *
echo *******************************************************************************
echo.
set /p A=請輸入Windows所在盤符:
echo.
set /p B=請輸入引導文件所在盤符:
echo.
echo Windwos所在盤符爲%A%,引導文件所在盤符爲%B%。確定要修復嗎?
pause
if exist "%HOMEDRIVE%\Program Files (x86)" (
   goto x64
) else (
   goto x86
)

:x64
echo 正在修復引導。。。
bcdboot64 %A%:\windows /s %B%: /f all /l zh-cn
echo 已完成修復
pause
cls
goto 1

:x86
echo 正在修復引導。。。
bcdboot32 %A%:\windows /s %B%: /f all /l zh-cn
echo 已完成修復
pause
cls
goto 1
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章