Yuki | | 2014年7月31日
Windows引导错误总结
1、BCD配置错误
概述:
这张图片显示的是BCD配置错误导致的引导问题,如何判断呢?很简单,图中明确指出文件是BOOT\BCD,所谓BCD,指的是Boot Configure Data,亦即启动配置数据。在有Windnowso Vista或Windows7的多重操作系统中,系统通过Bootmgr程序导入BCD文件完成启动菜单的引导。并且可用程序来编辑BCD文件,来调整开机默认操作系统和等待时间。
修复:
BCD的修复依赖工具,如果无要求,我们一般采用第三方的一些启动修复工具,比如NTBootAutoFix,BCDAutoFix,稍高级的做法是利用BCDEdit工具来手动编辑BCD,这需要对Windows的引导过程很熟悉,在此不作说明。
我们答题过程中一般不可以涉及第三方软件,因此,我们需要使用微软给我们提供的Windows自带的程序--BCDboot来修复。
如何开启BCDboot,在系统无法启动的情况下,我们通常的建议是,使用微软原版Windows系统安装光盘启动(这里要注意的是,最好是Windows7或者以上版本,低版本的Windows
中不带用BCDboot工具),然后在“现在安装”界面按shift+F10来调出命令提示符(或者可以进入“修复计算机”选择命令提示符,但是稍显麻烦,故直接使用快捷键来实现)。
关于BCDboot的详细命令行解释,可以参考大共享我上传的《BCDboot与DiskPart命令行》一文,在此只作修复方面的命令行应用说明。
首先,我们将引导分为2种模式,一种是传统的BIOS模式,一种是UEFI模式,关于两者的区别,可以参考大共享我上传的《挑战传统BIOS的UEFI固件》一文。下面,分别来介绍两种情况下的启动修复。
(1)、BIOS引导模式
BIOS引导模式对活动分区(引导分区)无特定要求,只要该分区为主分区并且处于激活状态即可,因此,首先,我们需要确定活动分区,一般来说,如果使用原版Windows7(及以上版本的Windows,下同)安装光盘分区的话,会自动划分出一个100M的系统保留分区,用来存放系统引导文件,此时该分区为激活状态。使用该方案的好处是,Windows默认不会为该系统保留分区分配盘符,这样就避免了系统启动引导文件被破坏或者篡改导致无法启动,
这也是很多Windows7激活软件在激活之前要求给系统保留分区分配一个盘符的原因,如果不分配,则引导修改不能成功,也就无法加载动态SLIC完成软激活。
我们可以使用Windows自带的DiskPart工具来查看活动分区,还是在“现在安装“界面,按shift+F10调出命令提示符,安装程序无法创建新的系统分区输入”DiskPart“回车即可调出DiskPart工具,依次输入以下几行命令:
List disk 该命令用于列出已有磁盘,并编号,通常来说硬盘的编号为0
Select disk 0 字面意思即可理解,该命令是选中磁盘0,我们需要选中硬盘
List Partition 该命令用于列出当前选中磁盘上的分区
Select Partition X 该命令用于选择分区,每一个分区前都有分区编号,根据分区编号来选择。
assign letter=f 该命令用于给分区指定盘符f,f可以是任意盘符
好了,现在回到我们的引导问题,假设现在有一台笔记本,BIOS引导Windows7,开机出现
BCD错误配置,我们用上面DiskPart命令得知其有一个系统保留分区并已经将其盘符指定为了Z,Windows所在的分区为C,那么就可以使用BCDboot工具来快速修复启动了。
在命令提示符下输入以下命令:
BCDboot C:\Windows /l zh-cn /s Z:
依次解释几个参数的含义,C:\Windows表示的就是Windows所在的目录,/l指的是BOOTMGR的语言,我选择zh-cn也就是简体中文,/s指的是将启动文件存放到指定的目录,/s后面的路径就是具体的启动文件存放路径。
那么,如果在安装Windows时不是使用Windows安装程序自带的分区工具来分区,而是已经提前分好区了,则在这种情况下没有默认的系统保留分区会被创建,引导分区就是当前的活动分区,假设为C,那么,我们的/s后面的路径就要改为C:,这样执行之后就完成了系统引导的修复。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论