centos6系统无法开机故障修复

author author     2022-09-17     220

关键词:

本文针对grub故障及服务故障导致的开机无法启动的情况进行模拟,并给出修复详细步骤。


一、grub各配置文件问题引起的开机故障

      可能出现此故障场景

  • 当前硬盘没有grub,每次启动都是通过有grub的光盘或U盘启动的当前硬盘上的操作系统

  • 有两块硬盘其中有一块没有安装grub

  • 主机WindowsLinux双系统共存,后来由于Windows坏了重装了Windows此时Linuxbootloader就被覆盖

  1、模拟stage1阶段(操作系统所在磁盘分区的前446字节)被破坏导致的开机故障

    模拟操作:

技术分享

    故障现象:开机停留在如果所示界面

技术分享


修复方法1:

①如上图选择Rescue installed system(救援模式),或者在该界面按Esc进入boot命令行接口

键入圈红内容也可以进入紧急救援模式。之后需选择语言及键盘图略。

技术分享

②是否设置网络信息

技术分享


注:若要通过网络服务器上的文件修复grub可启动该项,此处要通过光盘修复选择“No”

紧急救援模式接下来会尝试查找本机硬盘上是否有装过操作系统,如果有的话它会把找到的根挂载至当前启动的小的紧急救援模式的Linux系统的/mnt/sysimage目录下,稍后用户可以到该目录下找所需要的文件,若要这样选择“continue” 。后续确定图略

技术分享

④选择shell,进入系统开始修复阶段

技术分享

技术分享

chroot /mnt/sysimage从救援模式的根切到已损坏操作系统,因为后续要把grub安装到该操作系统。

grub-install /dev/sda重新安装grub,以修复系统。

⑤sync将修改写入磁盘,退出已grub修复的系统进入紧急救援模式下的Linux重启系统。

技术分享

重启过程中拆除光盘避免系统以光盘启动,如下图不打勾“启动时连接”即可

技术分享   

重启系统成功图略。

修复方法2:如方法1前面步骤至切根操作(chroot /mnt/sysimage),之后键入grub进入grub命令行界面交互操作,


