打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
win7/vista系统启动管理器bootmgr丢失解决方案

        bootmgr:启动管理器,BootMgr是Boot Manager的缩写,在微软的Windows Vista,Windows 7,和Windows Server 2008操作系统中,其启动过程与从前的以NT为内核的windows版本略有不同。bootmgr就相当于win nt/win2000/WinXP时代的NTLDR。
  电脑加电后,首先是启动BIOS程序,BIOS自检完毕后,找到硬盘上的主引导记录MBR,MBR读取DPT(分区表),从中找出活动的主分区,然后读取活动主分区的PBR(分区引导记录,也叫dbr,究竟该叫什么,网络上争论未休,我们姑且叫它pbr吧),PBR再搜寻分区内的启动管理器文件 BOOTMGR,在BOOTMGR被找到后,控制权就交给了BOOTMGR。BOOTMGR读取\boot\bcd文(BCD=Boot Configuration Data ,也就是“启动配置数据”,简单地说,windwows7下的bcd文件就相当于xp下的boot.ini文件),如果存在着多个操作系统并且选择操作系 统的等待时间不为0的话,这时就会在显示器上显示操作系统的选择界面。在我们选择启动WINDOWS7后,BOOTMGR就会去启动盘寻找 WINDOWS\system32\winload.exe,然后通过winload.exe加载windows7内核,从而启动整个windows7系 统。可以把这个过程简单地概括为:BIOS-->MBR-->DPT-->pbr--> Bootmgr-->bcd-->Winload.exe-->内核加载 -->整个windows7系统

        可以说,bootmgr就相当于win NT/win2000/WinXP时代的NTLDR。NTLDR是win nt/win2000/WinXP中的引导文件,是一个隐藏的,只读的系统文件,位置在系统盘的根目录,它的主要职责是解析Boot.ini文件,用来装载操作系统。一个值得注意的变化是,Windows 7启动管理器是按空格键而不是按F8功能键调用。 F8键依然具有调取高级启动选项菜单的功能。 为了保持一个可扩展固件接口系统,也为了使版本最高的启动管理器负责管理所有的操作系统,使启动管理器具备向下兼容性、而不是向上兼容,Windows启动管理器对已安装的所有操作系统统一列为一个可供选择的菜单,在配置 Windows Vista/Server 2008 与 Windows 2000/XP/Server 2003 的多系统共存时,BOOTMGR 将全面负责计算机的启动管理工作,NTLDR 将沦为 BOOTMGR 的替补。举个例子,假设我们配置了 Windows Vista、Windows XP、Windows Server 2008、Windows Server 2003 四个操作系统的共存,BOOTMGR 启动菜单并不会把 Windows XP 与 Windows Server 2003 分别列在启动菜单里,而是将它们统一显示为“早期版本的 Windows”。
   启动配置数据(BCD)是一种用于启动时的配置数据固件独立数据库。它取代了NTLDR中的boot.ini,是由微软的新Windows启动管理器使用。启动配置数据 (BCD) 存储包含启动配置参数,并在 Microsoft(R) Windows Vista 和 Microsoft(R) Windows Server 2008 操作系统中控制操作系统的启动方式。这些参数以前位于 Boot.ini 文件中(在基于 BIOS 的操作系统中)或稳定 RAM (NVRAM) 项中(在基于可扩展固件接口的操作系统中)。通过在 BCD 存储中添加、删除、编辑和附加项,可以使用 Bcdedit.exe 命令行工具来影响在预操作系统环境中运行的 Windows(R) 代码。Bcdedit.exe 位于 Windows Vista 分区的 \Windows\System32 目录中。创建 BCD 旨在为描述启动配置数据提供一种改进的机制。随着新固件模型 [例如,可扩展固件接口 (EFI)] 的发展,用户需要一个可扩展且可互操作的接口以提取底层固件。这一全新的设计为 Windows Vista 中的多种新功能(例如,启动修复工具和多用户安装快捷方式)提供了支持。
  

      微软的新一代操作系统Windows 7,然而,这个 7 并不是代表 Windows 7 的核心版本已经从 Windows Vista 的 NT 6 升级至 NT 7,而只是代表 Windows 7 是微软正式发行的桌面 Windows 第七代产品而已。Windows 7 真正的核心版本号仅仅是 NT 6.1,Windows 7 与 Windows Vista 的关系好比是 Windows XP(NT 5.1)与 Windows 2000(NT 5.0)。时隔多年,Windows 又一次与我们玩起了文字游戏,以至于有人将 Windows 7 戏称为“NT 6.1 = Windows 非常 6+1 = Windows 7”。 为了更为直观地理解 Windows 7 = NT 6+1,不妨从 Windows 启动管理器的层面看待这个问题。与容易混淆的 Windows 正式产品名称相比,启动管理器一直是严格按照 Windows 系统的核心版本加以区分的。这是由于在配置多重操作系统共存时,必须由版本最高的启动管理器负责管理所有的操作系统,启动管理器只具备向下兼容性、不具备向上兼容性。因此,启动管理器的版本必须严格按照高低先后的顺序正确排列,而不能像Windows 的正式名称一样胡乱设置,否则便有可能无法正确配置多重操作系统共存。
  例如,Windows 2000/XP/Server 2003 之所以都叫做 NT 5.X,是因为它们的启动管理器全部都是 NTLDR 与 BOOT.INI。在配置 Windows 2000/XP/Server 2003 彼此之间的多系统共存时,每一个操作系统都是由 NTLDR 与 BOOT.INI 统一管理的,大家是平起平坐的关系。而做为 NT 6.X 的 Windows Vista/Server 2008 则采用了 BOOTMGR 与 BCD 的新式启动管理器,在配置 Windows Vista/Server 2008 与 Windows 2000/XP/Server 2003 的多系统共存时,BOOTMGR 将全面负责计算机的启动管理工作,NTLDR 将沦为 BOOTMGR 的替补。举个例子,假设我们配置了 Windows Vista、Windows XP、Windows Server 2008、Windows Server 2003 四个操作系统的共存,BOOTMGR 启动菜单并不会把 Windows XP 与 Windows Server 2003 分别列在启动菜单里,而是将它们统一显示为“早期版本的 Windows”。只有做为 NT 6.X 的 Windows Vista 与 Windows Server 2008 才有资格在 BOOTMGR 启动菜单中以独立选项的姿态出现。我们只有选择了“早期版本的 Windows”选项,由 BOOTMGR 将启动控制权移交给 NTLDR 并自动切换为 NTLDR 菜单,这时才可以继续选择需要启动 Windows XP 还是 Windows Server 2003。换言之,NTLDR 启动菜单就像是 BOOTMGR 启动菜单的子菜单一样。
  现在我们再来看一下 Windows 7,当我们在安装有 Windows Vista/Server 2008 的计算机中安装了 Windows 7 后,Windows 7 会将自己添加在 BCD 里,与原有的 Windows Vista/Server 2008 实现共存,BOOTMGR 启动菜单将显示 Windows 7、Windows Vista/Server 2008 及早期版本的 Windows(如果有的话)三个选项。换言之,Windows 7 采用的启动管理器依然是 BOOTMGR 与 BCD,它与 Windows Vista/Server 2008 是一个平起平坐的关系。
  假如 Windows 7 的核心版本叫做 NT 7 的话,那么它应该拿出一个版本比 BOOTMGR 与 BCD 更高的新启动管理器才对,由这个新的启动管理器接管 BOOTMGR 与 BCD 的工作。当然,目前在现实中是不存在这样一个启动管理器的,我们不妨将其假设为 Loader v7。那么,当我们安装了 Windows NT 7 系统后,Loader v7 将自动取代 BOOTMGR 与 BCD 负责计算机的启动管理,到时候只有符合 NT 7.X 版本的 Windows 系统才有资格以独立选项的姿态出现在 Loader v7 菜单中,Windows Vista/Server 2008 将被统一显示为“早期版本的 Windows”、Windows XP/Server 2003 则将被显示为“更早期版本的 Windows”(当然,如果几年以后真的有 Loader v7,到时它究竟还能否向下兼容 Windows XP/Server 2003 恐怕很难说了)。
  现在,Windows 7 虽然正式名称叫做 7,但是它却并没有拿出这样一款更高级的 Loader v7 启动管理器,依然只能依靠 BOOTMGR 与 BCD、同 Windows Vista/Server 2008 平起平坐,因此 Windows 7 的核心版本号还没有资格提升到 NT 7 的高度,最多只能叫做 NT 6.1 了。虽然现在 Windows 7 仅仅放出了一个预览版,在正式发行前会有什么变化还不好说,但从目前核心版本号已经确定为 NT 6.1 的情况来看,笔者认为 Windows 7 的启动管理器不会有什么大变了。可以预见在今后的三五年内,我们的计算机都将长期使用 BOOTMGR 与 BCD。就像 Windows 2000/XP/Server 2003 可以并列在一起成为 NT 5.X 系列一样、Windows Vista/Server 2008(包括将来的 R2)/Windows 7 也可以并列在一起组成一个相对完整的 NT 6.X 家族了。
  其实,在 Windows 7 核心版本号确定之前,笔者个人还是非常希望 Windows 7 能够设计新的启动管理器取代 BOOTMGR 与 BCD,真正成为 NT 7 的。现有的 BOOTMGR 与 BCD 虽然已经很好用,但有一个最大的缺陷就是它始终还是基于纯字符界面的、不是一个支持鼠标操作的 GUI 界面,叫做 Windows 未免有些名不副实。其它操作系统可是早就实现图形方式的启动管理器了,这不得不说是一个遗憾。试想如果开机自检后可以出现一个图形化的启动界面,通过鼠标点击按钮选择操作系统以及安全模式等选项该有多好,期待 NT 7 将来可以实现。目前只有使用 ERD Commander 等第三方启动管理器软件才可以实现这个目的了
