CentOS   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Centos之boot-loader恢复攻略!大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

Boot loader是计算机操作系统开机启动的引导文件,一旦boot loader出了问题,则计算机就无法正常启动,这时候,大家可能都会选择重装系统来解决问题,但是对于Centos这种用于服务器的操作系统来说,可不是说能够随随便便就可以重新装一次系统的,接下来,小编带你来看看Centos中的几种恢复boot loader的方法。(本次实验我们以Centos 6版本为例) 这篇文章主要在于介绍恢复

Boot loader是计算机操作系统开机启动的引导文件,一旦boot loader出了问题,则计算机就无法正常启动,这时候,大家可能都会选择重装系统来解决问题,但是对于Centos这种用于服务器的操作系统来说,可不是说能够随随便便就可以重新装一次系统的,接下来,小编带你来看看Centos中的几种恢复bootloader方法。(本次实验我们以Centos 6版本为例)

这篇文章主要在于介绍恢复boot loader方法,就不在详细介绍@H_303_15@mbr的分区结构,以及boot loader在系统启动中的重要位置了。如有疑问,可以参以下链接

磁盘分区中的MBR:http://code.js-code.com/article/p-nftyvqfn-bnx.html

两种恢复方法

1、从提前备份的@H_303_15@mbr文件中,使用dd命令将boot loader恢复。

2、使用grub-install工具进行修复。


下面就行实验详细介绍:

方法一、使用dd命令将备份的boot loader恢复。

当然,如果你来看着篇文章,可能你想必是没有进行备份,但是,还请允许我介绍一下这方法,以便你在今后的操作中能够及时备份,并且能通过这个方法轻松恢复。

在开始之前,我们先来备份一下@H_303_15@mBR中的BootLoaderboot loader存在于磁盘首部的446字节中,所以我们可以只备份这446个字节,如果你想将整个MBR全部备份下来,那更好,将分区表也备份下来了,不过这里我们只备份前446字节:

Centos之boot-loader恢复攻略!

我们接下来就行boot loader破坏,不过大家生产环境中可不要这么做,这里的破坏只是为了试验用,请大家不要随便模仿。备份的文件千万不要还放在本地计算机上,如果一旦启动不了,我们还怎么通过备份恢复,当然,尽管方法是有,但是还是建议不要讲备份放在本地计算机。我们就走一次逆行,将备份还放到本地计算机,来进行实验。(但是建议,大家还是把备份的文件放到远程计算机上)

破坏boot loader:@H_618_154@dd if=/dev/zero of=/dev/sda bs=1 count=446

Centos之boot-loader恢复攻略!

Boot loader破坏后我们的系统再次启动就不能正确的找到内核的位置,也就起不来了,现象如下所示:

Centos之boot-loader恢复攻略!

任何的操作都是需要进入系统中才可以进行,我们也可以将硬盘拆下来放到另一台计算机上进行修复。这里我们通过进入光盘系统的修复模式来进行。

我们需要将光盘挂载,并且确保光盘已经连接,如果是虚拟机的话,我们来进行查看确保。

Centos之boot-loader恢复攻略!

开机进入本机的BIOS界面,在启动项里找到CD/DVD选项,将开机启动项置为从光盘启动。如果是物理机的话需要找到物理机品牌进入BIOS的按钮,如果是虚拟机的话我们就选择在开机前,选择进入固件,如下图所示:

Centos之boot-loader恢复攻略!

Centos之boot-loader恢复攻略!

保存退出后,开机启动,这时候会进入,光盘引导界面,我们选择进入救援模式,一步一步跟着小编走:

Centos之boot-loader恢复攻略!

Centos之boot-loader恢复攻略!

Centos之boot-loader恢复攻略!

Centos之boot-loader恢复攻略!

Centos之boot-loader恢复攻略!

Centos之boot-loader恢复攻略!

Centos之boot-loader恢复攻略!

Centos之boot-loader恢复攻略!

Centos之boot-loader恢复攻略!

进行到上图所示,我们已经成功的进入了救援模式,进入到了光盘系统的根目录,并且获得了sHell命令提示符。

进入后,我们需要切根,就是运行chroot /mnt/sysimage/这条命令,因为就如救援模式后,我们其实是在光盘系统的根目录,而我们本地的系统根目录是被认挂载到了/mnt/sysimage/目录下,所以我们需要进入本地根目录更方便的操作。

如图运行:chroot /mnt/sysimage/ 然没有任何的提示,但我们已经换了一片天了。

Centos之boot-loader恢复攻略!

这个时候我们可以进行恢复了,小编在刚才的备份中,悄悄将备份的文件放到了/tmp目录下,我们使用dd命令将boot loader恢复到/dev/sda中,一般如果我们不做特别的修改认的@H_303_15@mBR是在/dev/sda磁盘下的。

Centos之boot-loader恢复攻略!


Centos之boot-loader恢复攻略!

Centos之boot-loader恢复攻略!

好了这个时候多执行几次sync这个命令确保写入完成。我们就可以退出本地根进行重启了。(注意:使用exit退出本地根,再进行重启。)

方法二、使用grub-install工具进行神修复

使用第二种方法与第一种方法是有一定得区别,但是还是有一些相似的。如果你在没有重启系统的情况下,发现系统的boot loader破坏了,可以直接在本地安装grub-install工具(安装命令:yum install grub-install,执行grub-install /dev/sda进行恢复。

除了上述的你自己发现的情况下不能正常启动了,我们还是得进入救援模式进行恢复,这种方法就不适用于将磁盘插到别的计算机上进行恢复了。

进入救援模式的方法还跟方法一的操作一样,请小伙伴们去参方法一种进入救援模式的方法,这里小编就不��嗦了。进入救援模式后,我们必须要切根,所以为什么方法一中小编执意让大家切根,方法一不进行切根也能完成,但是,养成进救援模式就切根的好习惯是没有错的。如果不切根这个命令是没有办法执行的。

Centos之boot-loader恢复攻略!

查看损坏的boot loader:

Centos之boot-loader恢复攻略!

执行:grub-install /dev/sda 稍等片刻就好。

Centos之boot-loader恢复攻略!


再次查看被破坏的bootloader已经成功修复。

Centos之boot-loader恢复攻略!

同样exit退出reboot重启,恢复完成!

Centos之boot-loader恢复攻略!

成功启动展示:

Centos之boot-loader恢复攻略!

@H_618_154@知识小扩展grub-install 这个命令不仅仅可以修复被破坏的boot loader,还强大到可以修复/boot/grub/目录下被破坏的启动重要文件,这些重要文件是开机启动过程中引导启动阶段1阶段1.5和阶段2的相关配置文件。有兴趣的同学可以进行实验验证一下,但是!特别声明,该命令不能回复/boot/grub/grub.conf和以.xmp.gz结尾的文件

大佬总结

以上是大佬教程为你收集整理的Centos之boot-loader恢复攻略!全部内容,希望文章能够帮你解决Centos之boot-loader恢复攻略!所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。