grub rescue的修复方法

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

在win7下删除了ubuntu的swap交换空间的分区(大约6G左右,根据自己的实际分区情况决定)。重新启动电脑进入界面,直接显示:

error:unknow filesystem

grub rescue>

所以自己就找到ubuntu的光盘准备从系统的安装过程中将刚刚删去的分区重新设置为swap分区,无奈,笔记本的光盘也不好使,所有就只能拿着手机百度了。

解决办法

1 输入ls

在grub rescue>中输入ls,会显示出磁盘中的磁盘分区情况,例如我这里显示的:

(hd0),(hd0,msdos1),(hd0,msdos2),(hd0,msdos4),(hd0,msdos5),(hd0,msdos6),(hd0,msdos7)

2 查找主分区所在位置

在grub rescue>中输入ls (hd0,msdosX)/并回车(这里需要将上面所列出的分区依次进行测试,X表示1,2,4,5,6,7),直到在屏幕中显示出在主分区“/”中存在的所有文件,例如:

bin    dev   initrd.img      lib32       media  proc  sbin     sys  var

boot   etc   initrd.img.old  lib64       mnt    root  selinux  tmp  vmlinuz

cdrom  home  lib             lost+found  opt    run   srv      usr  vmlinuz.old

就表示主分区“/”就是当前硬盘分区上。

注意:

1.这里也可以使用“ls (hd0,msdosX)/boot/grub"进行查找分区,如果/boot没有进行单独分区可以使用此方法。

如果/boot是进行单独分区的,就需要使用”ls (hd0,msdosX)/grub"查找/boot分区所在磁盘

2. 在(hd0,msdosX)和文件路径“/”或者“/boot/grub”之间没有空格。本人之前由于使用手机以为之间有一个空格符,试了许多次都没有找到,不过一个比较明显的区别。测试其它的磁盘分区的时候都显示的“unknown filesystem",只有在一个磁盘分区下显示的为“bad filename”,后来找了找度娘,才发现磁盘分区(hd0,msdosX)和文件路径之间是没有空格的,需要连在一起。

3 进入系统

我这里找到的“/”在(hd0,msdos7)上,所以进行如下设置:

grub rescue>set root=(hd0,msdos7)
grub rescue>set prefix=(hd0,msdos7)/boot/grub
grub rescue>insmod /boot/grub/normal.mod

如果/boot是单独分区的话,就进行如下设置:

grub rescue>set root=(hd0,msdosX)
grub rescue>set prefix=(hd0,msdosX)/grub
grub rescue>insmod /grub/normal.mod

如果你输入正确的话,你会发现屏幕中最新的一行的字符由灰色变成了白色,这就证明你可以进入到开机的grub选择界面了。

在白色的grub rescue>中输入normal

grub rescue>normal

我这里就选择进入ubuntu操作系统中,不过在屏幕中显示UUID………………无法找到之类意思的一段信息(当时本人吓出一身冷汗,以为还不能开机),进入操作系统中,使用ubuntu的“磁盘实用工具”将之前的磁盘分区重新设置为是swap交换空间,就以为可以了,不过重启之后发现又进入了“grub rescue>”中,所以请不要相当然。

4 更改fstab文件

请确保已经进行swap分区,我这里通过“磁盘实用工具”进行分区的swap。使首先查找swap的UUID,这里有两种方法:

  1. 使用“sudo blkid"查看UUID:

/dev/sda7: UUID="132e271d-ddb7-489d-94b2-3d3bd8dd5eb9" TYPE="ext4" 

/dev/sda8: LABEL="M-fM-^VM-0M-eM-^MM-7" UUID="b3a6e112-065f-472b-aeb2-86ca9f951e2c" TYPE="swap" 

这里TYPE为swap的UUID就是新创建的swap分区的UUID。

  2. 使用“ls -l /dev/disk/by-uuid"查看UUID:

lrwxrwxrwx 1 root root 10  4月  1 19:31 132e271d-ddb7-489d-94b2-3d3bd8dd5eb9 -> ../../sda7

lrwxrwxrwx 1 root root 10  4月  1 19:31 b3a6e112-065f-472b-aeb2-86ca9f951e2c -> ../../sda8

更改fstab文件(在修改之前最好将该文件进行一下备份,以免出现错误)

使用root用户 # vim /etc/fstab

可以看到文件中有一行含有swap的内容,这里表示之前未删除swap分区的UUID,这里只需要将通过”sudo blkid"获得的新的swap的UUID进行更改就可以了

UUID=7743e0a8-cb7b-409a-8b61-947d2c1071ae none            swap    sw              0       0(之前的文件内容)

更改为

UUID=b3a6e112-065f-472b-aeb2-86ca9f951e2c none            swap    sw              0       0(更改后的内容)

保存退出。

5 更新grub

完成上述内容后,就需要更新grub了

在终端中输入“sudo grub-install /dev/sda",执行完成后,就可以了。重新启动系统,你就会发现一切又正常了

转载于:https://my.oschina.net/tongzhe/blog/215213

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/461482.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jmeter强大的扩展插件!!

