腾讯云Centos8.0 CPU使用率100%,top查询为kthreaddk占用异常
作者:互联网
腾讯云Centos8.0 宝塔显示CPU使用率100%,top查询为kthreaddk占用异常
腾讯云Centos8.0 清不完的kthreaddk
发现过程:
经查询发现为kthreaddk异常占用过高导致CPU使用率达100%:
初步处理是使用kill -9 pid
杀掉进程,但发现依旧会立马再起一个新的进程。
然后查询是否有起了定时任务crontab -l
,如果你没有设定有定时任务,直接用crontab -r
清掉即可。
但使用top查询依旧存在kthreaddk的进程,同时发现第二位占用高的进程有点奇怪,使用ls -l /proc/pid
或者cd /proc/pid
进去看看对应进程的程序和路径是什么。
经查询发现应是与kthreaddk有关的异常进程,杀掉此进程并同时把相关路径下的东西使用rm -rf
清掉。
重新使用top查询依旧发现另起了kthreaddk进程与另外一个进程,上述方法无果,网上搜索发现有类似的kthreaddi的异常占用导致CPU使用率达100%。
参考此文章:https://blog.csdn.net/cat_hate_fish/article/details/117222556?spm=1001.2014.3001.5501
综合采取以下方法:
1、使用netstat -ltnp查询端口使用情况:
前后发现CPU占用第二位的进程的端口号都是同一个,使用以下命令关闭:
#查询当前开放的端口列表:
firewall-cmd --list-ports
#关闭端口号为52275的TCP/UDP协议,--permanent为彻底关闭:
firewall-cmd --remove-port-52275/tcp --permanent
firewall-cmd --remove-port=52275/udp --permanent
经发现会提示此端口未开放(其实没事,只管命令执行成功即可)
2、重启服务器。
3、使用top查询相关进程的进程号,找到对应的进程信息。
4、查询定时任务,清空定时任务:
crontab -l
crontab -r
5、杀掉对应的两个进程:
kill -9 pid
6、找到这两个进程和定时任务中提到的路径,并分别把它们删除。(这里直接删最后一级有些会发现本身就已经被删除的了,这时可以看看上一级目录或者上上级目录,只要确定对应目录中的东西是无关的或者不是必要的,可直接删除对应的目录)
rm -rf 路径
执行完看看有没有其他定时任务在杀掉进程前偷偷生成了,有就重复上面的操作。
7、top查询和观察一段时间,发现kthreaddk已经没了,CPU使用率也降下来了,即操作成功。
留着最后:最终根源其实也没确定,究竟是重启服务器再杀掉对应进程即可,还是说要按上面的步骤一一执行了才可解决问题?
标签:--,top,Centos8.0,查询,kthreaddk,进程,CPU 来源: https://blog.csdn.net/H_Dsheng/article/details/121655049