我删除了安装 Linux 的分区。因此,启动后,我进入 grub 救援界面。
我在网上搜索了各种方法,但似乎都不管用。我尝试设置启动和前缀,但结果却出错了。我无法实时启动,因为我正在度假,所以没有 USB 或 CD。还有什么我还没试过的选项吗?
信息:
GRUB 2.0
PC: Lenovo Think pad
OS: Windows 10
如果您可以的话,我愿意将其恢复出厂设置。
答案1
问题是由于 GRUB 依赖于存储在 Ubuntu 根目录 ( /
) 或/boot
分区中的配置文件而引起的/boot/grub/grub.cfg
。同一位置还存在 GRUB 模块(驱动程序)。删除 Ubuntu 分区后,这些文件将无法访问。
从该问题中恢复的方法取决于计算机是在 EFI/UEFI 模式下启动还是在 BIOS/CSM/传统模式下启动。
EFI 模式启动
在这种情况下,解决方案通常很简单:您可以使用计算机的内置启动管理器直接启动 Windows。棘手的部分是访问内置启动管理器,因为操作方法因计算机而异。通常是在启动过程的早期按下高数字功能键(F8 或更高),但有时是低数字功能键、Esc、Enter 或其他键。查找启动时提示,查看手册,询问制造商,或者只是尝试我提到的一组键中的随机键。有时,计算机可以配置为禁用进入此菜单的功能,或者您可能会进入它并发现 Windows 条目丢失。在这种情况下,您可能需要尝试更绝望的措施。我自己的rEFInd 启动管理器,安装在 CD-R 或 USB 闪存驱动器上(前面的链接页面有这两种介质的下载链接)可能会在这种情况下有所帮助。如果您可以让 rEFInd 启动,它应该会显示启动 Windows 的选项。
启动 Windows 后,你可以使用第三方 GUI简易UEFI更改启动顺序,将 Windows 启动加载程序放在首位。这应该可以解决问题。作为 EasyUEFI 的替代方案,您可以通过bcdedit
在行政人员命令提示符窗口:
bcdedit /set {bootmgr} path \EFI\Microsoft\Boot\bootmgfw.efi
该bcdedit
命令会创建一个新条目,因此即使内置启动管理器中缺少 Windows 条目,该命令也会起作用。(EasyUEFI 也可以做到这一点,但在其 GUI 中调整启动顺序更为明显。)
BIOS 模式引导
这是比较棘手的情况。我想到了一些解决方案,但大多数都需要使用外部媒体和适当的恢复工具:
- GRUB 命令-- 无需额外工具即可临时启动 Windows 的一种方法是在提示符下自行发出适当的 GRUB 命令
grub>
。此 Stack Exchange 问题和答案描述如何做到这一点。 - 超级 GRUB 2 磁盘- 这超级 GRUB 2 磁盘是一种紧急恢复工具,可以帮助您启动 Windows,但您需要将其写入 CD-R 或 USB 闪存驱动器才能启动。
- Windows 恢复工具-- 如果您可以准备 Windows 应急磁盘,则应该能够通过键入从命令提示符窗口将 Windows 引导加载程序写入 MBR
BOOTREC /FIXMBR
。如果您可以通过上述方法之一启动主 Windows 安装,此命令也应该能够永久运行。可能还有其他特定于 Windows 的恢复工具或程序,但我不是这方面的专家。 - Ubuntu 恢复工具-- 如果您可以启动 Ubuntu(或其他 Linux)紧急系统,您可能能够编写一个绕过 GRUB 并直接启动 Windows 的 MBR。这一页描述了一种实现此目的的方法。
- 重新安装 Ubuntu——您可以重新安装 Ubuntu 以获得可以运行的 GRUB,从而恢复启动 Windows 的能力。
- 取消删除 Ubuntu 分区-- 您可以使用类似的工具测试磁盘恢复您的 Ubuntu 分区,从而恢复
grub.cfg
其他 GRUB 文件并使 GRUB 再次工作。当然,您需要启动紧急磁盘来运行 TestDisk。
大多数 BIOS 模式方法也适用于 EFI 模式启动,尽管有些需要调整。例如BOOTREC /FIXMBR
,不是在 EFI 模式安装上工作;您应该使用 EasyUEFI 或bcdedit
执行等效操作。