怎样修复恢复Windows7、XP双系统启动菜单
由于第一次遇到这样的问题,不知道如何解决,在群里问了半天没有回答,在论坛里求助也没有结果,所以只好自己在网上找资料研究,我没有接触过Vista,刚知道是因为它和XP的启动原理不同造成的,可能有的高手都知道解决方法,但网上关于这方面的资料不多,而且求助的人却不少,而自己刚好弄明白,拿出来和大家共同分享一下,有什么不对的地方还希望多提意见。我刚刚测试过可行。
首先说一下我遇到具体问题:
我最早在C盘装了Windows XP,然后接着在D盘装的Windows7。这样用着一切正常,因为我原来备份的有XP系统,所以我用一键还原把C盘给还原了,但问题也就出来了,在系统启动项那只有Windows XP和一键还原两个选项,没有办法进入Windows 7系统,因为我没有接触过Windows Vista,直接从XP到Windows 7,所以对它的启动原理不很了解,所以我研究了一下午才把问题解决了,顺便也了解了Windows 7系统的启动原理。
解决问题前我们先来了解一下Windows XP和Windows 7的启动原理有何不同,双系统又是如何启动的:
在Windows 7+XP双系统中,Windows 7使用bootmgr接管系统启动模式。电脑自检完成后,开始查找活动主分区(一般情况是C:)并加载它。
接着会继续读取活动分区下的启动配置文件(即C:\BOOT\BCD)和c:\boot.ini,根据BCD和Boot.ini存储的启动信息列出启动菜单(也就是双系统启动菜单)。对于双系统用户通常列出“Microsoft Windows 7”和“旧版本的Windows”。
如果选择前者,Bootmgr将控制权交给Windows 7系统目录下的Winload.exe (在\Windows\systems下)然后开始启动Windows 7。选择后者,Bootmgr将控制权交给NTLDR,接着开始读取c:\boot.ini并列出其中配置的启动菜单。
启动故障就主要出现在Bootmgr(如该文件丢失)、BCD(启动信息配置错误)、Winload.exe(该文件丢失导致Vista无法启动)、Ntldr(该文件丢失导致XP无法启动)这些文件上。(我的情况属于bootmgr文件丢失,BCD文件启动信息配置错误)
步骤/方法
- 01
首先我们需要几个备份文件(bootmgr,ntldt,bcd,bootsect),如果你有Windows 7系统盘或者镜像的话可以直接从中提取。 还有一个工具——EasyBCD 注意:在XP下EasyBCD的运行需要Microsoft .NET Framework2.0的支持。
- 02
以下操作都是在Windows XP中进行,因为又隐藏文件和系统文件,所以最好显示系统和隐藏文件,在文件夹选项里点击查看,去掉隐藏受保护的系统文件(推荐)并选择选择显示所以文件和文件夹。 把bootmgr,ntldt(一般C盘下有,不用复制)复制到C盘下。(此C盘为默认为系统,按具体情况而定) 把bcd,bootsect复制到C:\boot\目录下
- 03
然后运行EasyBCD 切换到左侧的“ADD/Remove Entries”,在右侧窗格选中原来无效的启动菜单,单击Delete删除,接着在Add An Entry下添加启动项。添加XP启动则在Version选择“Windows NT/200/XP”、Drive选择C:\、Name设置为Windows XP(图3)。同上,添加Windows 7的启动项(Version选择Windows Vista/longhom、Drive选择D:\、Name设置为Windows 7),完成后单击ADD Entry保存配置。
- 04
然后打开“运行” (开始〉运行), 输入cmd 进入C:\boot\目录下输入“bootsect /nt60 C:” (删除是nt52,不带双引号) 最后重新启动电脑即可。有任何问题,欢迎到软媒论坛的Windows7综合讨论区交流实用技术。