windows7引导故障的解决修复mbr

上传人:枫** 文档编号:557239064 上传时间:2023-09-01 格式:DOCX 页数:9 大小:94.38KB
返回 下载 相关 举报
windows7引导故障的解决修复mbr_第1页
第1页 / 共9页
windows7引导故障的解决修复mbr_第2页
第2页 / 共9页
windows7引导故障的解决修复mbr_第3页
第3页 / 共9页
windows7引导故障的解决修复mbr_第4页
第4页 / 共9页
windows7引导故障的解决修复mbr_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《windows7引导故障的解决修复mbr》由会员分享,可在线阅读,更多相关《windows7引导故障的解决修复mbr(9页珍藏版)》请在金锄头文库上搜索。

1、windows7引导故障的解决修复mbrwindows7的启动过程的常识:电脑加电后,首先是启动BIOS程序,BIOS自 检完毕后,找到硬盘上的主引导记录MBR,MBR读取DPT (分区表),从中 找出活动的主分区,然后读取活动主分区的PBR (分区引导记录,也叫dbr, 究竟该叫什么,网络上争论未休,我们姑且叫它pbr吧),PBR再搜寻分区内 的启动管理器文件BOOTMGR,在BOOTMGR被找到后,控制权就交给了 BOOTMGR。BOOTMGR 读取 ootcd 文件( BCD二BootConfigurationData, 也就是启动配置数据”,简单地说,windwows7下的bcd文件就

2、相当于xp 下的boot.ini文件),如果存在着多个操作系统并且选择操作系统的等待时间 不为0的话,这时就会在显示器上显示操作系统的选择界面。在我们选择启动 WINDOWS7 后 ,BOOTMGR 就会去启动盘寻找 WINDOWSsystem32winload.exe /然后通过 winload.exe 加载 windows7 内 核,从而启动整个windows7系 统。可以把这个过程简单地概括为:BIOS-MBR-DPT-pbr- Bootmgr-bcd-Winload.exe- 内核加载-整个 windows7 系统本文 就来说一说MBR-DPT-pbr- Bootmgr-bcd这一段可

3、能出现的故障 的解决。mbr出现问题,主要是mbr代码被改写,因为被改写的代码不同,所 以出错信息也各不相同。比如我们装了 windows7与ubuntu双系 统,ubuntu 改写了 mbr,在我们把ubuntu所在的分区格式化后,既进不了 windows7,也进不了 ubuntu,开机的时候会出现如图的错误提示:iflUB Lu-fli iny k Lu!1 h:HJ0tng . please ub tl *. riTPOT 22B謝经验jin 酬 mbi du.wm图一解决的办法就是重写mbr。对于重写mbr,我们所熟知的是在dos下 用fdisk/mbr命令进行重写fdisk/mbr所

4、重写的mbr与xp是兼容的,旦是, 与windows7已经不那么兼容了。实践表明用fdisk/mbr命令重写windows7 的mbr后,需要重建bcd,否则不能正常启动windows7。有网友指出,这里 面的原因是fdisk/mbr命令改写了 mbr中的硬盘签名。一般的分区工具都是可 以重写mbr的比如diskgenius它所重写的mbr与windows7是兼容的。也 可以用bootrec /fixmbr命令重写。要运行 Bootrec.exe工具,必须启动 WindowsRE。为此,请按照下列步骤操作:插入windows7安装光盘,从光 盘启动电脑,在光盘启动完成后,按下shift+f1O

