升级Windows 10时,出现grub rescure的解决步骤

来源:互联网 发布:mysql 批量删除数据 编辑:程序博客网 时间:2024/04/28 08:30
  • 说明:

电脑之前装的是WIN7+Fedora双系统,在Win7升级到Win10的过程中,出现:

GRUB loadingerro: unknown filesystemgrub rescue>_

  • 原因:升级Win10过程中,破坏了本来写到启动分区的grub文件。
    • 在rescue模式下,只有少量的基本命令可用,必须通过一定的操作才能加载正常模块,然后进入正常模式。
      rescue模式下可使用的命令有:set,ls,insmod,root,prefix(设置启动路径)
  • 解决方法:
  1. 找到有文件系统的分区
    • grub rescure > ls
      • 出现:(hd0)  (hd0,1) (hd0,2), (hd0,3)
    • 分别ls 上面4个分区点,有3个都出现"unknown filesystem",但是有一个可能有文件,可能说其它信息,我的是:
    • ls (hd0,3)
      • 出现 unknown file ""
    • 可能(hd0,3)中有文件系统
  2. 找到grub
    • ls (hd0,3)/boot 果然发现一些文件和文件夹
    • 然后自己手动继续搜索有名字为grub的地方,我的找到是在(hd0,3)/boot/grub2
  3. 寻找normal.mod
    • ls (hd0,3)/boot/grub2继续在它及其子目录中寻找normal.mod,我在(hd0,3)/boot/grub2/i386-pc下找到
  4. 启动Linux
    • grub rescue>setroot=(hd0,3)grub rescue>set prefix=(hd0,3)/boot/grub2grub rescue>insmod (hd0,3)/boot/grub2/i386-pc/normal.modgrub rescue>normal
  5. 顺利启动了Linux,
    • 但是如果重启Linux,仍然会出现上面的问题,因为我们没有解决根本的问题。
    • 为了解决此问题,需要把grub写到启动分区里。网上有很多方法都是用LiveCD的方法,感觉不方便。我是直接用命令修复
  6. 修复grub到启动分区
    • grub2-mkconfig -o /boot/grub2/grub.cfg
    • grub2-install /dev/sda

重启,恢复正常。

0 0
原创粉丝点击