美文网首页
win+ubuntu双系统电脑开机出现 grub rescue

win+ubuntu双系统电脑开机出现 grub rescue

作者: 西北小生_ | 来源:发表于2020-08-20 13:23 被阅读0次

    出现这种情况有好几种原因:
    1.安装双系统后,在win上删除了ubuntu分区;
    2.在win上进行了磁盘分区或删除了逻辑分区(比如删除了D盘)。

    如果是因为想重装ubuntu系统而删除了其分区后出现的这种情况,直接插U盘重启按F2键进行Ubuntu重装就好了,安装方法请看我的博客

    如果是其它情况,要保留系统里的重要文件,就需要进行启动引导项修复。方法如下:

    1. 用 ls 命令查看所有盘符:
    grub rescue> ls
    

    这时你会看到返回的所有盘符,比如:

    (hd0) (hd0,msdos2) (hd0,msdos5) …… (hd1) (hd1,msdos1) …

    上面的 hd0, hd1表示你的电脑上有两个硬盘,0和1分别是硬盘编号。(hdn,msdosm)是指不同硬盘上的分区,其中n和m指确切的数字。

    2. 找启动引导文件grub.cfg所在的分区:

    我们在装ubuntu系统时,一般会给启动引导项划分一个名为 “boot/”的分区,在这个分区里存放系统启动引导项。如果没有划分这个分区或者不记得有没有划分了也不要紧,请接着看:

    (1)如果有划分“boot/”分区,那么grub.cfg文件在某个磁盘分区的(hdn,msdosm)/grub目录下,反复执行命令:

    ls (hd0,msdos1)/grub
    
    ls (hd0,msdos2)/grub
    

    ……
    也就是说把刚才用ls命令返回的所有分区都试一遍,直到返回grub.cfg文件时停下,记下这个分区名,比如我的ubuntu安装在第一个硬盘上,我只需要找hd0相关的分区,最终发现是在(hd0,msdos7)下有grub.cfg文件。

    (2)如果没有划分“boot/”分区,那么grub.cfg文件在某个磁盘分区的(hdn,msdosm)/boot/grub目录下,反复执行命令:

    ls (hd0,msdos1)/boot/grub
    
    ls (hd0,msdos2)/boot/grub
    

    ……
    也就是说把刚才用ls命令返回的所有分区都试一遍,直到返回grub.cfg文件时停下,记下这个分区名,假如最终发现是在(hd0,msdos7)下有grub.cfg文件。

    3. 修复grub引导:

    假如最终发现是在(hd0,msdos7)下有grub.cfg文件:
    (1)如果 boot/ 单独分区,执行命令:

    set root=(hd0,msdos7)
    set prefix=(hd0,msdos7)/grub
    insmod normal
    normal
    

    (2)如果 boot/ 没有单独分区,执行命令:

    set root=(hd0,msdos7)
    set prefix=(hd0,msdos7)/boot/grub
    insmod normal
    normal
    

    正常情况下,执行完以上命令后,电脑就能开机进入启动引导选项了,可以选择进入windows或者ubuntu。这是选择进入Ubuntu,进行更新系统grub引导。

    1. 更新系统grub引导:
    2. 执行命令:
    sudo update-grub
    
    sudo update-grub2
    

    更新系统grub引导。

    1. 执行命令:
    sudo grub-install /dev/sda
    

    重新安装grub.

    相关文章

      网友评论

          本文标题:win+ubuntu双系统电脑开机出现 grub rescue

          本文链接:https://www.haomeiwen.com/subject/zkpsjktx.html