5、键,调出cmd命令提示符。在cmd命令提示符中输入:bootrec/fixmbr回车。这样也就重写了 mbr。-JzJxl-UOJ2S/bant i*ea /I i:cmbrjingyan 图二VLndow6.1.-%901分区表存在问题,对于这个问题,限于篇幅,不做详细探讨。系统盘不是活动的 主分区,这种情形只要用分区工具(比如diskgenius肥系统盘设为活动的主分 区即可。pbr出现问题,主要是pbr代码被改写,因为被改写的代码不同,所以 出错信息也不相同。比如WIND0WS7系统的活动分区,却被写入了适合于XP 的pbr,这样开机的时候就会出现如图的提示:图Fres anu k讯 t

6、o Itaot from CD or &UD=, LNTLDW Is vlee inPresstci restart简单的解决办法就是用bootrec/fixboot命令重写pbr:插入windows7安装光 盘,从光盘启动,在光盘启动完成后,按下shift+f10键,调出cmd命令提示 符。在命令提示符中输入:bootrec /fixboot回车。这样也就重建了活动分区的pbr。这里面还有一个常用的命令也要提一下,这就是bootsect :插入windows7安装光盘,从光盘启动,在光盘启动完成后,按下shift+f1O键,调 出cmd命令提示符。在cmd命令提示符中输 入:bootsect

7、 /nt60 sys /mbr 回车。这个命令会改写活动分区的pbr,并同时会改写mbr,使得mbr和pbr 适合于windows7和vista。bootsect.exe程序位于windows7安装光盘的boot 目录下,可以把这个文件提取出来,在xp下的命令行可以运行这个程序,也可 以在winpe下的命令行运行这个程序,因而这个程序在使用时很方便。而 bootrec.exe命令的使用就没这么方便了。所以BOOTSECT命令被应用得更为广泛一些。另外有一个要点需要指出,vista 的安装光盘里面的boot文件夹也存在着这个小工具,但vista的bootsect命 令没有/mbr参数,因而它只能

8、改写pbr,而不能改写mbr,这是必须要注意 的。实践表明:把一个硬盘的mbr清零,然后运行windows7的bootsect命 令,确实可以发现mbr被恢复正常。这也就表明了 windows7的bootsect命 令的确能够重写mbr。另外,bootsect命令也可以重写xp的mbr和pbr,而 这也是bootrec命令所做不到的。xp的恢复控制台用fixmbr命令改写mbr,用 fixboot命令改写pbr。如果是引导文件的问题,一般可以用bcdboot命令重新写入引导文件:插入 windows7安装光盘,从光盘启动,在光盘启动完成后,按下shift+f10键,调 出cmd命令提示符。在命

9、令提示符中输入:bcdboot x:windows /s x:注意,这前一个x:是windows7的windows文件夹所在的盘,一般是c:,如果你的不 是c盘,请改为对应的盘符。这后一个X:是活动主分区的盘符所在,一般也是c盘。所以这个命令一般的写法是:bcdbootc:windows/sc:但需要注意,在 windows re环境下所看到的盘符与你在windows7下所看到的盘符未必一样。 所以需要首先用dir/a命令确认各盘是否正确。比如:cd/dc:dir/a 这两个命 令的作用是,首先进入c:盘的根目录,然后显示c盘根目录下的所有文件和文件 夹,根据所显示的文件或者文件夹,可以判断这

10、个盘具体是你在windows7下 所看到的哪一个盘。windows7的引导文件主要是bootmgr和boot文件夹里 面的文件,而boot文件夹里面的文件主要是bcd文件。bcdboot命令会在指 定的分区内重新写入全部windows7的引导文件。如果只是bcd文件有问题, 则可以用bootrec命令重建bcd:插入windows7安装光盘,从光盘启动,在光 盘启动完成后,按下shift+f1O键,调出cmd命令提示符。在命令提示符中输 入:bootrec /RebuildBcd这个命令如果搜到没有写入bcd的windows7或者vista的操作系统,会提示你是否写入,按提示输入Y也就会写入了

11、的。或 者用bcdedit命令手动改写bcd,但操作要复杂得多。具体案例分析:案例一: 怪事,系统盘不是活动的主分区在网上看到一则求助,windows7系统运行正常, 只是在磁盘管理中所看到的则是:系统盘不是活动的主分区。二 Kt 诗两 CD C O-FDM图四sa J 5 N=r siali3.=- CD 训 壮诂Qxffin劭 PM M1V! Kl:.9.74 CD?j嗣 伽讷El故芒忖亍陪n. 口址jLtn 仝“岂堪也三土 E 西小 g ! 5. a no 4趣丁曲曰 常浹了 Lt-EJ 问窠皿隔旺主饨戈引呼:穷岁 -?;IMvrra 1射如助JTR;占mm壁t二L層F-s;!d : :

12、i 為寸rrre(P)!闻M hrr世Hi.u B NTFSwfica Nirt讨辛科如坯主空童址讣|Si动乂十三 翎KJ帖耶M.二.我们在安装了一键还原精灵装机版后,在开机的时候按下F11键可以启动一键 还原程序。但我们在格式化系统盘后,在开机的时候仍是可以这样操作的。而所 谓的pbr是高级格式化的时候产生的。这表明了,一键还原精灵的启动代码不 是写入了活动分区的pbr (如果是的话,在格式化的时候已经被清除了),而是 写入了 MBR。通过在MBR中设定首先读取一键还原精灵的隐藏分区,然后才 读取活动的主分区。那么,现在我们所遇到的这种情形是不是也通过改写mbr 而指向特定的分区?假设mbr

13、没有问题,那么问题就可能出在pbr(也就是所 谓的dbr),win7的pbr中写入的代码应该是去找bootmgr,但如果这个代码中 规定了要找的是另外的一个特殊的文件,而再通过这个文件去启动另一个分区 中的bootmgr,这样就能实现把另一个不是活动的主分区变为系统盘的目的。 通过上面的分析,我们可以得到结论:问题不是出在mbr,就是出在pbr,解决 的办法就是先试着重建mbr,如果不能解决,那就可以肯定问题出在pbr,只 要重建pbr就能解决问题的。于是首先重建mbr,问题依旧,然后再重建pbr,问题果然得到解决。案例二:开机的时候出现:BOOTMGRismissingpressctrl+a

14、lt+deltorestart. 翻译成汉语就是:bootmgr缺失,按Ctrl+Alt+Del重新启动这是很常见的故障。既然是bootmgr缺失,我们一般只要用bcdboot命令重建引导文件即可。这 种情形产生的原因,一般可能有:bootmgr文件确实没有了,这是最为常见的。种则是由磁盘错误导致的,这种情形下,在winpe下运行一下chkdsk/f命 令也可能解决。有朋友使用Diskeeper对MFT碎片进行整理,开机的时候也 出现了这个提示。估计可能是用DISKEEPER进行的MFT磁盘整理后,这或者 是diskeeper的一个bug ,因而不建议用diskeeper进行mft碎片整理。位

15、 网友因为好奇。把C盘设成了活动的(activepartition )。是这样设置活动的:对计算机点右键-管理-硬盘管理。右键点C盘,设置为活动 的。靠。怎么回事啊。重启后居然无法启动!显示bootmgr is missing ,Ctrl+Alt+Delete to restart。然后还是如此。这是从网上找到的一个案例,分 析可以得出结论。他所装的windows7应该存在着一个隐藏的“系统保留”分 区,这个隐藏的系统保留分区才是真正的活动主分区,而他的c盘则应该不是 活动的。他把c盘设为活动,这也就意味着取消了 系统保留分区的活动状态。 但引导文件是在“系统保留”分区,而不是在c盘,c盘变成了活动的主分区, mbr就会启动c盘的pbr,而c盘的pbr又会去c盘找bootmgr,但c盘没有 bootmgr,所以出错也就是必然的了。解决的办法其实只要简单地再把系统保 留分区设为活动即可。这位朋友制造了问题,但好象并没能最后解决问题。真所 谓会者不难,难者不会。案例三:开机的时候出现:BOOTMGR is compressedPress Ctrl+Alt+Del to restart 翻译成汉语就是:bootmgr 被压 缩,按Ctrl+Alt+Del重新启动这种情形产生的原因是因为对系统盘进行了压 缩。奇怪的是,对于这种

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号