重新安装了ubuntu12.04后,Ubuntu开机就出现:
error:no such partition
grub rescue >
一般情况下,出现这类错误是引导文件出错或者系统找不到引导文件,而系统并没有坏,所以不用重新安装系统。需要进行如下的设置。
一 grub介绍
grub是一个引导管理程序,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数。
[引导过程]
由硬盘启动时,BIOS通常是转向第一块硬盘的第一个扇区,即主引导记录(MBR)。装载GRUB和操作系统的过程,包括以下几个操作步骤:
(1)装载记录
基本引导装载程序所做的唯一的事情就是装载第二引导装载程序。
(2)装载Grub
这第二引导装载程序实际上是引出更高级的功能,即装载grub,它同时引导机器里的多个系统,如win7和ubuntu12.04, 以方便允许用户选择装载一个特定的操作系统。

 

当Grub环境开始载入第二步引导装载程序时,它寻找自己的配置文件(menu.lst)。当找到配置文件后,它使用这个配置文件建立一个要载入的操作系统的菜单列表,即供用户选择的菜单, 然后显示器上显示引导菜单。 如果配置文件没有被找到,或者如果配置文件不能读取,那么GRUB将载入命令行接口,即出现grub>      我的机器出错现实是grub rescue >  顾名思义是急救方式
(3)装载系统
当用户选择某个系统后,如选择ubuntu12.04, 即选择了linux内核。GRUB把机器的控制权移交给操作系统。这样就进了选择的系统的启动界面。windows的启动时现实的经典图标还记得吗?

 

需要提醒的是,windows操作系统都是使用一种称为链式装载的引导方法来启动的,主引导记录仅仅是简单地指向操作系统所在分区的第一个扇区。而linux使用的是引导管理程序grub,灵活性更强!

 

[设备名称]
IDE硬盘用hd开始,SCSI硬盘用sd开头。软盘用fd开头。
windows下分区命名和linux不大一样。是从0算起。
(hd0,0)。表示C盘。(hd0,4)。表示D盘。
这里表示第一个主分区是c盘,且它的第一个逻辑分区是d盘,  如果D盘也是主分区,应该写成hd0,1)

 

windows系统的第一个IDE硬盘驱动器表示成(hd0),其上的第一个分区表示为(hd0,0),也就是说对于硬盘,采用(hdx,y)的形式来表示,x、y都是从0开始计数的,x表示硬盘号,y表示分区号。
由于主分区只能有四个,所以第一硬盘的四个主分区分别用(hd0,0)~(hd0,3)来表示;逻辑分区则从(hd0,4)开始算,即第一逻辑分区用(hd0,4),第二逻辑分区用(hd0,5)来表示,依次类推。
在Linux系统中,如ubuntu,(hdx,y)中的y是从1开始计数的。第一逻辑分区用(hd0,5),第二逻辑分区用(hd0,6)来表示

 
 

二 解决问题
由上面的内容可知,这是grub的命令行接口
1 检查当前设置:grub rescue> set 显示
我的机器显示的结果:
prefix=(hd0,msdos3)/boot/grub   //表示grub的位置
root=hd0,msdos3    //根root位置
grub指示的位置是(hd0,msdos3)/boot/grub,跟用户是hd0,msdos3

 

2 找出grub目录的真实位置
grub rescue>ls
ls命令会列出所有磁盘分区信息,如我的系统列出的信息如下:
(hd0) (hd0,msdos9) (hd0,msdos8) (hd0,msdos7) (hd0,msdos6) (hd0,msdos5) (hd0,msdos1)
很明显我的机器里没有(hd0,msdos3)分区,所以系统找不到引导记录,启动不了机器。

 

循环使用下面的命令,直至显示该分区所包含文件内容,如果磁盘下面没有grub会提示unknown filesystem或者其他一些不正常信息
grub rescue>ls (hd0,msdos9)/boot/grub
假设我们试到(hd0,msdos9)时,成功显示了文件内容.
2 设定root
grub rescue>set root=(hd0,msdos9) //括号里分区为上一步尝试成功的分区,即linux grub 所在分区
grub rescue>set prefix=(hd0,msdos9)/boot/grub
3 启动模式设定,这里选择正常启动。还记得我们启动windows时的“正常启动”,“进入安全模式启动”选项吗?
正常启动:
grub rescue>insmod /boot/grub/normal.mod

网上有的教程是insmod normal.mod,这个是一种相对路径,我没有尝试去验证,感兴趣的可以试试,我给出的是绝对路径。

在我的机器ubuntu12.04 上测试了一下,使用insmod normal.mod会出现错误。

这是grub rescue会高亮,进去第四步。
4 正常启动 
    grub>normal
5 修复grub(之后我没有试成功,感兴趣的自己常识下)
进入Linux系统后,在命令行里输入 sudo update-grub

6 使用sudo fdisk -l 查看启动盘位置,使用下面指令安装grub sudo grub-install /dev/sda9 //sda是你的启动磁盘

5 修复grub(在我的机器上成功修复,ubuntu12.04)

(1)更新grub   
     sudo update-grub
(2)安装grub
     sudo  grub-install /dev/sda     //sda是主分区,sda5,sda6,sda7......是逻辑分区
 只要这个正确了,下次重启电脑就不会再进入刚才那种错误
