Ubuntu+Win7双系统grub的修复问题

  最近,在grub引导的Ubuntu+Win7双系统上作业,用的是Ubuntu14.04.2。进行系统更新,更新到一般卡住了,恰好此时在进行grub相关文件的更新,我把机器重启后进入了grub rescue模式,如下:

  error: file ‘/boot/grub/i386-pc/normal.mod‘ not found.

  Entering rescue mode...

  grub rescue>

  经过网络一番查找和自身验证,我汇总了三种解决方法。

  1.制作Ubuntu的U盘启动工具,选择U盘启动机器,进入Try Ubuntu,安装boot-repair工具,用该工具回复损坏的grub.

    a.在命令行下安装boot-repair,首先链接源地址:$sudo add-apt-repository ppa:yannubuntu/boot-repair

                         $sudo apt-get update

                         $sudo apt-get install boot-repair

    b.安装成功后可以在dash中或终端里启动boot-repair,开始修复系统。

    c.系统修复可能需要几分钟,后关机拔掉U盘,再启动。即可看到熟悉的grub引导界面了。

  2.直接在grub rescue模式下选择normal模式启动,然后再修改更新grub。这种方法的关键点有三个,一是选择好grub所在的分区目录,二是找到root所在的分区,三是要有normal.mod文件。该模式下命令有限,常用的有ls set insmod,通过这三个命令,来找到上述文件目录项后设置root和prefix,再选择normal启动模式。

    a.grub rescue>set //该命令会列出boot目录所在的分区,grub目录所在的分区;

    b.grub rescue>ls  //列出所有分区,样式如(hd0,msdosX);

    c.grub rescue>ls (hd0,msdosX)/  //依次列出每个分区下的目录,找出root在那个分区下,这里我们假设grub在(hd0,msdos6)/boot/grub,root在(hd0,msdos5)分区上;

    d.grub rescue>set root=(hd0,msdos5)

      grub rescue>set prefix=(hd0,msdos6)/boot/grub

       grub rescue>insmod /boot/grub/normal.mod  //若没有normal.mod这个文件,请选择第一种或第三种方法。

    e.grub rescue>normal  //显示grub菜单

    f.通过显示的菜单进入系统后,在命令行对系统进行更新修复。

      $sudo update-grub

      $sudo grub-install /dev/sda  //sda为硬盘号,不是分区号(sda1,sda2等等)

      $sudo shutdown -r now  //重新启动机器

    ps:可以在grub.cfg中修改grub菜单。

  3.若第一和第二中方法无效,那么只能放弃所有从来再来,用做好的启动工具重新做个Ubuntu系统,在更新修复grub -_*!。

 

时间: 2024-10-05 05:06:37

Ubuntu+Win7双系统grub的修复问题的相关文章

折腾ubuntu win7双系统

起因 一年多的时间,使用稳定的双系统,win7和kubuntu18.因为最近用ubuntu较多,需要用到word和ppt文字处理,ubuntu自带的 libreoffice 实在不好用,正好发现 wps 可以在linux下使用了,于是安装了wps,不过在kubuntu下使用wps,一直报一个错,虽然不影响使用,而我在公司电脑gnome 桌面ubuntu是没有这个错误的.于是,想换成gnome了.尽量不重装系统,这是我的想法.于是安装了 gnome-desktop,电脑变卡了,kde-deskto

win7突然无法启动(以前可以启动的,电脑是ubuntu+win7双系统)

这里 有个解决办法是将win7的menuentry里的chainloader +1改为ntldr /bootmgr,但是这个解决办法是基于把Boot Loader指定在/dev/sda1里了,即win的启动分区上了: 但是我是把Boot Loader指定在/dev/sda上的,而且之前win7启动是正常的,现在忽然就不行了,网上转了一圈,我尝试了sudo update-grub,然后重启电脑,然后根据引导直接修复了window,直接还原到上次可用状态,最后成功进入win7.