jmeter4.0以上版本,如jmeter5.1.1版本的集成插件,只需要在官网下下载“plugins-manager.jar”包,放在jmeter安装路径的lib/ext目录下即可使用。(但该jar包包含的插件,还不能满足所需的功能,如服务器系统资源…

数据结构探险——图篇

以下内容源于慕课网的学习整理,如有侵权,请告知删除。 1、图的相关概念 2、图的存储结构 第一种是用数组表达,第二三种用链表来表示有向图,最后一种链表来表示无向图。(1)邻接矩阵(有向无向都可…

jmeter+WebDriver:启动浏览器进行web自动化

无论是web自动化还是手机app自动化,WebDriver是Selenium的核心模块,jmeter WebDriver 仅支持Firefox、Chrome 和 HTML Unit驱动,暂不支持IE 驱动。 一、下载JMeterPlugins-WebDriver插件并配置分享我的网盘下载地址:https://pan.b…

LeetCode2——Add Two Numbers(两个链表中的数字相加,形成新链表)

鄙人不才,故收录LeetCode中的解法和代码。 题目: 参考解法: /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(NULL) {}* };*/ class Solution { publi…

Linux基础(九)--定时任务

本文主要介绍了Linux中定时任务的相关知识。在日常中,有一些任务需要定时执行,例如:每天定时更新杀毒软件的数据库,每天定时执行数据清洗等脚本。这里就需要做定时任务。(1)概述在Linux中定时任务主要分为两…

【随感】tomorrow ,new semester ,finally i have time to read some books~

—————————youngLaker转载于:https://www.cnblogs.com/younglaker/archive/2012/12/30/2840129.html

LeetCode425——Add Strings(两个字符串中的数字相加(十进制或二进制),输出字符串形式的结果)

题目&#xff1a; 参考解法&#xff1a; class Solution { public:string addStrings(string num1, string num2) {if (num1.size() < num2.size()) return addStrings(num2, num1);//这里并不是递归&#xff0c;只是为了使得第一个参数的长度是最大的int carry 0, i num1…

yum只下载软件不安装的两种方法

2019独角兽企业重金招聘Python工程师标准>>> 今天来说下在CentOS下下载软件&#xff0c;不安装的方法&#xff1a; 方法一&#xff1a;通过yum自带一个工具&#xff1a;yumdownloader [rootweb1 ~]# rpm -qa |grep yum-utils [rootweb1 ~]# yum -y install yum-ut…

[转载] New Concept English 1——Lesson 7 Are you a teacher?

转载于:https://www.cnblogs.com/6DAN_HUST/archive/2012/12/31/2840653.html

LeetCode445——Add Two Numbers II(两个链表数据相加(从链表尾部开始),返回新链表)

题目&#xff1a; 参考解法&#xff1a; /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(NULL) {}* };*/ class Solution { public:ListNode* addTwoNumbers(ListNode* l1, ListNode* l…

linux下制作codeblocks绿色版,并集成devhelp

Codeblocks更新到12.11了,可是软件中心还是10.01的.在codeblocks的官网找了一下发现了ubnutu的ppa, sudo apt-add-repository ppa:pasgui/ppa,可是不知道是否和以前的配置冲突,还是其它原因,编辑器居然没有多标签.于是想做一个绿色试试.到其wiki上以portable搜索 果然找到了方法…

appium+python自动化项目实战(二):项目工程结构

废话不多说&#xff0c;直接上图&#xff1a; nose.cfg配置文件里&#xff0c;可以指定执行的测试用例、生成测试报告等。以后将详细介绍。 转载于:https://www.cnblogs.com/luihengk/p/11414208.html

大数据批量插入小练习_SqlServer

这几天把sqlserver批量插入也整理了一下&#xff0c;性能方面有很大的提高&#xff0c;下面直接上代码using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.IO;using System.Threading;using Syste…

LeetCode371——Sum of Two Integers(不用+)

class Solution { public:int getSum(int a, int b) {int sum a;while (b ! 0){sum a ^ b;//calculate sum of a and b without thinking the carry b (a & b) << 1;//calculate the carrya sum;//add sum(without carry) and carry}return sum;} };

使用NSOperation为你的app加速

app store中的很多应用程序非常的笨重&#xff0c;他们有好的界面&#xff0c;但操作性很差&#xff0c;比如说当程序从网上或本地载入数据的时候&#xff0c;界面被冻结了&#xff0c;用户只能等程序完全载入数据之后才能进行操作。当打开一个应用程序时&#xff0c;iphone会产…

LeetCode43——Multiply Strings(两个字符串表示的整数相乘)???

题目&#xff1a; 参考解法&#xff1a; 法一&#xff1a; This is the standard manual multiplication algorithm. We use two nested for loops, working backward from the end of each input number. We pre-allocate our result and accumulate our partial result in …

Windows-server-2008-R2安装Oracle-11g-R2-dataguard

一、安装环境 1、服务器环境&#xff1a;Windows server 2008 R2 x64 Standard 两台 CPU&#xff1a;8核 内存&#xff1a;8G 硬盘空间&#xff1a;1060G 2、软件&#xff1a;oracle 11g R2 二、安装前配置 1、IP地址配置要求 主库IP&#xff1a;192.168.2.50 备库IP&#xff1…

LeetCode66——Plus One(一个整数用数组存储,然后在末尾加1)

题目&#xff1a; 参考解法&#xff1a; class Solution { public:vector<int> plusOne(vector<int>& digits) {bool carry true;for(int idigits.size()-1; i > 0 && carry; i--) {carry (digits[i]%10) 0;}if(carry) {digits.insert(digits.be…

项目中CI缓存适配器的使用

2019独角兽企业重金招聘Python工程师标准>>> 项目中CI缓存适配器的使用 项目中有若干控制器&#xff0c;这些控制器有一些公共数据&#xff0c;因此&#xff0c;在基控制器类中获取这些数据&#xff0c;为了提高系统性能&#xff0c;使用了缓存系统&#xff0c;采…

康奈尔笔记法

一页有三栏&#xff1a;主栏、副栏、思考栏。主栏主要是在右上角&#xff0c;主要记录学到的内容。副栏在左边&#xff0c;主要是简单概括重点。思考栏在底部&#xff0c;主要是记录收获、感悟。 主栏&#xff1a;在听讲或阅读时把重要的内容或知识的要点记录在右侧的区域&…