解决Win7/XP双系统下XP无法启动现象

为了考察Windows 7的安全改进,下了版本号7600的Windows 7 RTM,不过安装中遇到了一个问题,把解决方法贴出来以供参考。测试用机原本安装有Windows XP系统(SP3),由于不想破坏原有的分区结构,挂了一块30G的旧硬盘专门用于安装Windows 7。这块硬盘只有一个分区,格式为NTFS,在XP下设置的盘符为W,挂接在IDE口并被设定为从盘。

值得一提的是,在安装的过程中,插接在串口的主硬盘被识别为了1号硬盘,而后接入的从硬盘被识别为了0号。在从盘上安装了Windows 7之后,一切正常,不过引导菜单中却没有XP。在安装之前大致查了一下,皆言7600版的Windows 7能正常在系统中已有XP的情况下建立多引导菜单,也许我遇到了百里挑一的情况?估计是因为主从硬盘盘符冲突之类的问题造成的,似乎大家普遍都是在已有硬 盘上为第二系统建立一个分区,所以少有人遇到这种情况。

基于Windows 7与Vista在基本内核上非常接近,所以利用安装盘下boot目录中的bootsect.exe程序修复引导区,比如执行“bootsect /nt52 ALL”命令重置引导区,不过这样会将引导菜单恢复到安装Windows 7之前的状态,这样虽然XP可以正常引导,但是就无法进入Windows 7了。所以这种方法没有采用,而是基于同样的假设,进入Windows 7的系统恢复界面,手动建立XP的引导记录。

需要注意,在使用bootsect命令的时候,/nt52选项一般是对应Windows XP,而如果第一系统不是XP,而是Vista或其它系统,使用该选项可能会造成引导区失效。另外,如果遇到NTLDR未正确恢复或受到破坏等问题时,可 以尝试使用MBR选项来同时恢复主引导记录,比如对于上述描述的情况,使用bootsect /nt52 C: /mbr命令即可。

具体操作方法是:

将Windows 7的安装光盘放入光驱,在进入安装界面时,点击进入恢复界面的链接(在Install Now按钮的下边),进入之后选择进入命令行,然后依次执行以下一组命令即可。

1.重新搜索硬盘中的操作系统
bootrec /rebuildbcd

2.创建一条引导记录
bcdedit -create {ntldr} -D "Windows XP"

3.设置引导分区位置
bcdedit -set {ntldr} device partition=D:

4.设置引导文件所在路径
bcedit -set {ntldr} path ntldr

5.设置引导记录的显示位置
bcedit -displayorder {ntldr} -addlast

执行完这些命令之后,重新启动,就可以在引导的时候看到名为"Windows XP"的引导选项了,之后可以在Windows 7当中具体设置哪个系统优先启动以及该引导菜单显示多长时间等等。

总结一下,Windows 7所使用的引导程序与Windows XP是完全不同的,所以由于分区的冲突可能Windows 7覆盖了XP的引导程序,当然我们也可以使用XP安装光盘中的MBR恢复程序或者上边提到的bootsect恢复程序来将引导程序恢复为XP版本,不过要 保留对两个操作系统的引导,在新版的引导程序中为老版本的Windows系统建立引导记录,是最直观和最安全的方式。

(0)

相关推荐