博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CentOS7启动故障修复实验
阅读量:6313 次
发布时间:2019-06-22

本文共 1432 字,大约阅读时间需要 4 分钟。

故障详情:/etc/fstab和/sbin/init以及/boot目录(系统分区使用逻辑卷)

首先手动删除/etc/fstab和/sbin/init文件以及/boot目录下所有文件。
CentOS7启动故障修复实验
恢复思路:
1、由于/etc/fstab文件丢失会导致无法自动挂载分区,所以需要手动挂载,但是,由于使用了逻辑卷所以在挂载之前还要先加载逻辑卷。
2、挂载逻辑卷之后先手动修复/etc/fstab文件中的内容。并重启
3、/sbin/init在Centos7中为/lib/systemd/systemd文件的软链接,可以根据情况重建软链接或修复systemd文件本身
4、恢复内核文件以及initramfsxxx.img文件
5、重建/boot目录下文件
6、重建/boot/grub2/grub2.cfg
7、重启测试
恢复过程。
以下操作全部都在救援模式
1./etc/fstab文件损坏进入救援模式的故障信息
CentOS7启动故障修复实验
先使用lvscan查看逻辑卷信息然后使用vgchange -ay启用逻辑卷,然后使用mount 挂载根分区如下:
CentOS7启动故障修复实验

2.手动创建fstab文件。请确保目录正确,参照以下内容:

CentOS7启动故障修复实验
其中
第一个字段为需要挂载的分区的设备路径。通常lv设备的路径在/dev/mapper下,可以通过文件名判断是哪个分区,比如通常centos-root为根分区设备文件(是个软链接)
第二个字段为挂载点
第三个字段为文件系统类型,后面的不用变动即可。各字段可以使用空格或者tab分割。
文件创建完成之后重启继续进入救援模式,如果在进入之后看到以下内容则表示fstab文件没有问题
CentOS7启动故障修复实验
3.如果在centos7中只是/sbin/init文件损坏,只需要执行
ln /mnt/sysimage/lib/systemd/systemd /mnt/sysimage/sbin/init
重新建立软链接即可,如果是Centos6或者Centos7中的systemd文件损坏可以通过安装upstart-xxx.rpm或者systemd-xxx.rpm包进行修复,安装之前需要先挂载光盘,注意关盘路径,安装命令如下:

rpm -ivh /mnt/cdrom/Packages/upstart-xxx.rpm --root=/mnt/sysimage/ --force

或者
rpm -ivh /mnt/cdrom/Packages/systemd-xxx.rpm --root=/mnt/sysimage/ --force
4.内核文件和initramfs-xxx.img可以通过安装kernel包重建
rpm -ivh /mnt/cdrom/Packages/kernel-xxx.rpm --root=/mnt/sysimage/ --force

注意以上操作全部都没有使用chroot进行切根操作。

5./boot目录下的文件大多数都可以通过一条命令解决除了grub.cfg,在Centos6中更可以手写该文件,不过7中提供了对应的命令可以直接生成grub.cfg文件内容。

首先使用chroot /mnt/sysimage进行切根
然后使用grub2-install /dev/sda安装grub2
使用grub2-mkconfig > /boot/grub2/grub.cfg生成grub.cfg
CentOS7启动故障修复实验

重启,看看成果吧

转载于:https://blog.51cto.com/13672361/2115730

你可能感兴趣的文章
大厂前端高频面试问题与答案精选
查看>>
我们用5分钟写了一个跨多端项目
查看>>
Visual Studio 15.4发布,新增多平台支持
查看>>
有赞透明多级缓存解决方案(TMC)设计思路
查看>>
如何设计高扩展的在线网页制作平台
查看>>
Git 2.5增加了工作树、改进了三角工作流、性能等诸多方面
查看>>
Swift 5将强制执行内存独占访问
查看>>
中台之上(二):为什么业务架构存在20多年,技术人员还觉得它有点虚?
查看>>
深度揭秘腾讯云低功耗广域物联网LPWAN 技术及应用
查看>>
与Jeff Sutherland谈敏捷领导力
查看>>
More than React(四)HTML也可以静态编译?
查看>>
React Native最佳学习模版- F8 App开源了
查看>>
云服务正在吞噬世界!
查看>>
阅读Android源码的一些姿势
查看>>
Web语义化标准解读
查看>>
一份代码构建移动、桌面、Web全平台应用
查看>>
高性能 Lua 技巧(译)
查看>>
区分指针、变量名、指针所指向的内存
查看>>
异步编程的世界
查看>>
最近话题火爆的四件事你知道不?
查看>>