Linux双系统grub启动报错error:“file‘/grub/x86_64-efi/normal.mod‘not found“

  • Post author:
  • Post category:linux




Linux双系统grub启动报错error:“file’/grub/x86_64-efi/normal.mod’not found”

在这里插入图片描述



一、出现原因

笔者在整理扩展系统C盘时,因为调整了各分盘之间的分区情况,导致E盘(与c盘一个磁盘)中Linux系统找不到原先的开机启动文件,所以开机时就会出现找不到文件的情况:如图所示

在这里插入图片描述



二、解决办法

首先可以

set

一下看一下目前的linux启动指向位置:

在这里插入图片描述

我们要做的就是改变现在的位置,让系统指向正确的启动位置。

如何找到正确的启动位置呢?首先

ls

一下看看gpt有多少个分区:

在这里插入图片描述

一个一个

ls

尝试如下图,找到不是unkown filesystem的分区,最终我找到了(hd1,gpt7)是可行的。

注意:可能有多个不是unkown filesystem的分区,但是后面接/grub能成功的只有一个!

在这里插入图片描述

随后即可修改启动文件根目录和预设地址的操作:

在这里插入图片描述

> set root=(hd1,gpt7)/grub
> set prefix=(hd1,gpt7)/grub
> insmod normal
> normal 

执行完

normal

回车即可,随后就来到了我们熟悉的选择系统环境页面,这时候并没有结束,这仅仅是临时的修改,下次启动时还会出现这样的情况,还得再来一遍以上操作;

我们进入Linux系统,终端写入以下命令:

> sudo grub-update
> sudo grub-install /dev/sda

将grub引导器安装在第一块磁盘的引导区



再次启动系统,问题解决√



版权声明:本文为weixin_46020266原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。