卡在 grub 救援状态

卡在 grub 救援状态

我从分区中删除了 Ubuntu,并且也删除了那些分区,此后每当我启动窗口时,grub 救援屏幕都会弹出,并且不让我进入 BIOS。

答案1

我猜你正在使用启用了快速启动的 UEFI 启动,因此没有时间按下启动进入设置的按键。

使用 GRUB 提示符中的命令fwsetup。它应该会重新启动计算机进入设置。然后删除 GRUB 作为启动选项。

您也可以选择从 EFI 系统分区中删除 GRUB,但将其保留在那里也没什么坏处。您可以通过为分区分配一个字母diskpart并从那里删除 Ubuntu 残余来实现这一点。

答案2

首先,了解你的系统规格很重要。它可能

  1. 带有 BIOS 的 PC,或
  2. 带有 (U)EFI 的 PC。

如果是后者,可以配置为

  1. 原生 UEFI 模式
  2. 兼容/传统模式,BIOS 兼容(称为 CSM,UEFI 兼容性支持模块的缩写)

由于现代 PC 在 2010 年之前就使用了 UEFI,因此它很可能是 UEFI-PC,但它可能处于本机模式或传统 (BIOS) 模式,即 UEFI-CSM。这种差异至关重要,因为它定义了使用哪个分区表(进而也定义了系统如何启动):

  1. 原生 UEFI 模式:GUID 分区表 (GPT)
  2. CSM(BIOS 模式):主引导记录 (MBR)

在 UEFI 模式下,启动顺序与 BIOS 方式完全不同,但 GRUB 可以在两种情况下启动,并且看起来也相同。

情况1

假设你处于 UEFI 模式:(U)EFI 使用一个带有 EFI 引导加载程序的特殊分区,称为财务信息年代系統分区,或者简称为 ESP。根据 UEFI 规范,它是一个 FAT 分区(FAT32,但 FAT16 也应该可以工作)。不过,一些非标准 UEFI 也支持 NTFS。千万不要删除此分区,因为它会破坏所有引导加载程序,包括用于 Windows 的和用于 Linux 的。如果你这样做了,你就完蛋了,但既然你看到了 GRUB 消息,情况就不应该如此……

此外,在 UEFI 模式下,引导加载程序会向固件注册,并且此信息会存储在 NVRAM 中。在 UEFI 固件设置中(有时仍称为 BIOS 设置,尽管它不再是 BIOS),可以预期会列出这些引导选项,但只能从 EFI 控制台(高级用户的东西,甚至不要尝试)或从已启动的操作系统添加此类引导选项。Windows 安装过程和 Linux 安装程序会处理此问题。如果此信息丢失,或者将其设置为不存在的引导加载程序,UEFI 将拒绝启动。有时有一个预定义的引导加载程序,通常用于可移动(外部)媒体,它应始终作为内部媒体的后备:在 ESP 上,这些后备引导加载程序是\EFI\BOOT\BOOTX64.EFI(用于 x86 上的 64 位 EFI)或\EFI\BOOT\BOOTIA32.EFI(用于 x86 上的 32 位 EFI)。(对于 ARM 和 Itanium,这些将是BOOTARM.EFI/BOOTAA64.EFIBOOTIA64.EFI。)

因此,这是最好的情况:Ubuntu Linux 以这种方式安装,并且 GRUB 引导加载程序仍设置为默认的 UEFI 引导加载程序。UEFI 从 ESP 加载 GRUB,并且 GRUB 找不到其引导配置,因为您已删除 Linux 引导分区以及 GRUB 的配置。

解决方案:使用 UEFI 设置列出所有可能的启动选项并启动 Windows 引导加载程序。使用 EFI 后备可能也有效,但很有可能在安装 Ubuntu 后,此后备也已更改为 GRUB,在这种情况下,选择它不会以任何方式改变结果。如果您能够从另一个驱动器(如 USB 笔式驱动器)启动,并将 Windows EFI 引导加载程序复制\EFI\Microsoft\Boot\bootmgfw.efi\EFI\BOOT\BOOTX64.EFIESP 上,那么您应该能够成功重试 EFI 后备启动选项。

无论如何,请查阅计算机手册,了解开机后必须按下(或按住)哪个键才能获得此启动选项列表。通常,它是功能键之一,例如F10F12。Microsoft列表 Esc、、、、、、和作为常用键。Delete这很容易,至少可以重新启动Windows F1F2F10F11F12

一旦 Windows 启动并运行,您必须使用 Windows 的功能将其引导加载程序设置为 NVRAM 中的 EFI 默认值。有几种方法可以做到这一点,但我建议使用手动方式启动BCD从命令行。为此,启动命令提示符,您可以在 Windows 开始菜单中找到它。右键单击它并选择“以管理员身份运行”(可能隐藏在“更多”后面,因此请先单击它)。或者,可以使用运行功能打开它:在 Windows 桌面上按住 键,Windows同时按下R键:⊞ Win+ R。将打开一个小窗口“运行”。输入“runas /user:administrator cmd.exe”并点击Enter

现在使用 BCDBoot 如下

Bcdedit /set {fwbootmgr} displayorder {bootmgr} /addfirst

如果你不小心删除了 EFI 系统分区,则只能通过以下方法恢复 Windows:使用外部 Windows 安装介质,例如安装 DVD 或 USB 笔式驱动器,或任何其他外部恢复方法。Windows 10 安装程序有一个恢复选项,可以重新安装启动配置,这应该会相应地重置 ESP。

案例 2

您处于 BIOS 模式。这可能意味着您有一台非常旧的 PC,但实际上有 BIOS,或者您有一台带有 (已确认)可扩展F固件接口,因此是 EFI 或 UEFI,但在旧式 BIOS 模式下使用模拟 BIOS 的兼容性支持模块。本质上两者是相同的,因为:

  • 分区表必须与 BIOS 兼容,在 99.9999% 的情况下是主引导记录 (MBR)。
  • 引导扇区(驱动器的前 512 个字节)必须包含引导加载程序。MBR 包含这样的引导加载程序。

如果是这种情况,最好的方法是重置 MBR使用外部 Windows 安装介质(安装 DVD 或 USB 笔式驱动器)并启动命令提示符。这是恢复选项

进入命令行后,使用以下命令重置 MBR:

c:
bootrec /FixMbr
bootrec /FixBoot

第一行更改为驱动器 c:,大概是 Windows 安装在内部驱动器上的位置。您可能希望bootrec /ScanOs先运行以列出已安装的 Windows 系统。根据此信息,您可能需要更改C:为安装 Windows 的驱动器。第二条命令将重置 MBR,第三行重置分区引导扇区。也许还需要运行bootrec /RebuildBcd以完全重建引导配置。(参考:Windows RE 进行故障排除

任何状况之下

一般来说,修复操作系统启动问题的最佳方法是使用该操作系统的原始安装介质。因此,如果您需要修复的是 Windows 10,请使用 Windows 10 安装光盘或 USB 笔式驱动器。您需要一个可以正常工作的 Windows 10 系统(例如来自朋友或同事)、一个 8GB 或更大的空 USB 笔式驱动器以及互联网连接(没有数据问题,最好是无限数据计划)。然后下载Windows 10 媒体创建器,运行它并下载文件并将其放在 USB 驱动器上。警告:此 USB 驱动器上的所有先前内容都将被彻底删除!

你真的想要这个(外部的)Windows 安装媒体!

我希望这有帮助。

祝你好运!

顺便说一句,类似的问题已经被问过多次了,例如删除 Ubuntu 后如何恢复 Windows 引导加载程序,但这仅当一个操作系统能够启动时才有效......

相关内容