看山是水 2022-05-20 10:45 采纳率: 100%
浏览 319
已结题

Linux系统 grub rescue 修复引导

①.该虚机系统为RedHat,其上部署业务,正常启动无法进入系统,出现硬盘启动报错,显示错误为 error: file'/ grub2/i386-pc/ normal.mod' not found
②.在网上找了grub修复方法,按网上的方法采取操作如下:
1.1.ls显示出分区
2.尝试ls (hdX,msdosY)/boot/grub,看grub是否存在hdX,msdosY,记录下X,Y的值
3.输入set root=(hdX,msdosY)
4.输入set prefix=(hdX,msodsY)/boot/grub
5.输入isnmod normal
6.输入normal
出现启动菜单,完成修复。
正常输入上述命令,到第5,6步时,命令执行后没有出现启动菜单,出现报错为 file'/ grub2/i386-pc/ normal.mod' not found
③请教下上述问题是哪里出错,能否采取措施解决

  • 写回答

4条回答 默认 最新

  • 种和 2022-05-22 21:13
    关注

    rescue>ls   //查看分区
    再找到linux的安装分区
    rescue>ls (hd0,x)  //x为分区号,直到有目录/boot出现,则为linux所在区,我的为(hd0,6)
    之后就是设置,假设你的linux安装分区也是(hd0,6)
    rescue>set root=(hd0,6)
    rescue>set prefix=(hd0,6)/boot/grub
    rescue>insmod /boot/grub/normal.mod
    到此提示错误,找不到normal.mod
    rescue>ls (hd0,6)/boot/grub查看grub下的目录后发现其下就没有.mod文件,这可怎么办呢?
    不要着急,接下来见证奇迹的时刻到了。。。
    在前言里说了,grub/目录下没有normal.mod,但有个i386-pc的文件,查看之后,里面几乎全是.mod文件,这说明我们还有希望进入normal模式。
    我的解决方法是
    set完root跟prefix之后,直接insmod normal.mod,不给指定路径,然后再normal便可进入启动列表,完整的过程如下
    rescue>ls   //查看分区
    rescue>ls (hd0,x)      //x为分区号,直到有目录/boot出现,则为linux所在区,我的为(hd0,6)
    rescue>set root=(hd0,6)
    rescue>set prefix=(hd0,6)/boot/grub
    rescue>insmod normal
    rescue>normal
    启动linux后在terminal里设置grub
    $sudo  update-grub
    $sudo grub-install /dev/sda          
    解决grub rescue问题时发现grub/目录下没有文件normal.mod怎么办?
    https://blog.51cto.com/oulafen/1369723

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 5月30日
  • 已采纳回答 5月22日
  • 修改了问题 5月20日
  • 修改了问题 5月20日
  • 展开全部

悬赏问题

  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加