记录一次CentOS 7因断电导致宕机的修复过程(/etc/fstab文件丢失)

记录一次CentOS 7因断电导致宕机的修复过程

一日,突然接到电话说CentOS 7主机宕机了,让协助处理;由于不在现场,第一时间电话联系了现场的工程师了解宕机原因、都进行了哪些修复性操作;然后让录了一个开机启动的视频。下文截图来自于视频截图,展示出来了宕机的报错信息。(说明,本文档图片均来源于他人现场拍照,所以有些模糊。)结合又是由于突然断电导致的宕机;所以,第一时间就是想去检查/etc/fstab文件。
在这里插入图片描述
检查发现fstab文件不存在,但是奇怪的产生了一个fstab.empty
在这里插入图片描述
尝试执行fdisk –l命令查看分区情况,发现命令不识别。

在这里插入图片描述

尝试提权也提示文件不存在。
在这里插入图片描述

尝试将系统启动时的ro修改为 rw init-/sysroot/bin/sh进入到修复模式,失败!!!
在这里插入图片描述
各种尝试,均失败;放弃;让现场工程师找来一个U盘并刻录了一个centos7的ISO镜像文件,准备U盘启动进入到救援模式;选择了“1) Continue”,同样由于分区存在问题,卡在了这里,进不去;

截止目前为止,已判定分区肯定出问题了;一时又想不到解决办法,且远程指导操作也很麻烦;就想着懒省事,让他们放弃修复,重新部署一套;却被告知,只能修复(该主机为多台主机集群中的一台,让应用工程师部署一套程序的话,要价不菲);

无路可退,迎难而上;

重启主机,再次进入到救援模式,这次选择“3)Skip to shell”;成功进入到了一个以ISO镜像为引导的内核系统里。

在这里插入图片描述
此时,执行fdisk –l ,结果如下(发现了sda分区,就看到了希望):

在这里插入图片描述
发现是GPT格式,就执行了parted命令验证了分区情况。同时又看到了lvm
在这里插入图片描述
于是执行了lvscan;看到了期待已久的三个分区里(root、swap、boot)的两个root、swap。而且逻辑分区状态处于“ACTIVE”激活状态;好事。
在这里插入图片描述
紧接着,就创建了一个临时目录/tmpdisk;想把dev/centos/root分区挂载到/tmpdisk目录,去编辑/etc/fstab文件;结果命令行又卡住了;无语……
重启后又尝试把dev/centos/data分区挂载到/tmpdisk目录,成功;进一步验证了猜想,root分区出问题了。
在这里插入图片描述
执行命令fsck /dev/centos/root命令尝试检查root分区,提示执行xfs_repair命令。
在这里插入图片描述
执行xfs_repair /dev/centos/root; 提示:文件系统需要修复;
在这里插入图片描述
于是按照提示又执行了xfs_repair -L /dev/centos/root
在这里插入图片描述
上一个命令执行成功后,再次挂载root分区,成功;
在这里插入图片描述
本以为终于可以到/etc目录下去创建fstab文件了;却又惊奇的发现有一个fstab文件,但是文件为空,没有任何内容(一开始查看的时候不是没有吗?大大的疑问)。
在这里插入图片描述
编辑fstab文件,并增加了如下内容(截止到目前为止,并没有找到boot的具体分区路径;该主机上home分区不存在,后来也注释掉了);
在这里插入图片描述
再次查看fsab文件内容;执行blkid命令,查看当前看到的分区。
惊吓般的发现并没有/dev/sda1分区;
在这里插入图片描述
又陷入了思考;明明fdisk –l命令查到了boot在/dev/sda1上;这里为啥却找不到sda1.
在这里插入图片描述
尝试执行xfs_repair命令去修复sda1;发现也不行(blkid命令根本就看不到sda1分区,谈何修复)。
在这里插入图片描述
没办法;准备手工创建boot分区,并从其它正常运行的系统上拷贝boot目录来;
突然,脑袋冒出来一个疑问,执行parted /dev/sda命令时,有个499MB的分区没有标明用途(Flags);按照理论推算,499M应该就是/dev/sda2,会不会就是boot分区?于是又进行了一次挂载;成功挂载后,执行ls命令惊喜的发现猜想是正确的;boot分区找到了 。
在这里插入图片描述
再次编辑/etc/fstab文件,结果如下(该主机上home分区不存在,注释掉了):
在这里插入图片描述
截止到目前为止,终于找到了主机启动所必须的三个分区;

转折点来了;兄弟,重启机器!!!
在这里插入图片描述

终于看到了久违的登录界面;终于搞好了,历时三个半小时。

  • 9
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值