ubuntu live cd修复grub引导项
1. 通过Ubuntu Live CD(安装盘,选择try Ubuntu)进入Ubuntu系统
打开终端,依次进行如下操作:
- 1. sudo fdisk -l
出现如下界面:
2. 然后会看到,有好多不一样的硬盘分区,但是当时我装系统的时候没有分boot分区,而且我当时给的/目录的容量是20G,很显然,/dev/sda7就是我的根目录所在的硬盘(如果没有分boot分区,boot分区启动默认是位于/目录)。然后执行:
- 2. sudo mount /dev/sda7 /mnt
3. 接下来是新建MBR分区,即进行如下操作
- 3. sudo grub-install --root-directory=/mnt /dev/sda
4. 更新grub
- 4. sudo update-grub
##这一步并非必须
----------------------------------------------------2017.5.2更新-------------------------------------------------------------------
Linux老手们告诫用户一定要先装windows再装linux,但是有些时候如果windows死机或者中毒后必须重装windows系统时,就需要对Grub进行修复了。这其中原因是因为windows把多重引导程序Grub覆盖了,而自身程序却没有引导Linux启动的能力。
解决的方法很简单,就是重新修复Grub,需要的东西就是安装盘。
Ubuntu修复:
使用光盘启动Ubuntu,选择Try Ubuntu without any change to your computer。
成功的从光盘启动后就已经做好了修复Grub的准备了。在Ubuntu的命令行中依次输入以下内容。
grub
find /boot/grub/stage1
root (hdx,y)
setup (hd0)
quit
|
命令 |
含义 |
|
grub |
启动光盘上的grub程序,如果用户正在使用Ubuntu,需要使用sudo grub以获得root权限。 |
|
find /boot/grub/stage1 |
查找硬盘上linux系统将/boot存放在哪个硬盘分区中,grub在安装时需要读取这个目录中的相关配置文件。 |
|
root(hdx,y) |
指示linux内核文件所在硬盘分区(也就是/boot所在目录分区),将这里的(hdx,y)替换为上一行中查找的那个分区,注意括号中不能存在空格。 |
|
setup(hd0) |
在第一块硬盘中安装grub引导程序。 |
|
quit |
离开引导程序grub。 |
利用grub命令来启动损坏的Linux系统,可能你的电脑因为某些原因损坏不能自动启动了。当然原因很多,可能的现象也很多。
这里说一下这种情况下的处理方法,即:屏幕上提示grub>,但你的硬盘上数据没有丢失,各分区都是好的。这种情况是你的grub信息损坏了,但比较严重的是系统启动不了。
当然,在正常启动情况下,屏幕上出现grub的启动项选择菜单时按c键也是可以进入grub>状态的。这时候我们需要用grub的命令来手工启动系统。 只需要用到四个命令boot、kernel、initrd、boot。
但grub本身命令很多,比如查看文件内容的cat ,你输入help会得到。
首先,输入“ root (hd ” ,然后按两次 TAB 键; /* 这会列出你电脑上可能的磁盘设备,硬盘为 hd0/hd1 或 sd0/sd1 等 */
然后,选择你的安装 Linux 系统的硬盘,比如 hd0 ,输入 “ root (hd0, ” 再按两次 TAB 键; /* 这会列出你的第一块硬盘上的分区情况,你会知道哪个是 swap 交换分区, 0x82 ,哪个是 Linux 分区 0x83 */
选择你认为可能的 /boot 目录所在的分区, 输入root (hd0, 1)回车;
接着,输入cat /boot/vm, 按两次 TAB 键,如果出现一些 vm 开头的文件,比如 vmlinuz-2.6.15-26-386 说明这里是 /boot 所在的分区。
删除上一次的输入,再输入cat /boot/initrd,按两次 TAB 键,如果出现一些 initrd 开头的文件,比如 initrd.img-2.6.15-26-386 说明这个 /boot 所在的分区有 initrd ,即 ramdisk 镜像;
删除上一次的输入,再输入cat /sbin/init,按两次 TAB 键,如果出现一些 init 开头的文件,比如/sbin/init说明这个分区是/所在的分区;
如果没有出现/sbin/init文件,说明(hd0,1)分区仅仅是/boot分区而不是/分区。重新输入root (hd0,N)命令,这里 N 是某个 Linux 分区,然后再试cat /sbin/init, 直到屏幕上出现/sbin/init,说明你找到了/分区,严格来说,应该是/sbin目录所在的分区;
依次输入命令:
- root (hd0,1) /* 假设 /dev/hda2 是你的 /boot 所在的分区 */
- kernel /boot/vmlinuz-2.6.15-26-386 ro dev=/dev/hda3 /* 假设 /dev/hda3 是你的 / 所在的分区 */
- initrd /boot/initrd.img-2.6.15-26-386
- boot
即可启动系统。
这里的关键问题是如何确定系统的几个分区:/boot / /sbin
ubuntu live cd修复grub引导项的更多相关文章
- [转]使用Ubuntu Live CD修复Grub引导教程
这个教程的方法我用过了,能够解决了我的问题. 这篇文章主要介绍了使用Ubuntu Live CD修复Grub引导教程,本文以 Ubuntu Live CD 修复 Grub 引导为例,需要的朋友可以参考 ...
- win + ubuntu 双系统 grub引导项修复
ubuntu liveCD模式,找到ubuntu的系统盘位置,挂载到系统上面,然后使用grub进行修复 ubuntu liveCD模式下是用boot-repair软件进行修复 grub急救模式 1. ...
- 修复GRUB引导故障!
故障原因:MBR中的GRUB引导程序遭到破坏,grub.conf文件丢失,引导配置有误 故障现象:系统引导停滞,显示“grub>”提示符 解决思路:若无MBR备份,进入急救模式,重新安装grub ...
- LiveCD 修复Grub引导
/usr/sbin/grub-probe: error: failed to get canonical path of /cow 如果你是从这句报错search过来的,恭喜您!看来你也是一个调皮的孩 ...
- [转]ubuntu安装光盘修复grub-rescue引导失败问题
Reference:http://liujianqiao398.blog.163.com/blog/static/181827257201292775649815/ 1.步骤一 以试用方式进入ubun ...
- Ubuntu 14.04修复grub
1.进livecd 2.sudo fdisk -l 找到安装分区 3.sudo mount /dev/sda? /mnt 挂载安装分区 4.sudo mount --bind /dev /mnt/de ...
- 修复Grub引导
1.运行终端,输入命令: sudo fdisk -l 找到linux所在的盘符,例如/dev/sdaX 2.获取root权限 3.mount mount –bind /proc /mnt/proc m ...
- Windows、Ubuntu双系统重装windows系统后grub引导的修复及默认启动项的修改
今天帮童鞋重装系统,他的电脑是Windows.Ubuntu双系统,需要重装的系统是windows,据说是因为很多游戏都只支持64位,要给换成64位的 = =... 于是我就帮他装了个wind ...
- Ubuntu 16.04 grub rescue 模式下修复 grub
前几天整理了下电脑的分区,合并并删除一些分区,结果导致 grub 被破坏了,Ubuntu进不去了,启动后直接进入了 rescure 模式.后来又折腾了下,终于修复好了,现总结一下. 先说一下我的系 ...
随机推荐
- 【bzoj4952】[Wf2017]Need for Speed 二分
题目描述 已知$\sum\limits_{i=1}^n\frac{d_i}{s_i+c}=t$,求$c$ $(d_i>0,s_i+c>0)$ 输入 第一行包含两个整数n(1≤n≤1000) ...
- 【bzoj4898】[Apio2017]商旅 Floyd+分数规划+Spfa
题目描述 有n个点.m条边.和k种商品.第$i$个点可以以$B_{ij}$的价格买入商品$j$,并以$S_{ij}$的价格卖出.任何时候只能持有一个商品.求一个环,使得初始不携带商品时以某种交易方式走 ...
- POJ3585 Accumulation Degree 【树形dp】
题目链接 POJ3585 题解 -二次扫描与换根法- 对于这样一个无根树的树形dp 我们先任选一根进行一次树形dp 然后再扫一遍通过计算得出每个点为根时的答案 #include<iostream ...
- 2016华中农业大学预赛 E 想法题
Problem E: Balance Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 205 Solved: 64[Submit][Status][We ...
- uva1214 Manhattan Wiring 插头DP
There is a rectangular area containing n × m cells. Two cells are marked with “2”, and another two w ...
- android 跨进程通信
转自:http://www.androidsdn.com/article/show/137 由于android系统中应用程序之间不能共享内存.因此,在不同应用程序之间交互数据(跨进程通讯)就稍微麻烦一 ...
- vue elementui 递归 sidebar可伸缩侧边栏
最近在学习vue 做了一个可伸缩的 侧边栏 记录下 在很多管理系统都用到 管理系统一般都长的差不多 首先是收起时候 展开时候 首先是新建一个Layout.vue <template> &l ...
- MFC does not support WINVER less than 0x0501 解决方案(转)
原文转自 http://blog.csdn.net/ygzhong000/article/details/41750841 解决方案:在stdafx.h头文件中添加以下行. #define WINVE ...
- 【转】Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04
原文链接:http://dblab.xmu.edu.cn/blog/install-hadoop/ 当开始着手实践 Hadoop 时,安装 Hadoop 往往会成为新手的一道门槛.尽管安装其实很简单, ...
- 我们为什么需要 lock 文件
前言 从 Yarn 横空出世推出 lock 文件以来,已经两年多时间了,npm 也在 5.0 版本加入了类似的功能,lock 文件越来越被开发者们接收和认可.本篇文章想从前端视角探讨一下我们为什么需要 ...