Windows修复MBR
什么是MBR
MBR(代表“主启动记录”)是一个启动扇区(硬盘的一个区域),其中包含有关硬盘驱动器分区的信息,并充当正在运行的操作系统的加载程序。
主启动记录是在我们首次安装Windows时在创建的第一个分区上创建的。
它是硬盘的前512个字节。
如果MBR损坏,则将无法启动Windows。
所有Windows版本Windows XP,Vista,7或者8使用MBR,如果损坏,将无法启动。
MBR可能被某些病毒破坏,这些病毒以MBR为目标,用自己的代码替换它。
或者在使用Linux发行版进行双引导时,也可能会破坏MBR。
备份
由于MBR存储在硬盘上,因此我们可以对其进行备份,然后在需要时将其还原。
我们只需要一个命令即可备份MBR:
dd if=/dev/sda of=/path-to-save/mbr-backup bs=512 count=1
在上面的命令中,'/path-to-save/mbr-backup'是我们要保存'mbr-backup'的路径。
恢复
重要:使用错误的分区表还原主引导记录将使数据无法读取,并且以后将很难恢复数据。
我们可以使用以下命令恢复保存的主启动记录:
dd if=/path-to-get/mbr-backup of=/dev/sda bs=512 count=1
在此命令中,“/path-to-get/mbr-backup”是我们存储“ mbr-backup”的路径。
常见错误
如果主启动记录已损坏,则计算机可能会显示以下一些错误:
- 错误加载操作系统(请参阅我们的错误加载操作系统:适用于Windows XP,Vista,7、8、10的修补程序教程)
“错误加载操作系统”错误
- 找不到操作系统(请参阅找不到或者缺少我们的操作系统:Windows XP,Vista,7、8、10修复教程)
“找不到操作系统”错误
- 无效的分区表(请参阅我们的无效的分区表:Windows XP,Vista,7、8、8.1和10教程修复)
“无效的分区表”错误
- 找不到可引导媒体(请参阅我们的“找不到可引导媒体:Windows XP,Vista,7、8、8.1和10修复教程)”
“找不到可启动媒体”错误
- 重新启动并选择合适的启动设备(请参阅我们的重新启动并选择合适的启动设备:适用于Windows XP,Vista,7、8和10的修复程序教程)
重新启动并选择正确的启动设备错误
取决于许多因素,可能会显示由于引导记录损坏而导致的其他错误。
在Windows XP中修复MBR
Windows XP用户可以使用“ fixmbr”命令来修复MBR。
我们需要原始的Windows XP安装CD才能运行故障恢复控制台并运行fixmbr实用程序。
如果我们没有Windows XP安装CD来运行故障恢复控制台,请转到“使用Easy Recovery Essentials修复MBR”。
fixmbr命令仅适用于Windows XP和Windows 2000。
运行fixmbr的说明是:
- 从Windows XP CD引导
- 在“按任意键从CD引导...”消息中,按任意键以引导进入CD
- 当出现“欢迎使用安装程序”屏幕时,按R键打开故障恢复控制台
Windows XP按R键以使用故障恢复控制台
- 如果“ Windows XP是硬盘驱动器上的唯一操作系统”,在“我们想登录哪个Windows安装程序”问题上,键入'1'并按Enter键。
- 在“输入管理员密码”问题中,输入密码,然后按Enter。
- 输入“ fixmbr”
命令提示符中的fixmbr
如果“我们确定要编写新的MBR吗?”出现消息,请按Y,然后按Enter
- 按Enter
- 等待该过程完成。 fixmbr实用程序软件将修复对主引导记录的任何损坏。
- 取出Windows XP CD
- 输入“退出”
- 按Enter重新启动计算机
如果由于MBR损坏而无法启动计算机,则上述说明应该可以解决问题,并且Windows XP应该可以正常启动。
如果fixmbr命令不起作用,请尝试使用map命令在要修复主启动记录的位置获取正确的驱动器名称:
- 输入“地图”
- 按下Enter
- 等待map实用程序的输出:
C: NTFS 1024MB \Device\Harddisk0\Partition1 E: \Device\CdRom0
上面的输出是一个示例。计算机的输出可能会有所不同,但是请使用'Harddisk0'记下该项目的驱动器号,在本例中为'C:'。
在Windows Vista中修复MBR
与XP相比,Windows Vista使用另一种实用程序来修复MBR,即“ bootrec”命令。
我们需要原始Windows Vista安装CD/DVD才能运行bootrec实用程序。
如果我们没有Windows Vista安装CD/DVD来运行命令提示符,请转到“使用Easy Recovery Essentials修复MBR”。
这些说明是:
- 从Windows Vista安装CD或者DVD引导
- 选择语言和键盘布局
- 在“欢迎使用”屏幕上,单击“修复计算机”
Windows Vista修复计算机菜单
- 选择操作系统,然后单击“下一步”。
- 当出现“系统恢复选项”窗口时,单击“命令提示符”
- 当出现命令提示符时,键入以下命令:
bootrec /FixMbr bootrec /FixBoot bootrec /RebuildBcd
我们可以键入“ bootrec.exe”以获取上述命令的完整说明。
- 在每个命令后按Enter
- 等待操作完成。如果成功,则会在屏幕上显示一条确认消息。
- 从磁盘托盘中取出CD/DVD
- 输入“退出”
- 点击Enter并重新启动计算机
我们可以在运行bootrec.exe之前运行Windows Vista的启动修复,以尝试自动修复启动错误。
运行启动修复的步骤是:
- 从安装CD/DVD引导
- 选择语言和键盘布局后,单击“修复计算机”
Windows Vista修复计算机菜单
- 从列表中选择操作系统,然后单击“下一步”。
- 当出现“系统恢复选项”对话框时,单击“启动修复”
Windows Vista系统恢复选项
- 等待该过程完成。在系统提示时重新启动计算机
如果bootrec/rebuildbcd命令不起作用,则另一种方法是完全重建BCD。
在命令提示符处时,键入以下命令:
bcdedit /export C:\bcdbackup c: cd boot attrib bcd -s -h -r ren c:\boot\bcd bcd.backup bootrec /rebuildbcd
在每个命令之后,按Enter。
在Windows 7中修复MBR
我们需要原始的Windows 7安装DVD才能启动到“系统恢复选项”并运行命令提示符。
如果我们没有Windows 7安装CD/DVD来运行命令提示符,请转到“使用Easy Recovery Essentials修复MBR”。
这些说明是:
- 从Windows 7安装DVD引导
- 在“按任意键从CD或者DVD引导...”下,按任意键从DVD引导
- 选择一种语言
- 选择键盘布局
- 点击下一步
- 选择操作系统,然后单击下一步。选择操作系统时,必须选中“使用可帮助解决启动Windows问题的恢复工具”。
- 在“系统恢复选项”屏幕上,单击“命令提示符”
Windows 7系统恢复选项屏幕
- 成功加载命令提示符后,键入以下命令:
bootrec /rebuildbcd
- 按Enter
- 输入下一个命令:
bootrec /fixmbr
- 按Enter
- 输入下一个命令:
bootrec /fixboot
- 按Enter
- 从磁盘托盘中取出安装DVD,然后重新启动计算机
如果“ bootrec/fixmbr”和“ bootrec/fixboot”不起作用,请尝试还原Windows 7的启动扇区代码:
- 通过在命令提示符中键入以下命令,确定Windows安装CD/DVD的驱动器号:
diskpart select disk 0 list volume
- 在“类型”列中查找“ CD-ROM”字样。此项是CD/DVD安装驱动器号。如果驱动器号为'D:',请键入以下命令:
exit D: cd boot dir
如果驱动器号不同于D:\,则将第二个命令替换为我们从上一个列表卷命令中记下的驱动器号。
- 输入以下命令:
bootsect /nt60 SYS /mbr
- 按Enter
- 从磁盘托盘中取出CD/DVD
- 输入“退出”
- 按Enter重新启动计算机
在Windows 8或者8.1中修复MBR
我们需要原始的Windows 8或者8.1安装DVD来修复主引导记录。
如果我们没有Windows 8/8.1安装CD/DVD来运行命令提示符,请转到“使用Easy Recovery Essentials修复MBR”。
这些说明是:
- 从原始安装DVD(或者恢复USB)引导
- 在“欢迎使用”屏幕上,单击“修复计算机”
Windows 8修复计算机菜单
- 选择疑难解答
- 选择命令提示符
- 加载命令提示符后,键入以下命令:
bootrec /FixMbr bootrec /FixBoot bootrec /ScanOs bootrec /RebuildBcd
- 在每个命令后按Enter键,然后等待每个操作完成
- 从磁盘托盘中取出DVD
- 输入“退出”
- 按下Enter
- 重新启动计算机,然后检查Windows 8/8.1是否现在可以启动
如果bootrec实用程序不能修复Windows 8/8.1,请尝试按照以下命令修复Windows 8/8.1的EFI引导加载程序:
- 从安装DVD或者Windows 8或者Windows 8.1恢复USB引导
- 点击修复计算机
- 选择疑难解答
- 选择命令提示符
- 按顺序键入以下命令,然后在每个命令后按Enter:
diskpart sel disk 0 list vol
这些命令将选择计算机的第一个磁盘,并列出该磁盘上所有可用的分区。
- 检查具有Fs列FAT32的卷项目。 EFI分区必须在FAT32下格式化。如果EFI分区的卷号为“ 2”,请键入以下命令:
sel vol 2
如果卷号不同于2,则用计算机上可用的数字替换“ 2”。
- 给该分区分配一个字母,该字母与我们计算机上已有的字母不同,例如'x:'。输入以下命令来分配字母:
assign letter=x:
- 等待成功消息出现:
DiskPart successfully assigned the drive letter or mount point.
- 输入“ exit”退出DiskPart实用程序:
exit
- 键入以下命令,并将x:\替换为我们先前分配给EFI分区的字母:
cd /d x:\EFI\Microsoft\Boot\
- 然后键入bootrec命令修复该卷:
bootrec /fixboot
- 现在,我们需要备份旧的BCD并重新创建一个新的BCD。输入:
ren BCD BCD.backup
- 键入以下命令以重新创建BCD,并将x:\替换为之前分配的字母:
bcdboot c:\Windows /l en-us /s x: /f ALL
- 在上面的命令中,Windows安装在'c:'上。如果安装Windows 8/8.1的驱动器号不同,则用驱动器号替换c:\。
- 从磁盘托盘中取出DVD
- 输入“退出”
- 重启你的电脑
Windows 8 bootrec实用程序结果屏幕
在Windows 10中修复MBR
我们需要原始Windows 10安装DVD来修复主启动记录。
如果我们没有Windows 10安装DVD来运行命令提示符,请转到“使用Easy Recovery Essentials修复MBR”。
这些说明是:
- 从原始安装DVD(或者恢复USB)引导
- 在“欢迎使用”屏幕上,单击“修复计算机”
- 选择疑难解答
- 选择命令提示符
- 加载命令提示符后,键入以下命令:
bootrec /FixMbr bootrec /FixBoot bootrec /ScanOs bootrec /RebuildBcd
Windows 10修复计算机菜单
- 在每个命令后按Enter键,然后等待每个操作完成
- 从磁盘托盘中取出DVD
- 输入“退出”
- 按下Enter
- 重新启动计算机,然后检查Windows 10现在是否可以启动
如果bootrec实用程序无法修复Windows 10安装,请尝试按照以下命令修复EFI引导加载程序:
- 从安装DVD或者Windows 10安装或者恢复USB引导
- 点击修复计算机
- 选择疑难解答
- 选择命令提示符
- 按顺序键入以下命令,然后在每个命令后按Enter:
diskpart sel disk 0 list vol
这些命令将选择计算机的第一个磁盘,并列出该磁盘上所有可用的分区。
- 检查具有Fs列FAT32的卷项目。 EFI分区必须在FAT32下格式化。如果EFI分区的卷号为“ 2”,请键入以下命令:
sel vol 2
如果卷号不同于2,则用计算机上可用的数字替换“ 2”。
- 给该分区分配一个字母,该字母与我们计算机上已有的字母不同,例如'x:'。输入以下命令来分配字母:
assign letter=x:
- 等待成功消息出现:
DiskPart successfully assigned the drive letter or mount point.
- 输入“ exit”退出DiskPart实用程序:
exit
- 键入以下命令,并将x:\替换为我们先前分配给EFI分区的字母:
cd /d x:\EFI\Microsoft\Boot\
- 然后键入bootrec命令修复该卷:
bootrec /fixboot
- 现在,我们需要备份旧的BCD并重新创建一个新的BCD。输入:
ren BCD BCD.backup
- 键入以下命令以重新创建BCD,并将x:\替换为之前分配的字母:
bcdboot c:\Windows /l en-us /s x: /f ALL
- 在上面的命令中,Windows安装在'c:'上。如果我们安装Windows 10的驱动器号不同,请用驱动器号替换c:\。
- 从磁盘托盘中取出DVD
- 输入“退出”
- 重启你的电脑