相信很多朋友都知道,在安装多个操作系统时,一般都需要按照“先低后高”的顺序进行,否则将有可能导致高版本的操作系统无法启动的问题 。例如现在比较流行的Windows XP+Windows Vista的双重引导配置,正常情况下应该是首先安装Windows XP,然后再完成Windows Vista,如果反其道而行之,那么就会出现“高配低就”的尴尬…
从Windows Vista开始,操作系统的启动管理器已经不再是Windows 2000/XP/Server 2003所采用的NTLDR+boot.ini,而是采用了全新的启动配置数据库存储(BCD) 。在基于Windows Vista的计算机上安装早期版本的Windows操作系统时,安装程序将覆盖MBR、启动扇区和启动文件中的所有内容,这种情况下我们无法再使用来自早期版本的Windows操作系统的boot.ini文件来启动Windows Vista 。即使在记事本中打开boot.ini这个文件,也只会看到图1所示的提示信息(请注意图中的红色框线) 。
图1 操作系统中的boot.ini文件(点击看大图)
如果错误事实已经形成,我们也完全不用担心,这里以D盘安装了Windows Vista,以后由于某些原因格式化C盘重新安装Windows XP为例进行说明 。按照下面的步骤即可手动修复,:
第1步:还原MBR并恢复启动管理器
使用Windows Vista的安装光盘引导计算机,按照选择安装语言、时间和货币格式、键盘和输入方法的顺序,进入安装程序界面后从左下角选择“修复计算机”,然后在下一画面中选择“命令提示符”(见图2),在命令提示符环境手工输入如下命令并运行:bootsect -nt60 all
图2 Vista系统恢复工具(点击看大图)
第2步:重新构建BCD
仍然是在命令提示符环境执行“bootrec /RebuildBcd”的命令,这条命令会在所有磁盘中扫描与Windows Vista兼容的安装,并将其重新添加到新生成的BCD存储中,注意这里的重建BCD是完全彻底的 。
第3步:手工添加Windows XP项目
需要指出的是,由于“bootrec /RebuildBcd”只是针对Windows Vista和Windows Server 2008进行检测,无法检测并发现Windows XP,因此我们只能采取手工添加的方法将Windows XP加入BCD,否则多重启动菜单中将只会显示Windows Vista,而不会显示Windows XP 。
bcdedit.exe命令行工具可以修改启动配置数据存储,我们可以在命令提示符环境依次输入如下命令并执行,圆括号中的内容表示该命令的解释,执行时无须输入:
bcdedit /create {ntldr} /d "早期版本的 Windows";(在存储中新建名为“早期版本的 Windows”的项)
bcdedit /set {ntldr} device partition=C:(设置存储中的项选项值,将应用程序设备设置到C:分区)
bcdedit /set {ntldr} pathntldr
bcdedit /displayorder {ntldr} /addlast (设置启动管理器中显示多重引导菜单的顺序)
上述命令中,标记符“{ntldr}”是用来指定可用于启动早于Windows Vista版本的操作系统的OS加载器,“早期版本的 Windows”的信息可以自由更改;“PARTITION=C:”是表示NTLDR所在的硬盘活动分区,请根据实际情况修改命令;“/addlast”表示将指定的项标识符添加到显示顺序的末尾,bcdedit.exe更多的可用参数可以查看帮助文件 。
【手动修复XP/Vista双系统的引导文件】最后,当然还需要重新启动系统,此时你会发现问题已经得到解决,有这方面需要的朋友可以一试 。
推荐阅读
- 另类技巧 将XP与Vista都装在C盘中
- 微软发布Windows Vista SP2 RC 本周内提供下载入口
- Windows Vista系统宽带拨号出现815错误怎么办?
- Windows Vista中手工删除缩略图缓存
- 如何控制Windows Vista下窗口动画速度
- 解决Windows Vista系统宽带拨号时的815错误
- Windows Vista系统开机加速全攻略之开机原理
- 深入浅出 浅谈Windows Vista的文件关联问题
- Windows Vista SP2 RTM Escrow Build已向内测者发布
- Windows Vista中隐蔽系统垃圾的清理方法