麒麟桌面系统【grub引导修复】
一、问题现象:
开机无法正常进入系统,而是进入了grub界面,如下图所示:

二、问题分析
在用户使用过程中,因为各种原因出现grub.cfg损坏,导致系统在启动过程中卡住,如上图所示,此时需要对grub.cfg进行修复。
三、处理方法
-
确认分区:在grub界面,使用ls命令,可以看到对应的分区目录内容,一般来说,(hd0,msdos1)就是sda1, (hd0,msdos1)就是sda2。

-
对每个分区都使用ls查看一下目录内容,确认grub分区目录,如下图所示:

-
继续ls,如下图的分区,即是root分区也就是根(/)分区

-
手动引导
这里以x86的系统为例,其他系统上是会有一些不同,不要照敲,多用tab键补全信息,避免敲错。#a. 设置grub的根分区,上一步中已经查明 set root=(hd0,msdos1) # #b. 加载内核并设置系统根目录所在分区,vmlinuz-4.4.131-20200710.kylin.x86-generic可自动补全 linux16 /vmlinuz-4.4.131-20200710.kylin.x86-generic root=/dev/sda2 # #c. 加载系统镜像,initrd.img-4.4.131-20200710.kylin.x86-generic可自动补全 initrd16 /initrd.img-4.4.131-20200710.kylin.x86-generic # #d. 启动系统 boot
其中,linux16和initrd16不是定值,多按几次tab键,查看补全情况来选择,一般选择高版本,如下图所示:

-
修复grub.cfg
进入系统后,打开命令行,执行以下命令:
sudo su
grub-mkconfig -o /boot/grub/grub.cfg
等待完成后,即会在/boot/grub/下重新生成一份grub.cfg,如下图所示:

此时已完成了修复,重启系统验证是否正常进入系统。