更新后,获取“错误:找不到文件。”,然后显示“ grub rescue> _”


23

我刚刚安装了很多12.10更新,被提示重新启动,然后发现我无法启动。


由于信誉欠佳,我尚未允许添加评论,所以我以这种方式添加评论...我使用了8128s Answer wit Boot-repair,但是我不得不在apt-get update sudo sed's / trusty之前添加此行/ saucy / g'-i /etc/apt/sources.list.d/yannubuntu-boot-repair-trusty.list,就像您在他添加到答案的链接中所看到的
Dominik

Answers:


28

使用Boot Repair修复您的引导程序。

  1. 从LiveCD或Live USB引导Ubuntu
  2. 连接到互联网
  3. 打开终端,然后添加启动修复PPA

    sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update

  4. 安装启动修复

    sudo apt-get install -y boot-repair && boot-repair

  5. 启动和使用,有关更多详细信息,请参见https://help.ubuntu.com/community/Boot-Repair#Using_Boot-Repair


我必须以root用户(sudo su)的身份运行3.而不是sudoing
David Brossard

1
谢谢!!停电后保存了我的服务器。是时候购买UPS了!
Domenic D.

与Kubuntu 13.10一起使用并工作。谢谢。
大卫,

9
  1. 键入ls以获取分区列表
  2. 输入set prefix=(hd0,msdos6)/boot/grub[您几乎肯定会在括号中输入其他驱动器/分区,您可能只需要尝试列出的所有驱动器/分区,ls直到找到有效的驱动器/分区。
  3. 类型 insmod normal
  4. 键入normal,您将返回引导提示!

另请参阅:我在这里找到有用的地方。我怀疑这对遇到此错误的每个人都有效,但是我将其放在此处希望对您有所帮助。

一旦你载入Ubuntu的,运行sudo grub-install /dev/sdasudo update-grub尽快。这意味着您不必在每次启动计算机时都执行上述繁琐的过程。


9
当我正常运行insmod时,它再次说未找到文件
tovmeod,2012年

1
您也可以使用该命令ls (hd0,msdos1)/来检查分区的内容,如果您有很多分区,则速度会更快。
乔纳森(Jonathan)

这对我有用,但我有一个单独的引导分区,所以格式为set prefix=(hd0)/grub,因为您需要grub在驱动器上引用相对于驱动器上的分区的目录,而不是相对于其安装点的目录。
尼克·库恩斯

4

我有相同的问题- normal.mod not foundls引导分区会产生一个空行。经过一周的故障排除后,可以正常启动系统,这是我执行的步骤。

  1. 获得了SuperGrub的副本并创建了启动CD。现在,我可以重新登录系统了。获得了BootRepair的副本,不能使系统直接从硬盘启动,因此不得不继续使用CD。BootRepair确实表现得有些奇怪,因为Grub位置和Grub选项均显示为灰色。它确实报告安装成功。

  2. 最初设置了硬盘驱动器:(
    sda1 ext4 root with boot
    sda2 linux swap
    sda3 ext4 used as a spare drive用于虚拟机的虚拟机)。

  3. 使用了Ubuntu 10.10 Live CD的副本。冉的GParted安装gparted缩小sda1分区,创建sda4在驱动器和一套安装点的前ext4的启动分区/boot从删除boot目录之后/。BootRepair现在具有可用选项。安装在启动分区上,现在可以从硬盘启动。

  4. 出于好奇,我决定进一步调查。引导修复日志在我的sda1ext4分区中有一个特殊的条目,据报告是,它DOS有一个短的8个字符的UUID,而不是blkid报告的UUID。 grub-probe报告文件系统为vfat。

  5. 经过许多其他试验后,我清除了sda1分区记录的前440个字节。 Grub-probe现在将文件系统报告为ext2。然运行,update-grubsda1显示该分区的正确UUID 。

这个问题似乎有两个方面:
1.它似乎影响分区记录引用了msdos的安装。
2. grub-probe不会尝试解决fs类型与分区记录中的内容之间的不匹配问题。


1

要检查的另一件事是BIOS中的引导顺序。我显然已经在所有磁盘上安装了grub(也许是在遵循8128的回答之后),但是在更新Linux发行版(Debian)时,这崩溃了。在我的Linux操作系统修复它时更改第一个引导盘。


0

我遇到了将此错误升级到Kubuntu 13.10的错误。远程升级期间,我有一个记忆棒插入了USB端口。重新启动后,我直接进入Grub Rescue。拔下USB驱动器并重新启动即可解决此问题。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.