BootMgr丢失,常规修复不起作用


19

我知道之前曾有人问过这个问题,但我已经尝试了所有通常的修复方法,但没有任何效果。

基本上,硬盘驱动器具有用于Vista和Windows 7的两个分区。我删除了Vista分区以留出更多空间,并扩展了Windows 7分区以填充驱动器(使用GParted)。

我试过了:

  1. 运行启动修复-找不到任何问题。
  2. 将分区设置为活动-起作用。
  3. bootsect /nt60 c: -工作。
  4. BootRec /FixMbr -工作。
  5. BootRec /FixBoot -工作。
  6. BootRec /ScanOs -我收到消息“已识别的Windows安装总数:0”
  7. BootRec /RebuildBcd -我收到消息“已识别的Windows安装总数:0”

BcdEdit 在C:分区上显示Windows Boot Manager和Windows Boot Loader。

[更新]

  1. 重命名BCD并重新运行BootRec /RebuildBcd-正常运行。
  2. 从DVD复制bootmgr-已阻止,因为该文件已存在。

[更新2]

我在这里找到了提到其他命令的文章。

  1. C:\chkdsk /f /r -工作。
  2. sfc /scannow /offbootdir=c:\ /offwindir=c:\windows-工作(请参阅此处)。

我还能尝试什么?


您确定要使用与要修复的Windows完全相同的Windows版本的修复控制台吗?
David Schwartz

是的,我昨天才开始创建修复DVD。
parsley72


1
我已经尝试了所有最佳答案中的所有内容。今晚我会尝试其余的。
parsley72 2011年

下次,使用Windows的diskpart代替GParted。
ZippyV 2011年

Answers:


7

我通过以下方式修复它:

  1. 将分区备份到外部驱动器(使用GParted)。
  2. 删除分区。
  3. 在(现在为空)驱动器上重新安装Windows 7。
  4. 在Windows的全新安装上复制分区的内容(使用System Rescue CD)。

Windows现在可以正确引导,并且看起来与以前完全相同。


2
有趣。这似乎表明,面对空磁盘,Windows安装会执行未进行修复的额外初始化。我清除BCD存储的建议可能具有相同的效果,也可能没有效果。正是由于这样的未知数,如果通常的解决方案不起作用,则应该重新格式化磁盘并重新启动(正如我所建议的那样)。您真的很幸运能够保留Windows分区,该分区可能仅在您已经对其进行了启动修复的情况下才起作用,该修复修复了注册表,但并未修复所有的启动扇区文件。
harrymc

如上所述,我尝试了bcdedit导出,重命名和重建,但是它不起作用。
parsley72

您能更具体地说明解决此问题的步骤吗?我与Windows 7处于同一情况,我无法弄清楚“通过新安装的Windows复制分区内容(使用System Rescue CD)。”谢谢!
Martin Del Vecchio

1
这太疯狂了,我几乎想这样做,因为我在Windows 8上遇到了同样的问题。但是,对我有用的一种解决方案是在故障bcdboot恢复控制台中使用,如本问题所述
Stefan Seidel,2013年

