看来我必须处理一个经典的 grubrescue 问题,但尽管进行了大量研究,我仍无法修复它或找到一些问题的答案。
我做了什么 ?
6 年前我买了一台预装 Windows 7 的华硕笔记本电脑。我立即安装了 Ubuntu,这种双启动配置运行良好,直到我决定使用恢复分区恢复 Windows。我选择重新安装整个硬盘,但这并不是最好的主意。
因此,我得到了著名的 grubrescue 模式。
Error: no such partition.
grub rescue> ls
(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1)
grub rescue> set
prefix=(hd0,msdos5)/boot/grub
root=hd0,msdos5
我知道旧的 Ubuntu 分区已被删除,因此 grub 无法在其上找到文件系统(列出的 3 个分区可能是 Win7 的系统、数据和恢复分区)。我现在正尝试在 USB 驱动器上启动(我在其中安装了干净的 Ubuntu 或一个启动修复 liveUSB),但我必须面对其他问题:
我可以访问 BIOS,但所有内容都被隐藏并受到管理员密码的保护(我认为是在恢复设置期间安装的)。
我也尝试使用救援模式命令,但我的笔记本电脑无法读取 USB 分区:
grub rescue> ls
(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,msdos1)
grub rescue> ls (hd1,msdos1)/
error: unknown filesystem.
prefix
当我设置root
USB 分区并尝试使用命令加载模块时,出现了同样的错误insmod
。
我不明白我做错了什么,因为我可以从另一台笔记本电脑(Macbook Pro)上的 USB 驱动器启动和使用 Ubuntu。
如果有人遇到同样的麻烦并且知道解决办法。提前谢谢!
答案1
最终解决了这个问题,但是很棘手而且很长。
1.重置 BIOS
首先,我决定尝试重置 BIOS,以便删除不允许我更改启动顺序并优先使用 USB 的管理员密码。我完全拆开笔记本电脑(别忘了取出电池和电源线),取出 CMOS 电池 10 分钟后再放回原位。之后,我就可以用管理员权限进入 BIOS 了。
我认为那部分不太难,但有点危险,可能会损坏笔记本电脑。这应该是您解决 grub 救援或 bios 错误的最后一次尝试。
2. 通过 USB 闪存盘启动
借助 rufus 软件,我从 .iso 文件中创建了一个包含最新 Ubuntu 操作系统的 USB 实时分区。我选择 MBR 系统(用于 BIOS 或 UEFI)并采用 NTFS 格式。
然后,我在 BIOS 中更改了启动顺序,然后就可以在 Ubuntu 上启动了。
3. 修复 grub 引导加载程序
我关注该博客的第二部分(但不完全理解 lilo 的工作原理):https://mashtips.com/fix-grub-bootloader-after-deleting-ubuntu/amp/
4. 重启 Windows
之后,计算机直接在恢复 Windows 分区上启动。由于我已经使用过它(我的问题的原因),我按下了取消按钮,然后我就可以在 Windows 系统分区上启动了。最终的安装过程相当漫长,操作系统重新启动了好几次,但现在一切似乎都正常了。
不知道我的描述是否清楚但它可以帮助某些人!