感谢http://www.linuxidc.com/Linux/2012-06/61983.htm,因为参考了其中的内容。

下面是修改和完善。

问题原因:

  (win7,ubuntu双系统下)

  强制关机;

  ubuntu升级;

  装机后重启-强制关机(我昨天是这一种,多次装机,每次都重启卡在那里,要按ctrl C; 然后,然后就没有然后了,见标题描述,两种情况都有。  );

  硬件组合等原因;

  其它未预料原因。

 描述:

  “error : unknown filesystem”

  找不到normal.mod

解决办法:

  解决办法有多种,以应对各种情况的各种问题。包括:boot repair 工具等。

  这里仅叙述其中的一种,只对部分问题有效。

 
写在前面:
记得是自己第三次碰到 “error:unknown filesystem”这种问题了,前两次也曾尝试着去解决,可最后总是没有成功,于是选择重新安装ubuntu,虽然问题是解决了,可这新的ubuntu意味着自己又要花很多时间去配置ubuntu下的操作环境,而这个过程是非常浪费时间的。于是当第三次碰到时,决心好好花时间去解决下。
 
解决方法如下:

1:首先使用ls命令显示出ubuntu分区的安装信息:

1 grub rescue>ls

一般会罗列出所有磁盘的分区信息,比如(hd0,msdos1)(hd0,msdos2)(hd0,msdos4)(hd0,msdos7)(hd0,msdos10)等等

2:之后输入:

1 grub rescue>set

会列出当前grub的设置,比如prefix=(hd0,msdos7)/boot/grub,root=hd0,msdos7,或者prefix=(hd0,msdos7)/grub,root=hd0,msdos7,正是因为这些设置错误,才导致grub无法找到Ubuntu分区,之后是重新进行grub设置

3:如果你知道ubuntu是安装在哪一个分区的,比如(hd0,msdos7),则分别输入:

1 grub rescue >set root=hd0,msdos1
2 grub rescue> set prefix=(hd0,msdos1)/boot/grub
3 (有些情况下会是set prefix=(hd0,msdos1)/grub,以set之后显示的grub设置为依据)

4:之后输入:

1 insmod normal 回车

我尝试过的有 insmod /boot/grub/normal.mod  (不记得了,大概成功过一次。)
insmod /grub/normal.mod
insmod /boot/grub/i386-pc/normal.mod (成功过一次。)
实际上,可以查看 /boot/grub/下是否有normal.mod文件,有时候没有,但是仔细看,发现grub下面有i386-pc,
其中有很多的模式文件和镜像文件,其中很可能就有我们需要的normal.mod 。

如果仍然出现 error:unknown filesystem 则重新回到步骤2进行grub设置;如果出现一个高亮的grub rescue>,表示分区设置正确了,之后再输入normal,回车,就又会看到我们那个熟悉的紫色界面了:),不过到这里还没有结束,因为如果你再次重启系统的话,依然会碰到error:unknown filesystem这个问题,然后你又要重复上诉步骤才能看到系统的选择界面,因此还有一步需要完成,

5:选择ubuntu,进入之后启动终端,输入如下命令

1 sudo  update-grub
2 sudo grub-install /dev/sda (这里一定要注意是sda, 不是sda8,sda7 等分区名称。否则必然会出问题。)

修复grub分区信息,这样后就不会出现如步骤5中所诉的问题了

之所以会出现该问题,一般都是因为用户在window下进行了分区操作(很多用户都会选择安装window和ubuntu双系统),比如磁盘的划分和合并等,影响了原来的分区信息。

下面是自己的结果图:)