2
唉,可悲的是另一种重新安装,从划痕修复... :(我猜修复安装就足够了。
phoeagon

5

我猜您磁盘上有Vista作为分区1,然后Windows 7作为分区2,然后删除了Vista,这意味着Windows 7现在位于分区1。

不幸的是,Windows通过分区号标识其分区,因此Windows 7注册表中的所有分区引用现在都不正确且无法使用。

我相信您将必须重新安装Windows7。一个简单的“ 修复安装”就足够了,并且只会刷新Windows而不会干扰已安装的应用程序。

或者,对于偷偷摸摸的解决方案,您可以在Windows 7分区之前在磁盘上创建一些小的空白空间,并将其格式化为NTFS,实际上是重新创建一个替代虚拟分区1,该分区将Windows 7分区还原到磁盘7上的2号位置。磁盘。您可能仍然需要再次进行启动修复。

[编辑]

您可以通过从DVD引导到“修复”的“命令提示符”选项中并输入以下命令来强制Windows重新创建BCD存储分区:

bcdedit /export C:\BCD_Backup
ren c:\boot\bcd bcd.old
bootrec /rebuildbcd

如果出现权限问题,请attrib bcd -s -h -r在重命名之前使用命令。重新启动,如果不起作用,请再次执行启动修复。

另一个绝望的解决方案是假设bootmgr损坏并按上述方式启动并执行以下操作:

ren c:\bootmgr deletemelatter
bootrec /rebuildbcd
bootrec /fixboot

如果没有任何效果,则只需重新格式化整个磁盘并从头开始安装即可。并非每个问题都可以分析或找到解决方案。


您可以修复链接吗?我想我已经尝试过了,但是我想检查一下您的建议。
parsley72 2011年

完成-链接已修复。
harrymc

前几天我尝试了此操作,但是我选择了安装Windows 7新版本的选项,它告诉我我没有足够的空间。我了解您在说什么分区参考,但是为什么Windows 7注册表需要加载BootMgr?当然,启动Windows 7需要BootMgr,以便可以加载注册表,而不是相反吗?
parsley72

BootMgr在启动过程中会读取注册表中的值,因此注册表对于启动Windows是必不可少的。我很想知道为什么您没有足够的空间。修复安装可能不会给您同样的错误,但是请注意运行Windows且系统磁盘上没有足够的可用空间是危险的。如果可以重新安装Windows,则最好格式化磁盘并重新安装。
harrymc

1
“ Windows 7注册表中的所有分区引用现在都不正确且无法使用” ... 确切地说,您要引用哪些引用?我知道注册表中只有一个地方可以保留分区引用(HKLM\SYSTEM\MountedDevices),并且可以手动修复-而且我很确定它可以通过启动扇区而不是数字来跟踪分区...
Mehrdad

5

请确保将Windows 7恢复分区设置为活动分区!

我遇到了麻烦,因为活动分区设置为C:\


我希望我能给你一百万票。你的回答救了我的博士。我已经在考虑格式化了。上帝祝福你。我在Bing,Google和几乎所有搜索网站上都进行了尝试。这真的救了我。非常感谢
afaolek

@afaolek您现在要备份吗?
Frank Kusters

2

遇到相同的问题,以下内容为我解决了这个问题,假设您已经知道并在Command Promt中启动了应急磁盘,我使用了bcdboot.exe工具来重新创建BCD:

bcdboot c:\Windows /l en-gb /s x:

x带有System标签的驱动器在哪里。


1
如果没有bootrec,这对我有用。非常感谢。我不需要指定x:。“ bcdboot c:\ Windows / l zh-cn”已足够
Dmiters

@DmitryNarkevich不客气。当时对我来说也一样,这就是为什么我发布此答案的原因
Eduard Florinescu

1

Windows启动加载程序通过扇区偏移量+ MBR中的4字节磁盘签名来识别分区。因此,当您使用GParted移动系统分区时,发生了两件事:

1)更改了Win7系统分区的磁盘偏移,现在破坏了BCD和SYSTEM注册表配置单元中存储的所有引用。

2)Win7系统分区现在具有与以前使用的WinVista系统分区相同的ID,因此现在两个引用冲突:具有旧设置的引导加载程序尝试将Win7作为Vista引导,但失败。

基本上,您需要删除BCD注册表配置单元并从头开始对其进行重建,还需要修复对SYSTEM C注册表配置单元中Win7的MountedDevices中磁盘C:的引用。

使用紧急启动CD,您可以在“文件管理器”中删除BCD,然后从头开始重新创建BCD,并在“安装和启动中心”中修复MountedDevices。



1

我想改善parsley72给的解决方案:

安装Windows,然后再复制,而不是复制分区:

您可以引导至CD(系统救援磁盘或Windows设置磁盘)-我使用SRD修复我的问题-然后,选择“修复Windows”选项。它神奇!

我认为原因是您已经在C:上拥有所有内容(还原的OS,MBR等),Windows剩下的唯一内容就是查找启动信息(只有Windows软件才能完成)。

符合逻辑吧?


1
那将是我尝试没有帮助的事情清单上的第一条吗?
parsley72

1

这只是对Narkevich发言的澄清评论(我只想添加评论,但似乎被禁止这样做。

您不需要/ sx:选项的原因是,默认情况下,bcd引导会更改当前处于活动状态的卷上的bcd。几乎总是您想要的。如果指定/ s和一个驱动器号,则为1.该驱动器号为活动卷,并且该命令在没有/ sx的情况下将执行相同的操作:与之相同;或2.该驱动器号与当前活动的驱动器号不同体积。在这种情况下,只有在活动磁盘上的bcd损坏或为2的情况下,才会影响启动时实际发生的情况。稍后,您可以将标记为活动的磁盘更改为以/ s命名的磁盘。

干杯


答案是为解决问题而保留的。代表评论不足并不能将其变成解决方案。非回答会吸引反对意见,这将延迟您到达代表处的评论时间。保存此内容可能更有意义,直到您可以将其发布为评论为止。
fixer1234 '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.