UEFI引导修复教程
1 T4 N9 n2 w7 p3 M" n" y
/ W! |7 v/ U4 u& _2 ~: c3 @& ~当uefi引导文件损坏,或ghost还原64位系统到C盘,因无uefi引导还是不能启动系统。
; U6 s6 m& t0 m! p# s5 j$ ~怎么修复UEFI引导呢?
0 p! v2 K5 D# N( J7 q- [! u○、UEFI引导基本原理
0 a# J% R1 p1 }5 J" f' C# y1.esp引导分区3 o! ?( k! b! c7 A! [( Q
esp磁盘分区是gpt格式硬盘放efi引导文件的磁盘,在mbr格式硬盘中也可以由任一fat0 |: I9 Z$ P4 G$ G3 r1 E
格式磁盘分区代替0 ]0 t8 O+ M/ f4 Q* f
2.efi文件结构
2 R& E s* n# c7 zefi\boot\bootx64.efi
% c2 V4 H) L2 B7 t9 `$ Vefi\microsoft\boot\bcd( [3 u- r: X ~$ Y$ u+ L
3.efi启动过程+ r* h$ A% }/ N/ w" ^
uefi bios启动时,自动查找硬盘下esp分区的bootx64.efi,然后由bootx64.efi引导
) L0 e; Q: r: I5 Q* N+ B! N8 Cefi下的bcd文件,由bcd引导指定系统文件(一般为c:\windows\system32\winload.efi)9 t# U" I5 f6 e3 v9 q
: v4 N k4 Q6 M3 e1 U+ t
一、用bcbboot自动修复- z% J( P6 \" }8 Z
我们建议大家启动64位8PE,用它带的bcdboot来修复。
& o7 r2 Y2 G. v(一)指定esp分区修复6 n2 }5 G8 ^$ K" ]% d7 @
环境为64位8PE,bios/uefi启动进入下都可以
3 J$ w7 o, h* F* j1.启动64位8PE,并用esp分区挂载器或diskgenuis挂载esp分区
. F, ~" B! M0 `( ?' C1 I. g4 F2.打开cmd命令行,输入以下命令并运行$ U( X& |* S) M. ?
bcdboot c:\windows /s o: /f uefi /l zh-cn
/ f% s" o0 H/ r6 k' T! _* i其中:c:\windows 硬盘系统目录,根据实际情况修改: m n2 [0 S$ }- {- u
/s o: 指定esp分区所在磁盘,根据实际情况修改
5 [2 G6 {8 ?, L% ]+ C' a! S5 Q/f uefi 指定启动方式为uefi
* `4 p3 _4 {. e: D/l zh-cn 指定uefi启动界面语言为简体中文! C) N7 F5 P- e
注:64位7PE不带/s参数,故7PE不支持bios启动下修复2 h$ r3 I' G6 e# t; g3 v0 f; Y
4 n# p( R9 Y! L) t
(二)不指定esp分区修复
, G$ M z5 P0 w- Q [5 v$ x9 Z/ \环境为64位7或8PE,只有uefi启动进入PE才可以8 k3 Y. P( V a5 D8 I- C& m# e6 ?
不用挂载esp分区,直接在cmd命令行下执行: Y' O6 Z: Y6 T
bcdboot c:\windows /l zh-cn
& N& }7 L5 z% A' d/ Y& V其中 c:\windows 硬盘系统目录,根据实际情况修改* k X. f% I/ N) @. J
/l zh-cn 指定uefi启动界面语言为简体中文. C' _0 D/ K1 g1 [
注:在8PE中,我们也可以在uefi启动进入pe后,挂载esp分区用方法(一)修复0 q: S. Q9 X& S
/ t3 _2 M3 Y! y! L* u% Y( o! N6 R(三)用“UEFI引导自动修复”脚本修复0 F' ]( k+ C% ^9 S. r5 U
这个脚本,其实就是用了8PE的bcdboot,来修复uefi引导。测试可以在2003 7 8 PE* R$ r2 F6 A! q
中自动修复uefi引导。
' e* R% j% K8 w# s5 S% X$ S附件提供两套,第一套是程序版,为离弃制作;第二套是pecmd脚本版,由caocaofff制作,都相当完美。+ E8 q( P0 k1 ^$ B7 A
0 f5 M9 A1 I1 ^! t9 U2 F- x6 I3 ?! n/ f- o% t' p2 V5 ~! v- ]: y( `
二、用bootice手动修复: V" Z& Q+ a4 d4 l
从efi引导启动过程来看,虽然它的文件很多,但主要用到的就是两文件,我们完全可以在
1 x% s8 ?- z5 ~4 ]各pe下挂载esp分区,从硬盘系统中复制bootx64.efi文件,然后用用bootice制作好bcd,就
; c# L/ {8 {$ E3 i, o6 Q: A完成efi引导修复。! S/ u" ?" {7 `* M) F- W
1.启动任一pe,用esp分区挂载器或diskgenuis挂载esp分区+ ^6 o/ o4 J! d/ e5 Z
2.查看esp分区是否可正常读写,如不正常可重新格式化为fat16分区格式。. X3 _& x$ u8 U8 m- ~; s
3.在esp分区中建立如下空文件夹结构
& X- A$ o: z" L* K" K9 w: b\efi\boot\ (bootx64.efi等复制): w- P# ~: j* h4 g8 I- J
\efi\microsoft\boot\ (bcd等建立)- Z9 L( p1 y" x9 _7 U; g
4.复制硬盘系统中的bootmgfw.efi(一般在c:\windows\boot\efi下)到esp分区的\efi\boot\, D( |# k5 [# E8 U. m5 I& d
下,并重命名为bootx64.efi
8 C# j. ?& ?1 I0 c3 A5.打开bootice软件,有esp分区的\efi\microsoft\boot\下新建立一bcd文件,
/ }* Q# o: l7 x# G) |3 A0 O2 ~打开并编辑bcd文件,添加“windows vista\7\8启动项,: n# A9 D: d& ]9 @1 ^
指定磁盘为硬盘系统盘在的盘,% b( G# W2 A$ b! ^1 k' n
指定启动分区为硬盘系统分区(一般为c:)
# f# R/ C3 Q- L' N1 }$ I指定启动文件为:\Windows\system32\winload.efi, 是*.efi,不是*.exe,要手工改过来
+ \( G! ~& }1 ~2 I/ Z3 J5 S最后保存当前系统设置并退出。/ @: J$ F( [6 x
这样子,精简的UEFI引导就手工修复了,实机和虚拟机测试通过。" U; \; c. k9 r8 C
注:xpPE不能识别gpt格式的硬盘分区,用2003PE中的disk.sys替换xpPE内核中的相应文件,就
( c' F: r5 ?7 T, r8 N# F& \4 p' J- z可以让xpPE也能识别gpt磁盘格式分区' [0 E' n1 L% n. D" z0 s
指定启动分区不是esp分区所在分区,就是硬盘64位7 8 系统所在分区
2 n! ]! O, X7 l- T指定启动文件为:\Windows\system32\winload.efi, 是*.efi,不是*.exe,要手工改过来
; ~* U( ^0 ?; J0 a# ^; f9 y) X' w" J" W. t) Z3 e
1 H; T9 Z& t% g/ o H; r8 `三、其它问题% p- V+ `" S! T: a' z$ A0 ^
1.手工运行ghost并不会修复esp分区
' K5 x" C* Q1 y2.用老大们的一键还原,现在慢慢加上了还原后esp引导修复功能,如实测深山的一键还原就
; [- F( ^0 j; ~/ p- { s8 T自带esp分区uefi引导修复$ h& t& v5 n' ?: e
3.用微软原版系统光盘安装或PE下安装,当然都会自动修复esp引导。
1 H, P9 r6 L e7 }+ {6 |
! R- z$ k' _+ J( ?% h7 }- d, S" p. v7 n4 v/ `- K- y
无忧启动论坛 毛桃统一PE派 独剑 整理各位老大的资料并汇总,特别是参考了本区版主的视频教程,在于谢谢各位前辈大师的辛苦。
( k% o7 S( {* i" L6 X2013年11月于云南普洱
! V! f2 U1 s- Y; O0 H) X; x* j
; s7 l0 p( y5 y I1 P0 _, K- j$ p附件提供两套uefi引导修复工具,第一套是程序版,为离弃制作;第二套是pecmd脚本版,由caocaofff制作,都相当完美。
* ?9 t: t9 V: s9 r0 E实测可在各PE下完美修复uefi引导。. N4 J+ W. u2 r. W3 b: Z
. n$ i% [' G2 x
UEFI引导修复及教程.rar
(1.44 MB, 下载次数: 3450)
|