我的 Windows 10 系统在启动时收到“MBR 错误 1”消息,因为它尝试从错误的驱动器启动。我必须从启动菜单中手动选择正确的驱动器。我的启动菜单显示:
P4 drive 1
P2 drive 2
P1 drive 3 <== it should boot from this one
我认为 P1 表示优先级 1?P1 驱动器是正确的启动驱动器,即 SATA SanDisk SSD。
我进入高级设置,然后进入启动部分来设置启动顺序。当我选择启动选项 1 时,我没有从驱动器选项中看到 Sandisk 驱动器。我只看到 P4 和 P2 驱动器。我在启动选项 2 下看到相同的驱动器选项。
为什么 P1 Sandisk 驱动器没有出现在启动选项中?
主板是华硕 X79。BIOS 是 American Megatrends 版本 0701。
答案1
华硕 bios 很烂。是的,我就是这么说的。
回答您的实际问题:驱动器无法显示的唯一原因是驱动器坏了或主板无法检测到它(这通常意味着驱动器的主板坏了)。但是,如果主板检测到故障驱动器,您会在启动时收到警告,这要归功于 SMART(我建议使用 hwmon,但您无法启动,所以这没有意义)。
进入 BIOS 并确保您要启动的驱动器被设置为启动驱动器。
由于您看不到驱动器,请尝试取出所有其他驱动器并进入 bios。这也可能是 raid 与 SATA 与 PATA/IDE 的问题,有时 EFI/UEFI 可能会导致实际启动 windows 时出现问题,但听起来比这低级。
对于华硕,设置启动驱动器的实际位置通常位于一些模糊、不直观的地方。它通常有一个启动顺序,但每个插槽只能选择一个驱动器,并且通常启动选择屏幕不是驱动器选择屏幕;但是,它可能仍会设置但不会选择正确的顺序(我有一块华硕主板,它会不时忘记哪个是正确的启动驱动器并重新排序我的磁盘,因此尽管将其保存到配置文件中,它仍会不断失败;不用说,我对华硕主板非常不满)。如果你四处寻找,应该会有一个磁盘或存储选项,显示所有连接的磁盘,以及一个完全不同且不合逻辑的屏幕来实际设置启动驱动器。
无论如何,如果 BCD 可以启动,我就不会乱用它。我的设置是从某个旧的 C: 驱动器启动,但启动我添加并移动 Windows 的 SSD。所以是的,如果它不是从正确的驱动器启动,或者 MBR 与 Windows 安装位于不同的磁盘上,BCD 在这些情况下很有用。如果您发现正确的驱动器在 bios 中设置正确,那么一定要用 BCDedit 乱用……但如果它甚至不允许您设置正确的启动盘,那么它可能不是 Windows/MBR 问题。
有时重新排序物理 SATA 连接也有帮助,但前提是您的某个 SATA 端口出现故障(并且恰好是那一个)。
答案2
此处 P0 至 P4 表示分区中插入的 SATA 端口数。Windows 启动管理器应从插入相应端口的分区启动。将 SSD 连接到 SATA 端口 1。从启动菜单中删除不可启动的分区。
如果 BootLoader 也坏了,你必须修复并重建 BCD 存储。插入 Windows 10 安装介质,单击修复我的电脑以进入 WinRE,然后选择疑难解答 > 高级选项 > 命令提示符并输入你的密码。然后运行bootrec /fixmbr
,然后运行bootrec /rebuildbcd
。
如果bootrec /rebuildbcd
找不到 Windows 安装,则我们需要手动删除旧的 BCD 存储。首先运行bcdedit /export c:\backup
以备份旧的 BCD。现在运行attrib c:\boot\bcd -h -r -s
以使启动配置文件可见。然后我们将用替换旧的 BCD ren c:\boot\bcd bcd.old
。然后用重新构建它bootrec /rebuildbcd
。
希望有帮助