Ubuntu开机进入grub界面解决

前言

准备打开我的Ubuntu虚拟机进行愉快的编程时,发现Ubuntu系统进入了GRUB界面,那天正好时1024程序员节,这份特殊的礼物真让人喜欢崩溃。

Ubuntu GRUB

猜测一下原因:可能是开着虚拟机的时候电脑蓝屏,导致grub文件收到损坏了

解决:加载内核进入系统

确定分区

  1. 输入ls命令,查看当前的分区设备,得到如下结果:

    1
    (proc) (hd0) (hd0,msdos5) (hd0,msdos1)
  2. 输入set root=(hd0,m)并按下tab键,弹出分区的详细信息。

    或者通过ls (hd0,msdos5)/boot/grub尝试找到包含grub.cfg文件的分区,该分区是Linux安装的分区。经确认,(hd0,msdos5)是是Linux安装的分区。

  3. 输入set root=(hd0,msdos5)设置使用的根分区

  4. 输入set prefix=(hd0,msdos5)/boot/grub设置启动路径

找Linux /根分区所在磁盘位置

输入cat (hd0,msdos5)/etc/fstab

image-20231026170344792

发现/dev/sda5

指定Linux内核

1
linux /boot/vmlinuz root=/dev/sda5

指定initrd文件

1
initrd /boot/initrd.img

备注:你的vmlinuz和initrd的位置和名称可能有所不同

引导系统

1
boot

现在,终于又可以进入Ubuntu系统了,撒花。

image-20231026171101182

补充

重启后有要进入grub界面,如果有人知道如何不用每次都加载内核,请邮件我呜呜。