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 版权协议,转载请附上原文出处链接和本声明。