6 至此,系统能够引导ubuntu,但是不能够引导原来的win7,解决办法
  (1)进入 /boot/grub/ 下面查看grub.cfg  和menu.lst
               cd /boot/grub
     (2) 发现grub.cfg 里面有win7的记录,但是没有menu.lst里面没有,所以没有系统启动时没有看到win7的选项,这里可以看出,menu.lst是一个呈现给用户的引导菜单,只要我们将win7加入到这个菜单中就可以了
    (3)往menu.lst里面添加引导记录
       参照网上教程

转引请注明:http://blog.csdn.net/u012606927/article/details/17929369

error:no such partition grub rescue的更多相关文章

  1. 【转】win7与ubuntu双系统,删除ubuntu后,启动错误error:no such partition grub rescue的修复--不错

    原文网址:http://blog.sina.com.cn/s/blog_541900d50101eu9r.html win7于ubuntu双系统,进入windows后直接格式化硬盘分区将ubuntu删 ...

  2. 重启电脑提示Error:no such partition grub rescue

    我的系统是Win7,在使用Ubuntu12.04自带的Wubi.exe安装双系统时,系统提示重新启动计算机,重启后电脑就停留在了黑屏界面并提示: error:no such partition gru ...

  3. no such partition grub rescue>

    事出有因: 电脑系统是win7+ubuntu,然后在win7下把ubuntu的分区给删除了,重启,出现 no such partition grub rescue> 错误. 原因是双系统之前是由 ...

  4. How to Fix Grub error: no such partition Grub Rescue

    错误信息: error: no such partition Entering rescue mode... grub rescue> _ 错误原因: grub找不到文件normal.mod 解 ...

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

    乱搞分区磁盘什么的导致开机和这位仁兄一样:http://zhidao.baidu.com/question/495602654256708364.html?ssid=0&from=100187 ...

  6. 装 ubuntu + win10 出现 grub rescue 并处理之

    开机出现 grub rescue 原因:装 ubuntu + win10 双系统时有可能搞坏启动文件. grub rescue 隶属于 ubuntu管理. grub rescue 里可用命令很少,主要 ...

  7. 安装Win7和Ubuntu12.04双系统后,意外删除Ubuntu12.04引导文件,出现error:unknown filesystem;grub rescue>错误的解决方案

    很久之前在Win7基础上安装了Ubuntu12.04系统,采用硬盘安装的方法.分了1个10G的硬盘分区F盘用于存放Ubuntu12.04的引导文件,其实完全可以制作一个Ubuntu12.04的U盘启动 ...

  8. error: no such device : 76de62ec-ac60-4c4d-bb Entering rescue mode .. grub resuce>(系统硬盘驱动器MBR已损坏)问题解决办法(图文详解)

    问题详情   近期,由于博主我,担任实验室整个大数据集群的leader,突然的断电给整个集群造成,如下的情况问题.(欲哭无泪,我的各种服务啊) 解决办法 第一种方法:尝试,直接重启机器(我这里是台式机 ...

  9. Ubuntu——grub rescue 主引导修复

    长期使用windows 和 ubuntu 人双系统,很可能遇到沉重的一个系统,或以其他方式加盟分区,导致系统重新启动时 : GRUB loading error:unknow filesystem g ...

随机推荐

  1. acm算法模板(4)

    杂乱小模板 状态压缩dp小技巧 x&-x是取x的最后一个1的位置. x-=x&-x是去掉x的最后一个1. 读入外挂 int nxt_int(){// neg or pos    cha ...

  2. [原创]java WEB学习笔记65:Struts2 学习之路--Struts的CRUD操作( 查看 / 删除/ 添加) ModelDriven拦截器 paramter 拦截器

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  3. oracle 分页(rownum的理解) 以及 树节点的查询

    1:什么是rownum, rownum的生成, rownum相关的符号操作 Rownum是oracle生成结果集时得到的一个伪列, 按照读出行的顺序, 第一条rownum=1, 第二条=2. 对于 O ...

  4. BZOJ 4052: [Cerc2013]Magical GCD

    以一个数字开头的子序列的gcd种类不会超过logn种,因此去找相同gcd最长的位置,更新一下答案,复杂度O(nlogn^2) #include<cstdio> #include<al ...

  5. Linux 配置双机SSH信任

    一.实现原理 使用一种被称为"公私钥"认证的方式来进行ssh登录."公私钥"认证方式简单的解释是: 首先在客户端上创建一对公私钥(公钥文件:~/.ssh/id_ ...

  6. paper 74:MATLAB图像处理_HSV与RGB颜色空间互转

    HSV空间:分别是H(色调)——S(饱和度)——V(亮度) 与HSI颜色空间类似:分别是H(色调)——S(饱和度)——I(强度) 注意: 强度和亮度差不多是一个概念. 饱和度代表的是渗入白光的数量级, ...

  7. paper 66: MATLAB函数—disp的使用

    例子来源于网络:关键是看disp函数怎么把字符和数字在一起进行显示. 两点生成直线程序 %%以下是一个通过给定两点显示直线方程的程序, %%该程序需要给出两个点的坐标,结果返回为y=kx+b的格式,且 ...

  8. form文件上传,防止页面刷新

    <!DOCTYPE html><html><head><meta charset="UTF-8"><title>文件上传 ...

  9. Microsoft.Jet.OLEDB.4.0和Microsoft.ACE.OLEDB.12.0的区别

    Microsoft.Jet.OLEDB.4.0和Microsoft.ACE.OLEDB.12.0的区别 时间 2012-12-19 20:30:12  CSDN博客原文  http://blog.cs ...

  10. Hibernate开始上手总结

    1,导入hibernate 的jar包,c3p0jar包 2,创建和表关联的实体类,创建关联实体类的配置文件 package com.entity; public class News { priva ...