进入命令行模式,
#chroot /mnt/sysimage ;切换根目录
#grub2-install /dev/sda ;安装grub2到第一硬盘
#grub2-mkconfig -o /boot/grub2/grub.cfg ;更新配置文件
#exit ;退出chroot
#reboot

在做双系统时,如果先安装centos,再安装win,启动时不会有任何问题,但是如果顺序反过来或者双系统做好后又重装了win,MBR都会被重写,这样原来的GRUB或LILO就会不见了,或者由于某些原因使得原来的GRUB不见了,这个时候只要重装GRUB就行了,不需要重新linux系统。

  GRUB的重装方法有很多,这里记录一个在我电脑上安装成功的方法,我的系统是fedora14:

  用安装光盘(或者刻好系统的u盘)启动, 进入安装界面后,选择rescue模式(求援模式),一直点ok,直到出现#命令提示符时,按顺序输入下面命令,

  1.chroot /mnt/sysimage

2.grub-install /dev/sda---到底输入sda还是hda跟硬盘类型有关,如果分区全部为sda1,sda2……,那硬盘类型就是sda,否则就是hda

出现“install finished ” "no error"等提示,就说明安装成功,再重启电脑,能进入grub的系统选择界面就好了。

CentOS在开机的时候,突然出现了GRUB引导错误,导致系统进入不了,遇到这种情况很多人就束手无策了,其实这类的问题不难解决,下面小编就给大家介绍下CentOS开机出现GRUB引导错误的解决方法,希望对你有所帮助。

  解决办法:使用CentOS安装光盘进行开机GRUB引导修复

  具体操作:

  使用CentOS系统光盘引导计算机(系统盘要与原来安装的系统版本相同)

  如下图所示

  按F5进入系统修复模式,出现下面的界面

  输入:linux rescue 回车

  默认OK

  选择Continue出现下面的界面

  输入:chroot /mnt/sysimage ,回车 #将当前目录切换到原来系统的根目录

  继续输入:grub 回车,出现下面的界面

  输入:root (hd0,0) 回车 #注意root与(hd0,0) 之间必须要有空格

  继续输入:setup (hd0) 回车 #注意root与(hd0) 之间必须要有空格

  再次输入:quit 回车 #退出grub模式

  最后输入:reboot #重启系统

  拿出光盘,grub修复完毕,可以正常进入系统

  备注:如果通过上面的操作还是无法正常进入系统

  可以在

  输入:chroot /mnt/sysimage 之后继续输入

  vi /boot/grub/grub.conf #编辑,添加以下内容(CentOS 5.9为例)

  # grub.conf generated by anaconda

  #

  # Note that you do not have to rerun grub after making changes to this file

  # NOTICE: You have a /boot partition. This means that

  # all kernel and initrd paths are relative to /boot/, eg.

  # root (hd0,0)

  # kernel /vmlinuz-version ro root=/dev/sda3

  # initrd /initrd-version.img

  #boot=/dev/sda1

  default=0

  timeout=5

  splashimage=(hd0,0)/grub/splash.xpm.gz

  hiddenmenu

  title CentOS (2.6.18-348.el5)

  root (hd0,0)

  kernel /vmlinuz-2.6.18-348.el5 ro root=LABEL=/

  initrd /initrd-2.6.18-348.el5.img

  :wq! #保存退出

  输入:quit 回车 #退出grub模式

  输入:reboot #重启系统

  一般都可修复成功,正常进入系统。

  如果系统是通过U盘安装的,拔了U盘之后就进不了系统,插上U盘又可以正常启动

  可以采用如下方法修复

  插上U盘,正常进入系统

  输入:grub-install /dev/sda #安装grub到sda

  vi /boot/grub/device.map #编辑修改为       7.0为 /boot/grub2/device.map

  (hd0) /dev/sda

  之前可能为:

  (hd1) /dev/sda

  (hd0) /dev/sdb

  vi /boot/grub/grub.conf #编辑修改里面的(hd1,0)为(hd0,0)

  title CentOS (2.6.18-348.el5)

  root (hd0,0

  kernel /vmlinuz-2.6.18-348.el5 ro root=LABEL=/

  initrd /initrd-2.6.18-348.el5.img

  后面的全部删除

  保存后重启,拿掉U盘,即可正常进入系统。

  上面就是CentOS出现GRUB引导错误的解决方法介绍了,遇到这个问题需要使用CentOS光盘进行grub引导修复,按照文章的步骤,问题轻松解决。

修复grub的更多相关文章

  1. linux+win7双系统重装win7修复grub的办法(转)

    本人是debian+win7的双系统, 下面介绍下重装win7的整个过程以及遇到的一些小问题,在查阅相关博客和朋友的帮助下成功修复, 记录下以便以后有不时之需, 也希望能帮助到遇到同样问题的朋友! 首 ...

  2. Centos 6系统修复grub

    author:JevonWei 版权声明:原创作品 错误界面如下时,应该是grub的stage数据有缺失,应该从新安装grub GRUB引导的stage1阶段损坏,系统启动会直接进入光盘引导界面,st ...

  3. [转]使用Ubuntu Live CD修复Grub引导教程

    这个教程的方法我用过了,能够解决了我的问题. 这篇文章主要介绍了使用Ubuntu Live CD修复Grub引导教程,本文以 Ubuntu Live CD 修复 Grub 引导为例,需要的朋友可以参考 ...

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

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

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

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

  6. 怎样修复grub开机引导(grub rescue)

    很多时候,特别是在linux调整分区后,开机重启时会出现         error : unknow filesystem         grub rescue>         的字样,系 ...

  7. linux+win7双系统重装win7修复grub的办法

    本人是debian+win7的双系统, 下面介绍下重装win7的整个过程以及遇到的一些小问题,在查阅相关博客和朋友的帮助下成功修复, 记录下以便以后有不时之需, 也希望能帮助到遇到同样问题的朋友! 首 ...

  8. ubuntu live cd修复grub引导项

    1. 通过Ubuntu Live CD(安装盘,选择try Ubuntu)进入Ubuntu系统 打开终端,依次进行如下操作: 1. sudo fdisk -l 出现如下界面: 2. 然后会看到,有好多 ...

  9. 二十五、grub (Boot Loader) 以及修复grub

    双系统安装(先Windows后Linux,以免windows NTloader会覆盖Linux loader) GRUB Grand Uniform Bootloader CentOS5,6 grub ...

  10. Centos6 修复grub损坏故障

    1.查看系统中的/boot/grub/grub.conf # grub.conf generated by anaconda # # Note that you do not have to reru ...

随机推荐

  1. 指令——cp

    一个完整的指令的标准格式: Linux通用的格式——#指令主体(空格) [选项](空格) [操作对象] 一个指令可以包含多个选项,操作对象也可以是多个. 指令:cp (copy,复制) 作用:复制文件 ...

  2. 基于共享内存、信号、命名管道和Select模型实现聊天窗口

    问题模型 A.B两个进程通过管道通信,A 进程每次接收到的数据通过共享内存传递给A1进程显示,同理,B进程每次接收到的数据通过共享内存传递给B1进程显示: 对于A.B 进程,采用ctrl+c(实际为S ...

  3. 080-PHP的if与elseif用法

    <?php /* 正确的使用方法: */ $a = 10; $b = 20; if ($a > $b): echo $a . "大于" . $b; elseif ($a ...

  4. MVC 中引用Angularjs

    首先在Maname NuGet Packages中 安装相应的包,我用的是作者为 AngualrJS Team的 随后在相应的Scripts中会出现对应文件. 如果只在某一个页面中使用Angualrj ...

  5. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-camera

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...

  6. UVA - 1213 Sum of Different Primes (不同素数之和)(dp)

    题意:选择k个质数,使它们的和等于n,问有多少种方案. 分析:dp[i][j],选择j个质数,使它们的和等于i的方法数. #pragma comment(linker, "/STACK:10 ...

  7. 每天一点点之 taro 框架开发 - 事件处理与样式表

    1.方法调用 state = { name:'张三' } test(){ this.state.name } <button onClick={ this.test.bind(this) } / ...

  8. 自定义 radio 的样式,更改选中样式

      思路: 1. 可以为<label>元素添加生成性内容(伪元素),并基于单选按钮的状态来为其设置样式: 2. 然后把真正的单选按钮隐藏起来: 3. 最后把生成内容美化一下. 解决方法: ...

  9. PL/SQL表结构/数据的导出

    1.表结构导出 方法一:在sql页面点击表名,进入表编辑页面,点击右下角“查看SQL”按钮,即可看到表结构 方法二:工具--导出用户对象 去掉所有者勾选项,即***.表名:用户名字在其他用户导入数据库 ...

  10. 15 —— npm —— package.json 与 package-lock.json 的作用

    一,package.json  是 npm init 时创建的一个文件,会记录当前整个项目中的一些基础信息. 二,package-lock.json 是 node_modules 文件夹或者 pack ...