物理机:CentOS-Stream-8-x86_64-latest-boot.iso
症状就是 SSH 连接上去后无法进行任何控制,如下图
其他正常的机器,如下图
ont01 是物理机 cc 是其他厂商的虚拟机 最明显的区别就是正常 ssh 登录后会显示最后登录时间和当前登录用户的用户名后面是 # 等待输入命令
Last login: Sat May 20 14:20:36 2023 from 172.18.0.3 [root@cc ~]#
类似上面这样,但这个物理机登录上去之后输出了上次登录时间,然后就没了,没有显示当前的用户名无法进行任何控制
就像图片中那样,也可以输入命令但是没有任何反应,即使输入 reboot 也是毫无反应,换行也显示但就是无法执行
不仅远程 SSH 是这样,使用机器自带的 IPMI 连接也是一样,按说 IPMI 就和在机器面前物理操作一样了,然后输入用户名密码登录后也是这样,无法输入任何命令没发控制
通过 IPMI 查看屏幕显示如下:
物理机 IP 不对外网暴露任何端口,全部通过内网管理的,之前也有出现过,只能重启解决 这次稳定了十几天又出现这种问题,机器上的业务运行正常,但有少部分通过 SSH 下发的命令失效了
有没有老哥知道这是什么毛病,怎么会有这种莫名其妙的问题,SSH 无法控制啥都干不了 只能重启服务器才能恢复,网上也没查到太多信息,希望懂得老哥提点下
1
julyclyde 2023-05-20 14:43:30 +08:00 1
你按一下 ctrl+C 试试
应该是 rc 或者 profile 里运行了一直没完成的程序导致的 或者是系统资源耗尽无法产生新进程导致的 |
2
AaIT OP @julyclyde 感谢大佬指点,通过 ctrl+C 恢复控制了,但是前面变成 -bash-4.4 如图
![正常]( ) 能控制终于可以查下原因了,发现有个虚拟机进程 qemu-system-x86 持续大量占用 CPU 可能是这个原因导致的 ![CPU 异常]( ) 把对应虚拟机强制关机重启后,CPU 占用异常问题解决了,但是终端还是进不去,每次还是需要 ctrl+C 执行命令 你说的 “ rc 或者 profile 里运行了一直没完成的程序 ” 应该如何把这些进程清理掉呢 |
3
aru 2023-05-20 15:53:13 +08:00
先检查下 /root/.bashrc 和 /root/.bash_profile
看下有没有异常 还可以创建一个新用户,用这个普通用户登录进去,看是否正常 |
4
AaIT OP |
5
hefish 2023-05-20 16:13:53 +08:00
某个硬件故障了吧。。导致挂起了。。
多数是磁盘 io 之类的操作。。。 |
6
leaflxh 2023-05-20 16:28:33 +08:00
有可能是登录上去后,服务器反向 dns 查询登录者的 ip ,但访问不了外网,导致长时间卡住
http://hazirguo.github.io/articles/2018/ssh_login_hang_reasons.html |
7
AaIT OP @leaflxh 不是这个原因,刚关闭 DNS 查找也是一样,DNS 查找过程是卡在那的,而且查找 DNS 的过程最多几秒钟不得了了,显示出上传登录时间说明已经登录上去了
ctrl+C 可以进入 -bash-4.4 然后输入 source /etc/profile 可以变成正常的 [root@ont01 ~]# 这种 但重新进入还是不行,感觉这个 SSH 有很多毛病,gotop 也绘制不出来了图形了 |
8
julyclyde 2023-05-20 16:58:20 +08:00
开两个登录,一个正常,一个卡住
然后用正常的那个检查 pstree 看看卡住的那个到底在干什么 |
9
AaIT OP @julyclyde #8 这个办法好
第一个 TOP 是我开的看系统负载的 第二个是当前执行 pstree 的这个终端 第三个不知道是什么,我记得没有开过 SFTP 第四个就是新开的终端,一直开在那的那个终端,除非按 ctrl+C 不然输入不了命令 这个 pidof 是什么鬼,而且现在 SSH 有的命令执行不出来结果,反正很奇怪 这个鬼机器网卡还有 BUG 负载高的时候会大量报错,频繁断网 后来把网卡的分段关掉就好了,ethtool -K eno1 tso off gso off 不知道是不是和这个有关 kernel: e1000e 0000:00:1f.6 eno1: Detected Hardware Unit Hang: ovs|16488|bridge|ERR|interface int_31: setting MAC failed (Operation not supported) ovs-vswitchd[1268]: ovs|16489|bridge|ERR|interface int_34: setting MAC failed (Operation not supported) ovs-vswitchd[1268]: ovs|16490|bridge|ERR|interface int_33: setting MAC failed (Operation not supported) ovs-vswitchd[1268]: ovs|16491|bridge|ERR|interface int_38: setting MAC failed (Operation not supported) ovs-vswitchd[1268]: ovs|16492|bridge|ERR|interface int_29: setting MAC failed (Operation not supported) 我在本地的 centos8 也开了几个测试,结果不太一样 |
10
AaIT OP ` -bash-4.4# pstree
systemd-+-agetty |-api---17*[{api}] |-2*[aria2c] |-auditd---{auditd} |-chronyd |-crond---231*[crond---sh---php---sh---php---sudo---python] |-dbus-daemon |-5*[dnsmasq] |-flowentryd---flowentryd-+-2*[grep] | |-ps | `-wc |-gssproxy---5*[{gssproxy}] |-httpd-+-httpd | |-httpd---80*[{httpd}] | `-3*[httpd---64*[{httpd}]] |-influxd---36*[{influxd}] |-irqbalance---{irqbalance} |-ksmtuned---ksmtuned---ksmtuned---pgrep |-libvirtd---47*[{libvirtd}] |-ovs-vswitchd---17*[{ovs-vswitchd}] |-ovsdb-server |-php-fpm---33*[php-fpm] |-3*[pidof] |-polkitd---11*[{polkitd}] |-9*[ps] |-python2-+-python2---2*[{python2}] | `-{python2} |-python2.7 |-3*[qemu-system-x86---9*[{qemu-system-x86}]] |-13*[qemu-system-x86---4*[{qemu-system-x86}]] |-qemu-system-x86---8*[{qemu-system-x86}] |-2*[qemu-system-x86---7*[{qemu-system-x86}]] |-qemu-system-x86---10*[{qemu-system-x86}] |-qemu-system-x86---5*[{qemu-system-x86}] |-qemu-system-x86---25*[{qemu-system-x86}] |-qemu-system-x86---6*[{qemu-system-x86}] |-rpcbind |-rsyslogd---2*[{rsyslogd}] |-sshd---sshd---bash---top |-sshd---sshd---bash-+-journalctl | `-pstree |-sshd---sshd---sftp-server |-sshd---sshd---sshd---bash---pidof |-systemd---(sd-pam) |-systemd-journal |-systemd-logind |-systemd-machine |-systemd-udevd |-tailscaled---19*[{tailscaled}] |-tuned---4*[{tuned}] |-updaemon---5*[{updaemon}] |-updaemon_comput---5*[{updaemon_comput}] |-virtlogd `-vnstatd -bash-4.4# ` |
11
AaIT OP ps -ef 还有 pstree -a 还有部分系统命令执行后输出结果后就停在那里,无法自动退出状态
感觉就像被粘住了一样,按 ctrl+C 才可以退出之前的状态,看起来和 SSH 刚连接成功后是一样的情况 SSH 是连接上了,但是后台什么东西卡住了导致指令没有结束一直卡在那里,所以什么命令都无法输入 而按 ctrl+C 就强制中断之前的又可以输入了, |
12
julyclyde 2023-05-20 18:14:59 +08:00
|
13
julyclyde 2023-05-20 18:27:44 +08:00
你这系统里问题比较多:
1 cron 里 sudo 也可能有些问题。不过是另案了 2 有多个 sshd 在第一层 3 有多个 python 在第一层 |
14
AaIT OP @julyclyde #12 -pa 会卡住,无法输出任何内容, -p 倒是可以看到一大堆进程
-p 输出非常多的进程 你说的 rc 是 /etc/rc.local 吗,魔方云在里面放了个开机自启的玩意,但是这个不是开机时候才执行一次来着 |
15
AaIT OP @julyclyde #13 前段时间执行了一次 yum updata
感觉可能很多东西有点不对了,没有 updata 之前是没有明显异常 感觉要重装系统重新部署下了,主要是新机器没到位,这个也不能动 郁闷呀 |
16
8520ccc 2023-05-20 19:17:17 +08:00 via iPhone
以前遇到过类似的情况 su - root 或者 sudo -i 应该可以恢复命令行状态
|
17
barathrum 2023-05-20 19:46:27 +08:00 via iPad
已经提示是 hang task 了,用 ps 找 d 状态的进程,分析一下他在干什么,比如看看 pid 下的 stack ,hang 在哪了。
|
18
BaseException 2023-05-20 20:42:48 +08:00 via iPhone
cpu 100%占用了 我有个机器遇到过
|
19
AaIT OP @barathrum 可能找到原因了,昨天 22:07:54 内核日志记录有很多条进程 D 状态的消息
现在看的话只有一个进程处于 D 状态 后台虚拟机的所有流量和内存统计也停在 22:00 之后就没有记录了 虽然虚拟机在正常运行,但信息收集部分出问题了 前二天记录都正常,SSH 连接也正常,现在 SSH 也出现了异常,不知道是不是也是这个原因导致的 |
20
AaIT OP @BaseException 百分百也是个问题,可能是因为 ksmd 变成 D 状态导致无法约束虚拟机了
这个只能发给魔方公司的人去看了,小问题确实不少,现在这样只能重启了,距离上次重启稳定了 10 天 上次是把断网的问题给解决了 |
21
BaseException 2023-05-21 08:42:10 +08:00 via iPhone
@AaIT #20 嗯嗯 我之前是中了 xmrig 门罗币挖矿病毒。。
|