win7引修复.docVIP

  • 10
  • 0
  • 约6万字
  • 约 17页
  • 2016-12-08 发布于河南
  • 举报
win7引修复

win7引导修复 Windows7 引导修复 一、Windows7引导概述 (一)术语说明 Bootmgr(Windows Boot Manager):Windows启动管理器 BCD(Boot Configuration Data):启动配置数据存储 (二)双分区Windows7与单分区Windows7 1、双分区Windows7:Win7安装后默认占用两个主分区,一个C盘(windows文件夹所在的盘,硬盘的第一个分区,不是活动的)和一个隐藏分区(引导文件所在的盘,硬盘的第二个分区,真正的活动分区)。 2、单分区Windows7:可以将Win7默认安装出的两个分区合二为一,合并方法是:①将两个分区的文件合并到C盘(即硬盘第一个分区);②将C盘设为活动分区;③执行bootsect /nt60 c:给C盘写入兼容bootmgr的引导代码;④用Windows7的安装光盘启动计算机,进入光盘后选择“修复计算机”,光盘中的“系统恢复选项”就开始工作了,稍等提示完成,重启OK。 (三)Windows7的引导过程 1、BIOS按设置的存储介质次序轮询到硬盘后,首先寻找硬盘的MBR(主引导记录)和DPT(分区表),然后根据MBR和DPT中的信息寻找系统分区。 2、硬盘MBR中有两个重要信息(引导代码):一个是“目标分区”,一个是“系统类型”。带/MBR参数的bootsect能向MBR中同时写入“活动标记”和“系统类型”。 3、DPT就像是一副地图,MBR中的“目标分区”就像是目的地地名,一般的分区工具都将这个地名写成“活动分区”,但有些软件会对地名进行特殊改写,比如一键还原精灵就将地名改写为自己的“备份/恢复分区”,而这个“备份/恢复分区”并不是活动的。 4、活动分区的PBR(分区引导记录,也叫OBR或DBR)中也有一个重要信息(引导代码),即“引导文件名称”。对于WinXP,“引导文件名称”是“ntldr”。对于Win7,“引导文件名称”是“bootmgr”。BIOS根据MBR和DPT找到活动分区后,就按PBR中的“引导文件名称”在该分区根目录下寻找ntldr(bootmgr)文件,如果找到就将控制权交给ntldr(bootmgr),如果找不到就提示ntldr(bootmgr)丢失,终止引导。带不同参数的bootsect能向PBR中写入不同的“引导文件名称”。 5、ntldr(bootmgr)接管控制权后,就在根目录下寻找并加载启动环境文件(字体文件等)和启动配置文件,然后按启动配置文件中的指令继续下一步引导。对于WinXP,启动配置文件是活动分区根目录下的boot.ini,boot.ini内容单一,它指令ntldr直接加载系统内核。对于Win7,启动配置文件是活动分区根目录下的boot\BCD,BCD内容复杂,它会指令bootmgr对系统配置进行多项验证,首先验证硬盘MBR中是否有兼容bootmgr的“系统类型”信息,验证一致就接着引导,验证不一致就给出提示,终止引导。 6、Win7启动失败后,通常会有五种提示:①找不着设备——活动分区PBR空白,引导进程根本没加载到bootmgr——格式化活动分区造成的;②找不着操作系统——MBR中没有兼容bootmgr的“系统类型”信息——FDISK /MBR造成的;③开机自动启动“Windows启动修复”——其他都没问题,但分区表局部紊乱——GHOST不对等恢复造成的。④Windows启动管理器弹出0xc000000f错误——其他都没问题,但分区表局部紊乱——GHOST不对等恢复+误删/Recovery目录造成的;⑤Windows启动管理器弹出0xc000000e错误——bootmgr找不到BCD中dvice选项指定的分区——起因详见“四、手工解决0xc000000e错误”。 7、关于GHOST:①GHOST的对象包括整个PBR、文件系统和用户数据。②GHOST不对等恢复不会改变目标分区的大小,但会造成分区表局部紊乱。 二、Windows7引导代码的维护 (一)Windows7引导代码维护概述 引导代码的维护的目的是更新硬盘的MBR(主引导记录)和分区的PBR(分区引导记录)以在识别bootmgr和识别ntldr之间切换。更新MBR和PBR最方便、最通用、最专业的工具是Bootsect。bootsect.exe是一个单文件程序(附含在Windows vista/7安装光盘的boot目录下),支持Windows命令行运行(包括WinPE命令行)。推荐用光盘启动WinPE执行bootsect.exe,硬盘操作系统下执行bootsect.exe有时会因无法锁定目标卷造成PBR更新失败。另外要注意的是,Vista的bootsect.exe没有/mbr参数,因而它只能更新PBR,而不能更新MBR。 (二

文档评论(0)

1亿VIP精品文档

相关文档