WIN7重装系统后的引导修复

来源:互联网 发布:索尼playmemories软件 编辑:程序博客网 时间:2024/04/28 08:20

 

重装系统后的引导修复

2 条评论

这里主要是指在安装多系统的情况下对引导的修复,找三个比较典型的例子来说明一下:第一种是XP,Vista/7双系统,原Vista/7在C盘,新安装XP到D盘,然后无法进入Vista/7了;第二种是Vista,7双系统,原Vista在C盘,7在D盘,重装Vista到C盘之后进入不了win7了;第三种是xp,vista/7双系统,原XP在C盘,Vista/7在D盘,重装了XP到C盘后发现不能进入Vista/7了;

首先简要说下Vista/7和XP的引导方式的不同,XP时的引导扇区格式为nt52,启动管理器为ntldr,ntldr读取boot.ini信息来引导系统,Vista/7时代使用引导扇区格式为nt60,使用启动管理器bootmgr,读取/boot/bcd的信息来引导系统

然后我们使用系统自带的工具来修复,添加系统引导项。这些工具包括修改bcd信息的Bcdedit.exe,还有更改引导扇区格式的bootsect.exe.

第一种情况,XP,Vista/7双系统:原Vista/7在C盘,新安装XP到D盘,然后无法进入Vista/7

由于重装XP之后,将活动分区的引导格式由Vista/7的nt60改成了nt52导致不能由新的启动管理器bootmgr来引导,所以我们需要使用用bootsect.exe来更改C盘(活动分区)的引导扇区格式为nt60,并且利用bcdedit.exe工具往bcd文件里面添加对XP的引导,首先从C:/windows/system32下找出bcdedit.exe拷贝一个方便使用的位置,我接下来的演示里拷贝到了C盘根目录,而我的bootsect.exe工具位于C盘的boot目录下。

向BCD文件(位于C:/boot/)里添加对XP的引导(重装XP后C盘应当有ntldr,boot.ini等文件),如图,打开命令提示符,定位路径到C盘根目录,然后按照操作一个一个打命令,在第一条命令里的双引号中间的内容按照自己的需求更改,譬如windows xp sp3 什么的

 

一共四条命令即可成功向BCD里写入对XP的引导,接下来更改引导扇区格式为nt60

将路径定位到bootsect所在目录,照图中输入bootsect /nt60 sys

提示成功的消息,重启系统即可实现XP,Vista的双引导了,下面这张图是我添加成功后用bootmgr来引导xp的图,因为我的虚拟机里没有安装Vista,所以只有刚才添加的一个引导项

第二种情况,原Vista在C盘,7在D盘,重装Vista到C盘之后进入不了win7

因为在重装Vista的时候格式化了C盘,导致原来的bcd文件也没了,这是虽然Vista也是bootmgr直接引导,但是bcd里已经没有对7的引导信息了,不过我们只要重新添加对D盘win7的引导信息即可

在Vista下以管理员身份运行cmd命令提示符,然后按照图中命令操作,需要注意的是,第一条命令引号中的内容可以随意更改,在后面几条命令中的用“{ }”括起来的一长串字符都需要使用你打第一条命令时自动返回的那么一串,如图,我用黄色强调标出,并且这一串值每次获得的都不同,不要照抄我的命令!!

同样的是四个命令添加了对7的引导,再使用bcdedit /v 命令可以看到其中一部分为添加的引导

 

重启就能看到系统选择菜单了

顺便提一下,对于新建的引导项的删除命令,“{ }”内使用自己实际的得到的值,可以通过bcdedit /v查看

第三种情况,xp,vista/7双系统,原XP在C盘,Vista/7在D盘,重装了XP到C盘后发现不能进入Vista/7

这个就要稍微复杂些了,因为Ghost或者直接安装XP的时候都已经将原来的引导信息清除了,包括Vista/7引导所需的必要文件,所以这次就要完全地重新拷贝Vista/7的引导所需文件,并且重新编辑BCD文件,同时添加对XP,对Vista/7的引导,首先将Vista/7引导环境所需的文件都拷贝到C盘根目录,包括bootmgr,boot目录,如果你找不到的话,我在这里提供了从Lenovo Vista SP1的安装文件中提取的文件,并将其中bootmgr更换为win 7 rtm build 7600.16385 x86 的版本,因为它还能支持从vhd引导系统,boot目录内包含有bootsect.exe工具,我还提取了win 7 rtm build 7600.16385 x86 的bcdedit工具放在boot目录里

首先添加XP的引导信息,按照第一种情况操作就行了,不再重复截图,接着再添加对Vista/7系统的引导信息,这个演示我的bcdedit.exe工具直接在/windows/system32/下

同样要注意使用自己在第一个命令中获得的{guid}来替换后面命令中使用的值,添加完成后可以使用bcdedit /store c:/boot/bcd /v 来查看下

确认无误后按照第一种情况下一样,将引导扇区格式更改为nt60,重启看看自己编辑的引导菜单吧!如果觉得不完美,就参照第二种情况下的操作,自己将原来存在的一个windows setup的引导项给删掉

本文所使用的工具均包含在系统内,完整的Vista/7引导环境需要的文件下载(内含bcdedit,bootsect等工具)