紫色随笔
喜欢紫色,所以就有了……

问题:

开机时提示NTLDR丢失,应当如何解决?

开机时提示:

       NTLDR is losing,please press ‘ctrl + alt + delete’ to restart your computer.

本人机器的环境:

       双操作系统:XPWin2003,无软驱。

解决方法:

1.Windows 2003的安装盘启动电脑,进入Windows 2003 Server的安装界面;

       2.界面提示要修复Windows 2003中文版的安装,请按R”,按R键继续;

       3.界面提示要用故障恢复控制台修复Windows 2003安装选项,按C键继续;

        4.屏幕出现故障恢复控制台提示“C:\Winnt,要登录到哪个Windows 安装(要取消,请按Enter),在此键入1”,然后按Enter键;

       5.键入管理员密码,然后按Enter键;

        6.键入Copy F:\I386\Ntldr c:\,按ENTER(注:笔者使用的光盘是Windows 2003,如果是其他的安装盘,可以使用搜索命令查找一下ntldr文件的位置,一般在i386目录下。“f:”为我的光盘驱动器号)

 7.键入Copy F:\I386\NTDETECT.COM c:\,按 Enter 键,系统提示您是否覆盖文件,键入Y,然后按Enter键。

8.重新启动电脑,就可以看到久违的双系统启动菜单了。

      

相关背景知识的介绍:

基本介绍

  NTLDRWindows NT架构操作系统(包括Win2000,WinXP,Win2003……)所特有的一个文件,用于操作系统的引导。如果这个文件不存在则操作系统不能够正常启动。该文件储存在启动卷根目录下,一般为C:\。就一般而论,在安装多操作系统的时候,由于人们大多数将较低版本的系统装在C:下,然后在其他盘如D:E:再安装其他高版本的系统,在安装的时候应当均寻从低版本到高版本原则。

  NTLDR 职责

  1. 解析BOOT.INI 文件的内容。

  2. 加载Windows NT 内核或把控制权交给BOOTSECT.DOS2(BOOTSECT.DOS2是指Windows 9x 启动扇区的转储文件。文件由Windows NT 安装程创建,一般为512 字节)文件用于启动Win9X 或把控制权交给其他操作系统引导代码。

  NTLDR 的使用

  NTLDR 启动以后,如果在系统卷根目录下发现了Hiberfil.sys 文件且文件是有效的,那么NTLDR 读取Hiberfil.sys 里面的信息并让系统恢复到休眠以前的状态。这个时候并不处理BOOT.INI 文件。

  如果BOOT.INI 文件里面有两个或两个以上的启动选项,那么NTLDR 暂停系统引导,让用户选择一个启动选项直至超时。超时值由BOOT.INI 里面的TimeOut 值设定。超时以后,NTLDR 读取BOOT.INI里面DEFAULT 后面的信息,获取Windows 目录的路径以便执行后面的启动流程。

  提示:

  按下F8 会显示启动菜单,启动菜单里面可以选择多种启动模式。NTLDR 根据用户的选择,设置不同的启动参数并使用启动参数来加载NT 内核。

  用户也可以直接在BOOT.INI 里面设置启动参数。完整的BOOT.INI 的启动参数可以在http://www.sysinternals.com/Information/bootini.html 查阅到。另外在Windows 帮助文档里面也记录了常用的见的一些参数。此外使用BOOTCFG 命令可以在命令行提示符下对BOOT.INI 进行配置。

  如果BOOT.INI 文件里面只有一个启动项,那么NTLDR 将不显示启动选择菜单而直接进入启动流程。

  如果BOOT.INI 文件非法或不存在,那么NTLDR 将尝试从默认系统卷启动系统。

  进入启动流程的NTLDR 将调用NTDETECT.COM 来获取基本的硬件信息,然后把这些信息传递给Windows NT 内核程序:NTOSKRNL.EXE。至此,NTLDR 的使命结束。

  NTLDR 的兼容性

  NTLDR 具有向下兼容性。高版本的NTLDR 能够启动低版本的Windows NT 操作系统目前最新版本的NTLDR 是在Windows Server 2003 Service Pack 1 附带的版本。

  经过测试,这个版本能够启动以下一些Windows NT 架构操作系统:

  ⊙ Windows Server 2003 X64 Edition

  ⊙ Windows Server 2003 with Service Pack 1

  ⊙ Windows Server 2003 RTM  RTM指的就是厂商版”

  ⊙ Windows XP Professional X64 Edition

  ⊙ Windows XP with Service Pack 2

  ⊙ Windows XP with Service Pack 1

  ⊙ Windows XP RTM

  ⊙ Windows 2000 with Service Pack 4

  ⊙ Windows 2000 with Service Pack 3

  ⊙ Windows 2000 with Service Pack 2

  ⊙ Windows 2000 with Service Pack 1

  ⊙ Windows 2000 RTM

如果你已经安装了一个新版本的操作系统,但是后面又安装了一个旧版本的操作系统,当旧版本操作系统安装完毕以后可能会发现无法进入原先的新版本的操作系统。如果碰到类似问题,那么问题一定出现在NTLDR NTDETECT.COM 版本上面。由于旧版本的NTLDR NTDETECT.COM 不能够识别新版本操作系统的NTOSKRNL.EXE,造成系统不能够启动(一般显示黑屏)。解决方法很简单,只需要使用新版本的NTLDR NTDETECT.COM 替换旧版本的就可以了。

就笔者计算机而言,由于装的是XP2003Server系统,所以在恢复时应该使较高版本的NTLDR,也就是说是20003Server所带的NTLDR

posted on 2005-09-27 15:43  闪雷  阅读(14319)  评论(2编辑  收藏  举报