在 Ubuntu 16.04 中更新后,我最终进入了 GNU GRUB 并且似乎卡在那里

Kun*_*uns 3 boot grub2 lenovo crash

我还没有解决这个问题,但我会更新我的问题。

我在 Ubuntu 16.04 中运行正常更新,突然出现 GNU GRUB 屏幕。我是通过 Ubuntu 软件更新的,而不是从终端更新。我运行 64 位 AMD,并且我在这台计算机上只有 Ubuntu(没有双启动)。我新买的电脑不到一年。它是联想 Ideapad 510。

白天,我看到至少有另外两个人今天似乎遇到了同样的问题,也是在 16.04:

https://ubuntuforums.org/showthread.php?t=2384382

升级后无法启动

我想,但不能确定,我和这两个有同样的问题。第二个链接中的人似乎找到了一个可以启动系统但带有一些错误消息的解决方案。然而,GNU GRUB 似乎非常复杂,并且很难知道从哪里开始尝试了解它。换句话说,我不明白她做了什么。

我确实找到了这个:

https://www.linux.com/learn/how-rescue-non-booting-grub-2-Linux

其中提供了一些关于 GRUB 的初学者说明。我确实设法找到了我的内核在哪里(hd0,2)。然而,这里从 GRUB 引导的说明最终对我没有帮助。它说 vmlinuz 版本和 initrd 版本应该是相同的。然而,结果我的电脑上有很多不同的vmlinuz版本,我不知道该选择哪个。那么上面的文档说:“在某些 Linux 系统上,当前的内核和 initrds 被符号链接到根文件系统的顶层:”所以可以试试这个:

grub> set root=(hd0,2) 
grub> linux /vmlinuz root=/dev/sda1
grub> initrd /initrd.img
grub> boot 
Run Code Online (Sandbox Code Playgroud)

嗯,我试过这个。终端充满了不同的脚本(?),所以我一开始很有希望,但这个过程现在以以下奇怪的最后几行结束:

No init found. Try passing init=bootarg.
[    4.104041] usbcore: registered new interface driver usbhid
[    4.104831] usbhid: USB HID core driver
BusyBox v1.222.1 (Ubuntu 1:1.22.0-15ubuntu1) built-in shell (ash)
Enter 'help' for a list of built-in commands
(initramfs) [   7.925590] random: nonblocking pool is initialized 
Run Code Online (Sandbox Code Playgroud)

所以这就是我所在的地方。有没有人对我有任何智慧?我想不能排除硬件故障,但我的直觉告诉我,这个问题是由今天早上那个致命的 Ubuntu 更新引起的。

我看到我的问题中有些文字是粗体的。我不知道为什么会这样,如果这让我的问题难以阅读,我深表歉意。

Kun*_*uns 5

我已经解决了我的问题,所以我决定回答我自己的问题。

我能够通过 GRUB 启动我的计算机,通过对这里的说明进行小的修改:

https://www.linux.com/learn/how-rescue-non-booting-grub-2-Linux

在 GRUB 提示符下,我输入:“ls”以获取所有分区的列表。

该列表看起来像这样: (hd0) (hd0,gpt1) (hd0,gpt2) ...

在获得分区列表后,我输入:“ls (hd0,1)/”以确定启动菜单是否在该分区中。请注意,此时您可以删除“gpt”并使用分区编号。我对每个分区都这样做,直到我发现哪个分区包含引导目录。

对我来说,原来启动菜单在 (hd0,2)

然后我输入以下命令:“ls (hd0,2)/boot”以获取引导目录中的文件列表。

我从上面的链接中了解到,这方面的重要文件是一个名为 vmlinuz 的文件和一个名为 initrd.img 的文件。我想这两个文件(在启动菜单中的其他文件中)会有不同版本是正常的。在任何情况下,我都注意到了两者的最新版本,很重要的是,vmlinuz 和 initrd 具有相同的版本号。

注意到这一点后,我输入了以下命令。其他人的分区号和版本号可能不同,但重要的是,如前所述,vmlinuz 和 initrd 具有相同的版本号,并且“sda”后面的数字对应于分区号。

grub> 设置 root=(hd0,2)

grub> linux /boot/vmlinuz-4.4.0-89-generic root=/dev/sda2

grub> initrd /boot/initrd.img-4.4.0-89-generic

grub> 启动

从它启动的意义上说,它工作正常,没有任何明显的错误消息。我不知道是否可以重新启动,但我现在有机会将所有未备份的文件复制到外部硬盘上。另外,我可能会下载并制作新的安装 DVD。(我放错了我的原始安装 DVD,这是我的问题的一部分)。然后我会尝试重新启动。

是的,我再也不会从“Ubuntu 软件”更新了!