【问题描述】
虚拟机系统重启后,started plymouth swith root service
一直卡在了 starting switch root 这一步,从通网段的服务器上ping不通,该虚拟机发业务中断
【问题分析】
要么是硬件问题,要么是系统文件有问题
首先了解,在系统出问题之前,在服务器都做过哪些操作导致,云主机启动过程中一直卡在started plymouth swith root service starting switch root....
【解决方法】
1、软重启和硬重启都试过了,效果一样,都是卡在starting switch root....
控制节点软重启虚拟机执行:
nova reboot 虚拟机的UUID
控制节点硬重启虚拟机执行:
nova reboot --hard 虚拟机的UUID
2、针对虚拟机进行先关机,之后再开机
这个排查调试过程,需要在web页面上登录对应VNC,进行操作调试
nova get-vnc-console 虚拟机的UUID novncnn
获取到VNC的web登录地址,直接输入获取到的http地址到浏览器即可登录虚机
观察到:/bin/sh目录文件缺失,导致CentOS启动卡住
systemd:failed to execute /bin/sh ,giving up:No such file or directory
A、按键盘的上下箭头键,选择对应的内核,这里选择0-rescue-xxxxxx,CentOS下的rescue [ˈreskjuː]救援模式
虚拟机系统一直卡在紧急模式下,进不去
B、尝试以下一种方法
【参考链接】
CentOS 7,启动时一直卡在starting switch Root,怎么解决?-问答-阿里云开发者社区-阿里云
yum remove -y selinux-policy
yum install -y selinux-policy
C、尝试方法如下
在linux16这行输入:rd.break然后按组合键ctrl+x 进入维护模式
这次成功进入紧急模式了
输入执行:
mount -o remount,rw /sysroot
解析,重新挂载为已经挂载了的文件系统(以读写权限挂载),挂载点必须是一个已经存在的目录,目录可以不为空。一般用于此目录下的文件为ro权限,需要临时变更为可修改权限。
参数:
-o <选项> 指定挂载文件系统时的选项,有些也可写到在 /etc/fstab 中。常用的有:
defaults 使用所有选项的默认值(auto、nouser、rw、suid)
auto/noauto 允许/不允许以 –a选项进行安装
dev/nodev 对/不对文件系统上的特殊设备进行解释
exec/noexec 允许/不允许执行二进制代码
suid/nosuid 确认/不确认suid和sgid位
user/nouser 允许/不允许一般用户挂载
codepage=XXX 代码页
iocharset=XXX 字符集
ro 以只读方式挂载
rw 以读写方式挂载
remount 重新安装已经安装了的文件系统
loop 挂载“回旋设备”以及“ISO镜像文件”
检查系统日志、启动日志和磁盘挂载是否正确
dmesg -T | grep -iE ‘error|fail’
cat /var/log/message | grep -iE ‘error|fail’
mount -a 看有没有报错
最后系统自己退出紧急模式,进入正常模式,系统恢复正常
3、迁移虚拟机,最后再去尝试A、B、C
详情请见,微信公众号