麒麟桌面系统【grub引导修复】

一、问题现象:

开机无法正常进入系统,而是进入了grub界面,如下图所示:
file


二、问题分析

在用户使用过程中,因为各种原因出现grub.cfg损坏,导致系统在启动过程中卡住,如上图所示,此时需要对grub.cfg进行修复。


三、处理方法

  1. 确认分区:在grub界面,使用ls命令,可以看到对应的分区目录内容,一般来说,(hd0,msdos1)就是sda1, (hd0,msdos1)就是sda2。
    file
     

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

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

  4. 手动引导
    这里以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

    file
    其中,linux16和initrd16不是定值,多按几次tab键,查看补全情况来选择,一般选择高版本,如下图所示:
    file
     

  5. 修复grub.cfg
    进入系统后,打开命令行,执行以下命令:
    sudo su
    grub-mkconfig -o /boot/grub/grub.cfg
    等待完成后,即会在/boot/grub/下重新生成一份grub.cfg,如下图所示:
    file
    此时已完成了修复,重启系统验证是否正常进入系统。

发表回复 0

Your email address will not be published.