BIOS“启动”操作系统的过程叫做引导。
如果引导出现问题,系统一定会无法启动;反过来系统无法启动,不一定是引导的问题。
引导失败的界面一般用不了鼠标,许多人就会手足无措。
但其实修复引导是非常简单的,比重装系统省事太多了。而且几乎没有代价,属于保守修复。
如果成功修复引导后故障仍然存在,那问题就不出在引导上。这句像废话的话的意思是,你可以专注于思考其它环节的问题。当然要保证是成功修复引导。
本文不会解释引导的原理,也不负责Linux和黑苹果。只管Windows的引导。
前两幅图还有可能是硬盘没有插好,或者硬盘数据线故障,或者硬盘挂了。如果在PE的DG里看不到就是这样。也有可能是mbr主分区没有激活。
第三幅图是BCD出错,第四幅图是bootmgr没了,这俩就一定是引导的问题了。后者xp显示的是ntldr is missing。
第五幅图是Win7的软SLIC出了问题。
重启后一直反复进RE,也可以尝试重新生成引导。
首先需要一个优盘和另外一台好的电脑制作一个PE。如果没有就不用自己修了,找朋友修吧。
最可靠、我用的最多的修复引导的程序,就是bcdboot,具体见下一段。
如果有Dism++,可以使用 恢复功能 – 引导修复。此功能是bcdboot的傻瓜式封装。如果你从没用过命令行程序,可以选择用此项。
RE的疑难解答 – 启动修复有可能可以,但我不确定,主要是它做了什么事是不可见的。
微PE里附带的“UEFI引导修复”我从来没用成功过。
此程序是微软编写的,因此非常可靠。但是此工具是命令行程序,没接触过会有一点点门槛。
Vista/Win7后自带,合格的PE也都会带。如果一定要用最新版,可从Windows ADK中获取。
用法:PE下win+r,cmd。输bcdboot c:windows
即修复完成;Legacy/UEFI自动选择。
如果想指定EFI分区,可以先用mountvol或打开WinNTSetup挂载,然后用bcdboot c:windows /s z: /f UEFI
,其中z是EFI分区。
直接只输bcdboot就会显示出这两个用法,所以参数不用死记;一些其它功能也在帮助里面。
这个非常可靠的程序还是有可能失败,错误信息是“尝试复制启动文件失败”。
此时需要使用它的/v参数:verbose详细模式。此参数可能会显示出错误的完整原因,而不是只说失败了。
已知系统过度精简会导致失败:bcdboot需要使用C:WindowsBoot下的文件,如果精简掉了这个就会失败。
也有可能是释放映像失败,或者选错了分区。这俩就不是引导的问题了。
不清楚MBR主分区没有激活会不会导致失败,反正用DG或者分区助手检查一下吧。
其实我最近才意识到这程序是有/v的,之前失败时直接束手无策了。所以积累的经验不多。
bcdedit:允许详细编辑BCD的条目。它是bcdboot的兄弟,也是微软出品,但是它的命令行比bcdboot复杂很多。
bootsect:还是是微软出品的程序,它比bcdboot还要简单,而且允许修复xp的引导。但是对UEFI的支持不好。
bootrec:过时了,不要用。
bootice:国产的处理引导的多功能软件,功能之一是编辑BCD条目。单文件体积小,合格的PE都会带;可惜有一段时间没有更新了。
EasyBCD:有名的国外的图形化编辑BCD和Grub的软件。不过我没用过。PE可能不自带,下载最新版需要注册,有点麻烦
关闭Secure Boot。
引导指向了错误的Windows分区,或者映像释放失败。总之就是只有引导,没有Windows本体。
嗯……理论和实际总是有差别。修一台反复显示“正在诊断你的电脑”的本子,先试了一下安全模式,进不去;用bcdboot重新生成了引导,还是没用。但此时发现RE里的重置不见了,高级选项里的那些什么CMD、启动修复、系统还原、卸载更新都在,说明RE的映像是存在的,但就是重置没有了;而在bcdboot之前是有的。这个还是很坑的,因为重置相比于重装属于保守的方式。其实我不知道为什么微软不提供在PE里重置的方式?而且为什么重置有时需要OS映像有时又不需要?