CentOS7启动故障修复实验

故障详情:/etc/fstab和/sbin/init以及/boot目录(系统分区使用逻辑卷)
首先手动删除/etc/fstab和/sbin/init文件以及/boot目录下所有文件。

恢复思路:
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文件损坏进入救援模式的故障信息

先使用lvscan查看逻辑卷信息然后使用vgchange -ay启用逻辑卷,然后使用mount 挂载根分区如下:

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

其中
第一个字段为需要挂载的分区的设备路径。通常lv设备的路径在/dev/mapper下,可以通过文件名判断是哪个分区,比如通常centos-root为根分区设备文件(是个软链接)
第二个字段为挂载点
第三个字段为文件系统类型,后面的不用变动即可。各字段可以使用空格或者tab分割。
文件创建完成之后重启继续进入救援模式,如果在进入之后看到以下内容则表示fstab文件没有问题

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

重启,看看成果吧

原文地址:http://blog.51cto.com/13672361/2115730

时间: 2024-10-20 08:29:49

CentOS7启动故障修复实验的相关文章

Centos7启动失败修复

Centos7已经出来有一段日子了,由于俺原本用的Centos6.X升级有点麻烦加上稳定等于一切就一直没有用过. 前些日子本本的硬盘挂掉了,为此又重新买了块硬盘做系统配环境,又被win10折腾了一翻也就没有了再装个Linux的心情. 好吧,现在俺又失业了时间一大把,那么就开始折腾吧! 首先,在win7下对原有的磁盘进行压缩腾出了50G的磁盘空间. 然后用早已准备好的Centos7光盘进行安装(别问我为什么不用虚拟机,我不会告诉你实体机和虚拟机还是有些差别的虽然这不是什么问题,还有就是我的三星RV

CentOS7启动故障 进入grub>提示符

本文档适用于CentOS 7.X,其他系统未测试. 出现这个问题的原因是grub配置文件错误.损坏或丢失,执行以下步骤修复 1. 罗列所有的磁盘区块: grub>ls 我的是(hd0),(hd0,msdos1),(hd0,msdos2) 2. 确定boot分区: ls (hd0,X)/boot/grub 如果存在,则列出该文件夹里的所有文件,不存在则会报错,注意:如果boot为独立分区则使用 ls(hd0,X)/grub2 3. 将boot分区设置为临时root分区: grub>set roo

centos 6.8 启动损坏修复实验

前两天遇到了一个问题,centos必须借助CD的启动才能进入系统,当时想着做个测试,这会儿正好有时间,在VMWare里面试试. 思想是这样的,删除boot里面的文件,然后重启看效果. 具体过程如下: 先将boot下面的资料被分到远程,方便回头下载 删掉boot下面的东西,然后重启就是下图,呵呵.这个grub貌似是在磁盘的MBR里面,删除boot下面的文件不会影响到. 我们用系统光盘进入rescure模式进行还原数据试试 发现还是黑屏,使用如下命令修复grub,重启后可以正常进入系统. chroo

linux启动故障修复

CentOS7.3系统启动故障修复

CentOS7.3系统启动故障修复 破解CentOS7的root口令方法一 启动时任意键暂停启动菜单,选择启动内核菜单项 按 e 键进入编辑模式 将光标移动 linux16 开始的行,添加内核参数rd.break 按 ctrl-x 启动 mount –o remount,rw /sysroot chroot /sysroot passwd root touch /.autorelabel exit reboot 方法二 启动时任意键暂停启动 按 e 键进入编辑模式 将光标移动 linux16 开

CentOS7.6删除/boot目录下所有内容的故障修复详细步骤

CentOS7.6删除/boot目录下所有内容的故障修复 A. 装置重启,出现Starting进度条时,按一次Esc键 B. 选择CD-ROM从光盘启动 C. 选择Troubleshooting D. 选择Rescue a CentOS system E. 输入1,选择Continue F. 按Enter键 G. 输入chroot /mnt/sysimage切根 H. 挂载光盘mount /dev/sr0 /mnt I. rpm安装内核 rpm -ivh /mnt/Packages/kernel

centos7修复实验

1. 修改启动时菜单默认的内核 1. vim /etc/default/grub 2.grub2-mkconfig -o/boot/grub2/grub.cfg    ---生成新的grub.cfg文件 2.破解root口令 (单用户模式) 1. 启动时任意按键暂停启动 2. 按e键进入编辑模式 3. 将光标移动到linux16开始的行, 内核参数rd.break 4. 按ctrl+x启动 5. mount -o remount,rw /sysroot 6. chroot /sysroot 7.

vmware+centos7+启动在登录界面鼠标键盘都不可用

vmware workstation12 + centos7启动后登录界面和单任务运行鼠标键盘都不可用 所有操作都是在root用户下进行的 因为安装别的软件,安装了kernel-headers和kernel-devel,在网上 直接下载安装的,所以比原先新,用uname -r命令查看kernel版本, 然后发现不一致,就卸载kernel-headers和kernel-devel, 在光盘中安装 和kernel版本对应的,kernel-headers卸载不掉,有其余更高版本的依 赖项,只能升级ke

CentOS 7 启动故障、密码忘了怎么办?服务启动怎么优化?手把手教你解决!

前 言: 在解决问题前我们先了解一下开机引导的过程: 启动故障主要出现在前三个步骤,开机自检主要是检查硬件是否损坏,主要是检查CPU和内存, 所以如果是这一步骤出问题了我们就需要更换硬件了.下面我开始从MBR开始讲. 什么是MBR? 通常,我们将包含MBR引导代码的扇区称为主引导扇区.因这一扇区中,引导代码占有绝大部分的空间,故而将习惯将该扇区称为MBR扇区(简称MBR).由于这一扇区承担有不同于磁盘上其他普通存储空间的特殊管理职能,作为管理整个磁盘空间的一个特殊空间,它不属于磁盘上的任何分区,