进入命令行模式,
#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. 使用Ubuntu系统管理包工具(apt)部署Zabbix企业级监控系统

    使用Ubuntu系统管理包工具(apt)部署Zabbix企业级监控系统  作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Ubuntu系统部署笔记:https://www.cnblo ...

  2. 2.11 学习总结 之 ajax

    一.说在前面 昨天 学习了 json 数据结构 今天 学习ajax 并使用 json  二.jquery的ajax操作 1.查询jquery的官方文档发现与ajax相关的jquey方法如下: 1)$. ...

  3. CPU与内存

    一.存储单元内存有被划分为若干个存储单元,每个存储单元可存放1一个字节,即8个二进制位.因此内存的最小寻址单位是以字节进行的,每个存储单元都有一个编号.比如1GB的内存,可以储存1024*1024*1 ...

  4. 微信公众号开发 获取openid时报错40029 invalid code 问题的解决

    {"errcode":40029,"errmsg":"invalid code, hints: [ req_id: aELCyY4ce-WOFLAa ...

  5. c#查看本机网络端口和对应的程序名

    360安全卫士里面有个组件叫流量防火墙,感觉挺好用,但是不想安装360全家桶,于是自己捣鼓着用C#写一个比较简化的版本. 查看电脑上开启的TCP或UDP端口,可以用netstat命令,netstat用 ...

  6. C++面试常见问题——02动态分配内存

    动态分配内存 C++动态内存 C++程序中内存分为两个部分 堆:程序中未使用的内存,在程序运行时可用于动态分配内存. 栈:函数内部申明的所有变量都将占用栈内存. 很多时候不知道一个程序到底需要多少内存 ...

  7. 二十五、SAP中输出一条横线

    一.我们代码如下,这个是不输出横线的时候 效果如下 二.输出横线的代码如下 效果如下,多出一条横线

  8. Lombok认知

    Lombok的简介 Lombok是一款Java开发插件,公司项目到处使用,整体效果很棒,代码更干净.Java开发人员可以节省出重复构建,诸如hashCode和equals这样的方法以及各种业务对象模型 ...

  9. HDU 2586 LCA-Tarjan

    还是LCA-tarjan算法,跟POJ 1330做法基本类似,只是这个题目要求输出两个点的最短距离,其实利用LCA的性质,就是 两个点分别到最近公共祖先的距离之和 一开始本来想用并查集把路径长度给找出 ...

  10. 最简单的前端获取后台的json值(后台怎么返回一个json对象到前台)

    (说一下这个外部包jackson一般不用了,现在大家都用马云儿子的FastJson 下面服务器代码我就不改了大家随意用什么外部包)2019.1.14日改 我使用了外部包jackson(杰克逊哈哈哈啊) ...