grub> root (hd#,#)

grub> setup (hd#)

quit

“#”视情况而定,例如root(hd0,0)操作系统在第一块硬盘,第一个分区。setup (hd0)代表把grub装到哪块硬盘。

注意:第二种方法要求/boot/grub目录下必须有stage1stage2和各类stage1_5。局限性较大,推荐使用第一种方法进行修复。

2、模拟stage1_5阶段(操作系统所在磁盘分区的512字节约3个扇区)被破坏导致的开机故障

     模拟操作:

技术分享   故障现象为卡在全黑屏(不用截图了吧)

 修复方法:开机按Esc进入救模式界面,之后操作同stage1阶段。


3、模拟stage1_5阶段(操作系统所在磁盘分区的512字节约3个扇区)被破坏导致的开机故障

     模拟操作:将/boot/grub/目录下除grub.conf文件其余全部删除。

  故障现象:如图所示

技术分享修复方法:开机按Esc进入救模式界面,之后操作同stage1阶段。

4、将/boot/grub目录删除导致的无法开机。

 故障现象:如图

技术分享开机会卡在grub命令行界面。

修复方法:如下图键入root、kernel、initrd三条主要信息(内容以实际故障计算机为准),重启后进入救援模式重复上述操作(切根、生产grub配置信息),

重写配置文件:/boot/grub/grub.conf

简单的写一下:

title jinbus

root (hd0,0)

kernel /vmlinuz-2.6.32-642.el6.x86_64 ro root=/dev/sda3

initrd /initramfs-2.6.32-642.el6.x86_64.img

重启解决问题。

技术分享

5、删除/boot目录下的所有文件,导致的开机无法启动。

  模拟故障:rm –rf /boot

  

此时删除了启动时需要的:

   内核文件:vmlinuz-2.6.32-642.el6.x86_64

      虚拟文件系统:initramfs-2.6.32-642.el6.x86_64.img

        grub 的启动文件:stage1.5 stage2

             grubstage1.5 :如果之前发生过修复,那么启动时用到的数据存在于MBR之后,stage1.5同样存在于文件夹下,但是不会用到 。

        grub的配置文件:grub.conf

  修复方法:进入光盘救援模式,恢复内核文件:vmlinuz-2.6.32-642.el6.x86_64  及 虚拟文件系统:initramfs-2.6.32-642.el6.x86_64.img

       方案1:安装 kernel进行修复,

chroot /mnt/sysimange

           mount /dev/sr0 /mnt/sr0

           rmp –ivh /mnt/sr0/Packages/kernel.****.rpm

     方案2:分别修复

        ①  chroot /mnt/sysimange

            cp /mnt/isolinux/vmlinuz-2.6.32-642.el6.x86_64 /boot

            cp /mnt/isolinux/initramfs-2.6.32-642.el6.x86_64.img /boot

         ②  创建虚拟文件系统文件


            mkinitrd /boot/initramfs-`uname  -r `.img  `uname  -r `

         ③ 安装 grub 使用命令:

        grub-install /dev/sda

         ④  重写 grub.config

         ⑤  sync 同步 


二、服务问题引起的开机故障


   模拟服务故障环境:在/etc/init.d/下新建故障服务test.sh,

技术分享

新建该脚本要遵循LSB服务脚本定义的规范进行编写基本格式如上图,能接受4个基本参数即可{start|stop|status|restart}。在start函数中写入sleep 10000模拟开机无法启动的环境。

技术分享

如图设置test.sh服务为开机自启动。

故障现象:卡到某一服务无法开机

修复方法1:一般服务在单用户模式下不会设为自启动,开机至grub菜单界面。

技术分享

选中要启动的内核,a键编辑内核参数。如图在参数后面添加1(或者s、S、single)进入单用户模式。

技术分享

技术分享

chkconfig test.sh off 将故障服务off掉即可。

如果单用户模式都设为了开机启动,就需要使用第二种方法进行修复。

修复方法2:grub菜单a键编辑内核参数,后面添加如下图所示内容

技术分享

回车,b键启动

技术分享此时bash作为第一个启动的程序,会跳过initrd设定的服务。

技术分享此时是只读挂载没有修改权限,需重新挂载并进行后续操作。

重启完成修复。

本文出自 “linux运维” 博客,请务必保留此出处http://arm2012.blog.51cto.com/2418467/1962247

centos6/centos7开机mbr/grub出现故障的修复方法

CentOS6:当grub出现故障,但未重启,可以如下恢复方法一:[[email protected]~]#ddif=/dev/sdaof=/root/mbr.bakcount=1bs=512#备份[[email protected]~]#ddif=/dev/zeroof=/dev/sdacount=1bs=200#破坏mbr扇区[[email protected]~ 查看详情

centos6开机启动流程实验篇

CentOS6开机启动流程实验篇centos系统的启动流程grub破坏Linux的核心文件再修复体验系统启动流程CentOS6开机启动的具体详情请参见理论篇!了解了系统启动的基本流程,以下我们通过“破坏式实验”,即破坏系统启动过程中的一些... 查看详情

centos6启动故障及修复

前言前文中我们熟悉了linux的启动流程,如果在启动过程中文件丢失或者损坏了怎么办呢?难道只有重装系统这一条路吗?那我们不是成了普通网管了吗?作为专业的运维工程师,我们需要掌握如何快速修复系统启动。实验1:破... 查看详情

centos6的三种grub修复方法(代码片段)

在CentOS6,使用BIOS+MBR方式来安装的系统。当grub出现错误的时候,我们有三种方法进行修复。方法一、在系统中修复1删除磁盘的前200字节,模拟grub故障。ddif=/dev/zeroof=/dev/sdabs=200count=1这样操作以后,系统目前是正常的,但是不能... 查看详情

我的电脑开机时候显示windows无法正常启动我点击了修复

如果Windows系统无法启动,可能是由于许多原因引起的,包括硬件故障、操作系统损坏、驱动程序问题等。以下是一些可能的解决方案:检查硬件问题:首先,检查电脑的电源、数据线和内存条等硬件是否工作正常。如果有问题... 查看详情

usbmassstoragedevice设备无法启用是怎么回事啊?

...就能启用了!真是邪门了。。。usb不被电脑识别,如果是系统或系统自带的驱动的原因,可以按下面方法修复一下。1、开机按f8进入安全模式后在退出,选重启或关机在开机,就可以进入正常模式(修复注册表)。2、如果故障... 查看详情

centos6的三种grub修复方法(代码片段)

在CentOS6,使用BIOS+MBR方式来安装的系统。当grub出现错误的时候,我们有三种方法进行修复。方法一、在系统中修复1删除磁盘的前200字节,模拟grub故障。ddif=/dev/zeroof=/dev/sdabs=200count=1这样操作以后,系统目前是正常的,但是不能... 查看详情

centos7修复mbr扇区故障

...512B),该扇区又称为主引导扇区(MBR扇区),除了包含系统引导程序的部分数据以外,还包含了整个硬盘的分区记录主引导扇区出现故障时,将无法进入引导菜单,找不到正确的分区位置而无法加载系统,通过该硬盘引导主机... 查看详情

应用程序无法正常启动(0xc0000022)怎么解决?

...程序的开机启动去掉。如果查不出来或提示的不是程序是系统进程,你可以回忆一下,当你出现这种故障前你都下载了什么程序软件、插件、补丁或是驱动,如果想起先将它们全部卸载试试(如果是在打开游戏时出现的提示,可... 查看详情

笔记本开机一直显示这样是怎么回事?

这个错误提示通常表示你的计算机无法找到可引导的操作系统。可能是由于硬盘故障、操作系统文件系统损坏或启动顺序设置不正确等原因导致。以下是一些可能的解决方法:检查硬盘连接:可能是硬盘接触不良或者数据线松动... 查看详情

win7电脑开机无法正常启动怎么办

...脑显示“Windows无法成功启动”的错误消息,通常意味着系统存在某种故障或问题,导致Windows无法正常启动。以下是一些可能的原因和解决方案:损坏的系统文件:在某些情况下,Windows启动时可能会遇到损坏或缺失的系统文件,... 查看详情

求助:centos6无法登陆?

服务器开机后停留在Centos6的Logo画面,无法进入系统;然后按下向下键,看到错误:NosuchfileordirectoryFontconfigerror:Cannotloaddefaultconfigfile(process:689):GLib-WARNING**:getpwuid_r():failedduetounknownuserid(0)Nosuchfileordirectory也无法切换到控制台输入界... 查看详情

centos6,7常见系统故障解决方法(代码片段)

本篇文章笔者整理了一些常见的系统故障,以及误操作而造成的故障以及解决方案。一,centos7.4上vmlinuz-3.10.0-693.el7.x86_64内核文件损坏。1,故障状态如下(一直卡在该页面)2,修复方法如下(挂载光盘进入救援模式)依次选择... 查看详情

ue4安装0xc00007b怎么解决

...程序的开机启动去掉。如果查不出来或提示的不是程序是系统进程,你可以回忆一下,当你出现这种故障前你都下载了什么程序软件、插件、补丁或是驱动,如果想起先将它们全部卸载试试(如果是在打开游戏时出现的提示,可... 查看详情

我的电脑为啥不能安装软件?提示是无法写入文件和无法提取以有效文件

换个下载软件试试,还是不行,查杀一下木马,修复一下系统试试。建议你下载windows清理助手查杀恶意软件和木马(下载网址传到你的hi中了):下载360系统急救箱扫描系统1、请你用系统自带的系统还原,还原到你没有出现这... 查看详情

开机出现文件和目录不可写入文件系统错误怎么解决

...行,就照下面一步步来吧建议先查杀一下木马,修复一下系统试试。建议你下载恶意软件和木马强杀工具windows清理助手查杀恶意软件和木马:下载网址:www.arswp.com下载安装后,首先升级到最新版本,然后退出正常模式并重启按F... 查看详情

centos6系统救援模式

CentOS6系统救援模式Linux学习笔记 王振中 M21 马克飞象在学习了CentOS5、6系统启动流程与启动故障排除之后,为了加深印象进行了如下破坏性尝试。删除/boot目录与/etc/fstab文件后尝试修复系统1.首先是第一步删除/boot目录... 查看详情

centos6升级centos7后无法登录修复记录

...了尝试修复之旅开机按任意键,进入grub。这时的grub还是CentOS6的选择CentOS7内核,按e,选择光标在kernel行,再按e,在内核启动参数rhgbquite后面加空格1,回车保存,按b启动(或者在grub选择CentOS7时,按a修改内核参数,同样在最后... 查看详情