编辑本段bootmgr出现以下两个问题之后的解决办法
  bootmgr出现以下两个问题之后的解决办法:
  1,出现“bootmgr is missing, please press ctrl+alt+del to restart”错误提示时的解决办法
  bootmgr丢失,按Ctrl + Alt + DEL 重新启动。错误往往在以下情况:您意外或者故意删除了一些重要Vista系统文件,或者文件被病毒或恶意软件损坏或摧毁,还可能您采取了不适当的BIOS模拟等Vista激活方式,让你不能访问Vista的桌面环境。所以这是系统的问题, 想要修复bootmgr丢失的错误,而您又不想重新安装Windows Vista时,大部分人选择了使用Vista的DVD安装光盘来开机,这儿有个永久性的根除这个错误的办法,很简单,只要按照中概述的步骤指南来操作就可以了。
  一、插入Windows Vista的DVD安装光盘,用它来启动电脑,如果没有正常启动,请确定在BIOS里面设置下开机启动顺序,先由DVD驱动器启动电脑。
  二、在安装Winows那个窗口,选择适合您的系统语言、时区、键盘模式,然后点击下一步按钮。
  三、在下一步骤的屏幕左下角,点击“修复您的电脑”链接。
  四、如果您有很多Windows硬盘分区的话,请先选择您要修复的那个分区, 如果您只有一个Windows安装,那么选择就是显而易见的。
  五、在“系统恢复选项”窗口,点击“启动修复”,这样,就可以防止Windows无法启动,也解决丢失bootmgr错误提示的问题。我的本本也是那样,后来我发现VISTA系统就都是那样,后来我就不用了,我现在还用的是XP SP3的,这稳定
  2,出现“BOOTMGR is compressed Press Ctrl+Alt+Del to restart”错误提示时的解决办法
  方法一,最简单的方法是:找一张winpe光盘,用他引导进入winpe系统,打开我的电脑,右击C盘,选择属性,把那个“压缩此驱动器以节约磁盘空间”的勾去掉,然后确定,会出现bootmgr是只读文件,是否忽略,全部忽略即可,好了,大功告成,重启后一切正常
  方法二,windows7对C盘进行了压缩后,恶梦开始了。重启后显示:“BOOTMGR is compressed Press Ctrl+Alt+Del to restart”。我使用的方法是:
  1、用vista启动,选择修复;
  2、运行“Bootrec.exe /fixmbr、Bootrec /fixboot"然后重启。。然后华丽又出现在了面前,原来
  成功就是这么简单。
  当然在运行这个命令之前,网上的两种方法我都试过了,C盘也解压缩了。网上通用的方法如下:1、Boot the vista dvd to get to the command line.
  expand bootmgr temp
  attrib bootmgr -s -r -h
  del bootmgr
  ren temp bootmgr
  attrib bootmgr -a +s +r +h
  2、Vista安装盘启动,打开命令提示符,转到你Vista的system32(如c:\windows\system32),之后“compact /u c:\bootmgr“最好运行"compact /u /a /f /s:C:\",把c:整个分区解压缩。

