如何修复导致 Windows 启动管理器错误的磁盘管理器问题?

如何修复导致 Windows 启动管理器错误的磁盘管理器问题?

我的桌面用户错误地在磁盘管理器中单击了 C: 驱动器上的“使驱动器处于活动状态”。当我尝试重新启动计算机时,这导致 Windows 启动管理器出现错误。以下是我不明白的地方:

我有两个驱动器,一个 C 驱动器和一个 E 驱动器。C 驱动器装有 Windows 10 操作系统,所以它应该已经处于活动状态了,对吧?E 驱动器没有操作系统,它只是用来存储。在我的 BIOS 中,启动优先级只显示我的 C 驱动器磁盘,但是当我单击“启动菜单”时,我能够看到两个磁盘。如果我单击我的 E 驱动器磁盘,计算机将正常启动。如果 E 驱动器没有操作系统,这怎么可能呢?我该如何在不丢失所有文件的情况下解决这个问题?如果一切正常,磁盘管理器看起来和我预期的一样,但我对它不是很熟悉,所以我可能是错的。此外,E 驱动器没有写入新文件(最近几个月),所以它不可能真正从 E 驱动器启动?

我尝试使用装有 Windows 10 安装介质的 USB 进入恢复终端并执行bootrec /fixmbrbootrec /fixBoot。第一个成功执行,第二个由于某种原因我无法访问,尽管我是管理员。

下面的截图描述了这种情况。 在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

答案1

首先,正如您在磁盘管理中看到的,“驱动器号”属于分区,而不是整个磁盘 - “E:”不是您的整个硬盘,“E:”只是其中一个该硬盘上的分区。其次,类似地,“活动”标志仅针对特定分区设置,而不是针对整个磁盘。

因此 E: 中是否有操作系统并不重要,因为它不是您要从中启动的“E:驱动器”——这是执行该作业的另一个“系统保留”分区,而您的 Windows 启动管理器恰好位于该分区。

(在“传统”启动模式下,你使用的磁盘管理应用程序实际上无法将整个磁盘设置为活动磁盘——没有用于更改启动顺序的 BIOS 界面——相反,设置的是哪个分区在每个磁盘上应该是活跃的。

也就是说,BIOS 首先选择一个磁盘进行引导,然后该磁盘的 MBR 才会在同一磁盘上查找活动分区。如果找不到,它可能会返回到 BIOS,然后选择另一个磁盘并重复此过程。对于您的情况,BIOS 可能曾是首先尝试 M.2 模块,但它没有活动分区,因此第二个磁盘(即 HDD)最终从其启动。)

最后,请注意,所有最新的 Windows 版本在安装过程中都会创建两个分区 - 一个小分区包含仅有的Windows 启动管理器及其 BCD,以及第二个大分区,其中包含 Windows、您的文件,但实际上没有启动管理器。(事实上,EFI 启动模式几乎需要两个分区,但 Windows 即使在旧版 BIOS 系统上也这样做,以尽量减少差异。有些计算机只有一个分区,有时是从 WinXP 升级的结果,但一般来说,有两个分区是正常的。)

因此,就您而言,您实际上最终得到了一个拆分安装,其中实际的 Windows 操作系统分区位于 M.2 模块上,但 Windows 启动管理器分区位于 HDD 上。(这可能是一个意外,可能是由于 HDD 在 BIOS 启动顺序中排在第一位,也可能是故意的。)


解决此问题的一种可能方法是再次从 Windows 安装 USB 启动,这次运行bcdboot以将整个 Windows 启动管理器安装到 C: 分区。例如:

bcdboot C:\Windows /s C: /f BIOS

这会将“新鲜”的启动管理器文件从 C:\Windows\Somewhere 复制到 C: 分区中的适当位置,用于 BIOS(传统)启动模式。


就我个人而言,我宁愿花更多的时间来缩小/移动 C:分区,为单独的“系统保留”分区腾出一些空间 - 然后bcdboot在那里安装 Windows 启动管理器。

这样做可以更好地满足微软对“标准磁盘布局”的期望,并且以后也更容易将磁盘转换为 GPT/UEFI 启动过程。(我见过一些主板,将固件设置为仅 UEFI 并禁用传统启动支持会使启动过程缩短几秒钟。)

(尽管当前分区为 50 MB,但 Microsoft 的建议是 100 MB。传统上(但不是必需的)将“系统保留”分区作为第一个/最左边的分区,因此可以使用 GParted Live 将 C:\ 移动到右侧。)

相关内容