当uefi引导文件损坏,或ghost还原64位系统到C盘,因无uefi引导还是不能启动系统。
那么怎么修复UEFI引导呢,首先必须得在winpe下,毕竟引导坏了是进不了系统的,用U盘做个启动盘都带winpe?
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)
一、用 BCDrepair自动修复
1、依次点击winpe左下角“开始菜单—引导修复—BCDrepair引导修复工具”选项,如下图所示:
2、在打开的BCDrepair引导修复工具窗口中,根据菜单选择数字键“1”进行修复,如下图所示:
3、在弹出的界面中,选择自动修复对应的数字键“1”,如下图所示:
4、随后在弹出的界面提示修复已完成,如下图所示:
二、用bcbboot自动修复
我们建议大家启动64位8PE,用它带的bcdboot来修复。
(1)指定esp分区修复
环境为64位8PE,bios/uefi启动进入下都可以
1.启动64位8PE,并用esp分区挂载器或diskgenuis挂载esp分区
2.打开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启动下修复
(2)不指定esp分区修复
环境为64位7或8PE,只有uefi启动进入PE才可以
不用挂载esp分区,直接在cmd命令行下执行:
bcdboot c:\windows /l zh-cn
其中 c:\windows 硬盘系统目录,根据实际情况修改
/l zh-cn 指定uefi启动界面语言为简体中文
注:在8PE中,我们也可以在uefi启动进入pe后,挂载esp分区用方法(一)修复
(3)用“UEFI引导自动修复”脚本修复
这个脚本,其实就是用了8PE的bcdboot,来修复uefi引导。测试可以在 7 8 PE
中自动修复uefi引导。
附件提供两套,第一套是程序版,为离弃制作;第二套是pecmd脚本版,由caocaofff制作,都相当完美。
三、用bootice修复
在winpe下找到bootice并打开,首先选择“系统对应的磁盘”,然后再点击“主引导记录(M)”,到这步了。
4、我们可以看到的是在弹出的窗口中先点击“windows NT5.x/6.x MBR”,后点击“安装/配置”按钮。
5、接着可以看到的是在弹出的窗口中选择对应的类型(win7的选择Windows NT 6.x,WinXP的选择Windows NT 5.x),弹出提示框点击确定。
7、接着在回到带bootice主界面,保持目标磁盘不变,这次点击“分区引导记录(P)”
8、这时会弹出“引导文件重命名”窗口,对于里面的内容不做修改,直接点击“确定”就行了。
四、其它问题
1.手工运行ghost并不会修复esp分区
2.用老大们的一键还原,现在慢慢加上了还原后esp引导修复功能,如实测深山的一键还原就自带esp分区uefi引导修复
3.用微软原版系统光盘安装或PE下安装,当然都会自动修复esp引导。
以上实测可在各PE下完美修复uefi引导,当然这些uefi修复工具都是winpe自带的,一般都带其中之一,也有比较全面的winpe是全带的,所以大家遇到系统进不去的时候不妨先试着修复引导。