启动管理器丢失故障解决方案

  如果C盘根目录下的启动管理器 bootmgr 破坏或者丢失,则启动计算机时,系统会提示找不到操作系统,这类似于 Win2000/WinXP的ntldr 文件丢失。

  在 Win2000/WinXP 下,解决这类故障首先需要知道该故障原因是启动管理器丢失,然后进入故障恢复控制台,在命令提示符下利用 expand命令 把安装光盘里的 ntldr 文件副本解压缩到C盘根目录。
    

  在 Windows  win7 / Vista 则非常简单,我们根本无需知道到底是什么原因导致系统无法启动,只需按照以下方法进行操作即可:

  1、首先利用Windows win7/ Vista安装光盘引导系统进入“系统恢复选项”,并单击其上的“启动修复”。

  2、系统按照设定的顺序,依次查找可能导致启动故障的原因。在系统后台,启动恢复检查程序会自动对Windows更新(如果安装补丁失败,也可能导致启动故障)、系统磁盘、磁盘错误、磁盘元数据、目标操作系统、启动日志等多项内容进行测试分析。

  3、如果系统找到该启动故障的原因,并修复后,会进入对话框,提示已经找到并尝试修复问题。

  4、Windows win7/ Vista默认不会显示所找到的故障原因,直接单击“完成”按钮即可重新启动计算机,以完成恢复操作。


 

  如果需要查看故障原因,可以单击该对话框上的“单击此处以获得诊断和修复的详细信息”。在打开的对话框上,我们可以看到找到的根本原因是“启动管理器”丢失,而且所需的文件修复工具已经成功完成。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
电脑启动详解
Windows Vista系统下如何再安装Windows XP,实现双系统问题
Windows启动引导顺序
巧改Boot.ini修复XP+Vista双启动故障
自定义Vista启动管理项 - Windows Vista - [进阶讨论] - 远景论坛...
如何修改Win7系统的多系统启动菜单
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服