Ubuntu引导出问题grub rescu模式下:“error : unknown filesystem”或者 找不到normal.mod 的解决办法的更多相关文章

  1. Linux环境下启动MySQL数据库出现找不到mysqld.sock的解决办法!

    问题: 在普通用户权限下运行:mysql -u root -p,回车之后如果会出现如下错误:ERROR 2002 (HY000): Can't connect to local MySQL serve ...

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

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

  3. windows环境下Eclipse开发MapReduce程序遇到的四个问题及解决办法

    按此文章<Hadoop集群(第7期)_Eclipse开发环境设置>进行MapReduce开发环境搭建的过程中遇到一些问题,饶了一些弯路,解决办法记录在此: 文档目的: 记录windows环 ...

  4. 在ubuntu16.04+python3.5情况下安装nltk,以及gensim时pip3安装不成功的解决办法

    在ubuntu16.04+python3.5情况下安装nltk,以及gensim时pip3安装不成功的解决办法,我刚开始因为不太会用linux命令,所以一直依赖于python 的pip命令,可是怎么都 ...

  5. Ubuntu 16.04 grub rescue 模式下修复 grub

      前几天整理了下电脑的分区,合并并删除一些分区,结果导致 grub 被破坏了,Ubuntu进不去了,启动后直接进入了 rescure 模式.后来又折腾了下,终于修复好了,现总结一下. 先说一下我的系 ...

  6. win7 +v Ubuntu 16.04 grub rescue 模式下修复 grub

    前几天整理了下电脑的分区,合并并删除一些分区,结果导致 grub 被破坏了,Ubuntu进不去了,启动后直接进入了 rescure 模式.后来又折腾了下,终于修复好了,现总结一下. 先说一下我的系统环 ...

  7. 解决Ubuntu(乌班图)vi/vim模式下粘贴的代码内容会多出的空格的问题

    vi/vim模式下的粘贴 因为linux系统和win系统的差异性,有时候在win环境运行的python代码会放在Linux系统上执行,这个时候就需要把win系统上IDE上的代码copy下来,在Linu ...

  8. Ubuntu下Code::Blocks无法编译 /bin/sh: 1: g++ not found 解决办法

    Linux下Code::Blocks无法编译运行提示 /bin/sh: 1: g++ not found 的解决办法 今天在Ubuntu 12.04 软件中心中选装了Code::Blocks,安装完成 ...

  9. 分享一个android debug模式,出现 waiting for debugger把界面卡住,取巧的解决办法

    使用android studio开发程序时,有时会出现 waiting for debugger 卡住界面,软件无法正常debug运行的情况,很多网友分享了一些解决办法,比如: 1 打开cmd进入命令 ...

随机推荐

  1. Common JS、AMD、CMD和UMD的区别

    一.CommonJS 1.CommonJS API定义很多普通应用程序(主要指非浏览器的应用)使用的API.它的终极目标是提供一个类似Python,Ruby和Java标准库.CommonJs 是服务器 ...

  2. POJ——3061Subsequence(尺取法或二分查找)

    Subsequence Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 11224   Accepted: 4660 Desc ...

  3. for语句执行顺序

    for语句的结构如下所示: for(初始化;条件;调整) { 示例语句; } 第一次顺序:初始化 ->条件->示例语句 第二次顺序:调整->条件->示例语句 第三次顺序:调整- ...

  4. 刷题总结——字符串(ssoj)

    题目: 给定n个小的字符串T和一个大的字符串S,先输出T总共再S中出现了多少次 然后q个询问···每次修改S上的一个字母,然后再次输出上述答案··· n小于1000,q<200000,T的总长度 ...

  5. el-select绑定值为对象时,报错[Vue warn]: <transition-group> children must be keyed: <ElTag>

    解决方法: <el-select v-model="syncParams.toSlaveList" multiple value-key="ip" pla ...

  6. Tomcat和JVM的内存配置

    原文路径:https://www.cnblogs.com/pangxiansheng/p/5378537.html JVM内存分配设置的参数有四个 -Xmx Java Heap最大值,默认值为物理内存 ...

  7. Python实现删除文件夹内规定时间内的文件

    需求:  在测试程序的时候,程序会大批量的上传文件到规定目录,然后文件根据日期DAY新建文件夹存放,比如28号上传的文件放到  .../28/* 内,29号上传的文件放到 .../29/*内,因为需要 ...

  8. POJ 2411Mondriaan's Dream

    题目: Squares and rectangles fascinated the famous Dutch painter Piet Mondriaan. One night, after prod ...

  9. 23深入理解C指针之---数组的基础

    数组是c语言内置的数据结构,数组有一维数组.二维数组和多维数组.使用数组传递数组时,必须传入数组的大小. 一.数组的特征:阐明数组的特点 1.数组要素: 1).数组类型:数组中存储的数据的类型: 2) ...

  10. Perl语言入门--5--散列、hash

    hash 一.关联数组的形式 %h=('a',1,'b',2);         a是key 1是value    b是key  2是value 以%开头,()为空散列 %h=('a'=>1,' ...