Ubuntu与Win7双系统下,改变分区导致error:no such partition grub rescue>

我电脑装的是windows和ubuntu双系统.在windows下改变分区,包括新建分区.删除分区.合并分区等操作,会造成Ubuntu的grub找不到分区,以致进入grub rescue模式.这时可以通过如下方式恢复.摘抄http://www.cnblogs.com/ZhangZhifeng1988/archive/2011/12/19/2294018.html如下: 上网找了很多方法问题终于解决了.网上的内容大概有那么三种,一种是用LiveCD,只有挂了的这一台电脑,在公司里也懒得再下系统刻C

Ubuntu和Win7双系统,设置默认启动项

使用Ubuntu gub引导 修改/boot/grub/grub.cfg:         set default="n" n : 在系统启动时显示的菜单选项的位置,从0开始计数,如Ubuntu选项在第一个,设置默认从Ubuntu启动,则将n设置为 0. Ubuntu和Win7双系统,设置默认启动项,布布扣,bubuko.com

windows+Ubuntu双系统 windows引导修复

我的博客:http://blog.csdn.net/muyang_ren 装完windows+Ubuntu麒麟双系统后,发现引导是Ubuntu的. Ubuntu的引导是GRUP windows的引导是MBR 要想windows引导的话只要修复MBR就行了,下面是我用easybcd的是用

ubuntu windows 双系统 磁盘乱搞 grub 导致 error:no such partition grub rescue>

乱搞分区磁盘什么的导致开机和这位仁兄一样:http://zhidao.baidu.com/question/495602654256708364.html?ssid=0&from=1001874a&uid=0&pu=usm%401%2Csz%401320_1002&bd_page_type=1&baiduid=7072D7CC851F02903DD10EABC3E63223&tj=www_zhidao_normal_5_0_10_title 然后每次到可以通

Ubuntu杂记——双系统重装Win7后找不到Ubuntu的解决办法

之前装过Ubuntu和Win7的双系统,后来重装了Win7,发现Ubuntu不见了,那会没怎么用,也没去解决问题.现在再看Android内核剖析,大部分都是在Ubuntu环境下进行的,所以百度了一些方法,怎么把之前的Ubuntu系统恢复过来. 重装Win7后,Ubuntu不能启动并不是因为Ubuntu系统不见了,只是Windows的引导分区把Ubuntu的引导给隐藏了,百度上很多教程都是命令行或者需要做启动盘,好是麻烦,后来终于找到一篇教程,挺简单的,用Easy BCD就可以了. 一.下载并安装

win10下安装win7双系统

win10下安装win7双系统 相信很多人和博主一样,心血来潮就升级了win10(要不就被强制升级了),但是当我们做开发的,渐渐就发现问题了,各种开发软件各种不兼容(ietexter.myeclipse等)不要问博主是怎么知道的说起来都是泪啊!还有,身为一个骨灰级游戏玩家,看着那FPS简直就是惨不忍睹!咳咳,好像扯远了,接下来就进入咱们的正题-- 准备材料: 启动盘一个(U盘,移动硬盘什么的都可以,只要是启动盘就行,网上好多启动盘制作教材,在这里博主就不仔细阐述了) win7镜像文件一份 操作过

CentOS7 + Win7 双系统完美运行安装成功 不需要bcd引导

因为准备学习linux开发,所以要在老机器上安装centos7 win7双系统,我的老机器是500G HDD 划分了360g 给win7 200g 给Centos.网上关于双系统的安装纷繁复杂,而且大多数有误导也无法行得通,我通过看了好多篇总算安装成功了,并且没有使用大量文章中提到的BCD软件做引导,直接修改GRUB2下面的配置文件就搞定了,十分的轻松写意. 1.安装win7不说了,从安装centos7开始,首先下载了ISO文件以后,很多文章提到要使用UltraISO把光盘镜像刷入到U盘里是不行