在CentOS出现问题导致系统无法再次启动的时候,就需要进入centos急救模式进行恢复。下面根据笔者的经验,总结了基于CentOS7 rescue模式常见问题的处理。
1、如何进入rescue急救模式?
在内核启动时候的kernel command line里面加上rescue quie
2.启动时候内核停留在no i8042 drivec can be found该怎么办?
在内核启动时候的kernel command line里面加上xdriver=vesaconsole=tty0 init=/bin/bash 选项,可以避免出现内核停在no i8042 driver can be found之后不再往前走的现象
a.扩展命令路径:
export PATH=/usr/bin:/bin:/usr/sbin:/sbin
b.检查网卡驱动、配置网络:
用lsmod检查是否有网卡驱动加载,如果没有参考正常的系统加载相应的网卡驱动,比如在我们的系统上:
modprobe igb
然后配置网络IP:ifconfig enp130s0f0 192.168.1.44
ifup enp130s0f0
此后就可用scp等命令来同步文件。
4.文件系统根目录没发现该如何加载?
当前centos 7默认都是用LVM管理文件系统分区的,因此需要利用linux卷管理命令来探测当前系统的物理卷和逻辑卷的分区情况:
vgchange -ay /dev/centos
vgscan
lvscan
找到对应的分区之后,就可以用mount命令加载根和home文件分区,比如:
mount /dev/md-2 /home
挂载完成之后,用xfs_repair修复文件系统:
umount /home
umount /
xfs_repair -d /dev/centos/root
xfs_repair -d /dev/md-2
对于根文件系统,重新挂载之后还需要chroot一下:
mount /dev/md-1 /mnt
chroot /mnt
5.如何利用systemd切换centos的多用会模式和rescue模式?
如何修改进入rescue模式:
更新/usr/lib/systemd/system/default.target:
把After选项设置成resuce.target,把config选项设置成multi-user.target.
如何修改进入multi-user模式:
更新/usr/lib/systemd/system/default.target:
把After选项设置成multi-user.target,把config选项设置成resuce.target.