Linux杀不死的进程之CPU使用率700%
1. 问题发现
[root@zwlbs3 ~]# top
i. 发现有个进程CPU使用率居然700%,COMMAND 是一些随机的字符串组成,完了~ 中标了;第一想到就是“沙雕”它,kill 命令给我上。
[root@zwlbs3 ~]# kill - "PID"
ii. 但是发现 kill 该进程平静一会后又启动了。
注:老图复用,PID、COMMAND 都有变化。
2. 查看进程的详细信息
[root@zwlbs3 ~]# cd /proc//
[root@zwlbs3 ]# ls -ial # ""是该进程的 PID,根据你的 PID 来查看即可。
如图:
发现该进程是在 /dev/shm 目录下的,/dev/shm 是一个什么目录呢?
从网上摘下来一段我们解一下 /dev/shm
1) 首先可以看出来/dev/shm是一个设备文件, 可以把/dev/shm看作是系统内存的入口, 可以把它看做是一块物理存储设备,一个tmp filesystem, 你可以通过这个设备向内存中读写文件, 以加快某些I/O高的操作,比如对一个大型文件频繁的open, write, read。
2) 据说oracle就利用了/dev/shm(shitou没用过oracle), 可以通过mount命令列出当前的/dev/shm的挂载的文件系统。
3) 既然是基于内存的文件系统,系统重启后/dev/shm下的文件就不存在了。Linux默认(CentOS)/dev/shm分区的大小是系统物理内存的50%, 虽说使用/dev/shm对文件操作的效率会高很多。但是目前各发行软件中却很少有使用它的(除了前面提到的Oracle), 可以通过ls /dev/shm查看下面是否有文件, 如果没有就说明当前系统并没有使用该设备。
查看 /dev/shm 目录的有没有相关文件
[root@zwlbs3 ~]# ls -a /dev/shm/
. .. # 没有任何相关的文件,奇怪了。
- crontab 也没有相关计划任务。
- 使用 which 命令也没有找到相关的文件。
- 查看系统日志也是正常,非常奇怪。
- 几乎没有找到该进程相关的文件。
3. 解决办法
i. 查看某个进程内部线程占用情况分析
[root@zwlbs3 ~]# top -H -p "PID"
ii. 原来有这么多相关的进程,全部 kill 掉
iii. 过来几分钟再次检查,发现系统负载恢复正常
本以为解决了,结果过了几个小时检查发现又出现了,该死的。
由于生产环境不方便重启服务器,被逼无奈情况下只好试试 重启大法 了。
4. 重启大法
重启服务器后一个小时,再次检查已经恢复正常了,还是 重启大法 好使。
- 该恶意程序有什么作用?为何只消耗CPU资源?由于未找到相关文件信息,原因也暂时未清楚。
- 知道的大佬麻烦告诉我一下,非常感谢!
Linux杀不死的进程之CPU使用率700%的更多相关文章
- Linux VPS通过安装CPULimit来限制CPU使用率
说明:我们手上经常有很多廉价的VPS,有时候使用某些软件应用的时候,会出现CPU跑满的情况,而长时间跑满会被VPS商家停掉,所以这里我们需要想办法来限制进程CPU使用率,这里就说个教程. 简介 cpu ...
- Linux中杀不死的进程
前段时间,一哥们,去杀Linux服务器的进程,发现kill命令失灵了,怎么杀都杀不死. 然后上网查了下资料,原来是要被杀的进程,成为了僵尸进程. 僵尸进程的查看方法: 利用命令ps,可以看到有标记为Z ...
- Linux下tomcat的shutdown命令可以关闭服务但是杀不死进程
Linux下tomcat的shutdown命令可以关闭服务但是杀不死进程 原因: 一般造成这种原因是因为项目中有非守护线程的存在: 解决方案: 一.从Tomcat上解决 方案1:(推荐的方案:因为一台 ...
- 创建多进程之multiprocess包中的process模块
创建多进程之multiprocess包中的process模块 1.process模块是一个创建进程的模块 Process([group [, target [, name [, args [, kwa ...
- paip.杀不死进程的原因--僵尸进程的解决.txt
paip.杀不死进程的原因--僵尸进程的解决.txt 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn ...
- Linux平台Cpu使用率的计算
proc文件系统 /proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为内核与进程提供通信的接口.用户和应用程序可以通过/proc得到系统的信息,并可以改变内核的 ...
- 手把手教你写LKM rookit! 之 杀不死的pid&root后门
......上一节,我们编写了一个基本的lkm模块,从功能上来说它还没有rootkit的特征,这次我们给它添加一点有意思的功能.我们让一个指定的进程杀不死, 曾经,想写一个谁也杀不死的进程,进程能捕捉 ...
- 查看线程linux cpu使用率
Linux下如何查看高CPU占用率线程 LINUX CPU利用率计算 转 http://www.cnblogs.com/lidabo/p/4738113.html目录(?)[-] proc文件系统 p ...
- Linux中通过/proc/stat等文件计算Cpu使用率
Linux平台Cpu使用率的计算 proc文件系统 /proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为内核与进程提供通信的接口.用户和应用程序可以通过/pro ...
随机推荐
- Jenkins+SVN+Maven+shell 自动化部署实践
JAVA环境中利用Jenkins+svn+maven进行自动化部署实践 一. 前言2 1.介绍jenkins2 1.本地项目打包2 2.通过secureCRT工具,手动传输到服务器2 3.然后 ...
- java中几个常见的问题
1.正确使用equals方法 Object的equals方法容易抛出空指针异常,应使用常量或确定有值的对象来调用equals方法 例如: //不能使用一个值为null的引用类型变量来调用非静态方法,否 ...
- [HNOI2015]菜肴制作 题解(自带口胡证明)
[HNOI2015]菜肴制作 时间限制: 1 Sec 内存限制: 512 MB 题目描述 知名美食家小 A被邀请至ATM 大酒店,为其品评菜肴. ATM 酒店为小 A 准备了 N 道菜肴,酒店按照为 ...
- ServiceFabric极简文档-5.0 Service Fabric有状态与无状态
Service Fabric 应用程序方案 2017/08/14 作者 Edward Chen Jack Zeng Azure Service Fabric提供了一个可靠而灵活的平台,可用于编写和运行 ...
- 数据库系统概念:基础的SQL
public class DataBase { public static void main() { } } /* 3.1 SQL查询语言概览 SQL语言有一下几个部分: 数据定义语言:提供定义关系 ...
- <a>标签 IOS 安卓 亲测有效
一.普通链接 <a href="http://www.baidu.com">百度</a> 二.邮件链接 1.标签最简式 <a href="m ...
- pgsql查询优化之模糊查询
前言 一直以来,对于搜索时模糊匹配的优化一直是个让人头疼的问题,好在强大pgsql提供了优化方案,下面就来简单谈一谈如何通过索引来优化模糊匹配 案例 我们有一张千万级数据的检查报告表,需要通过检查报告 ...
- NOIP2018提高/普及成绩
明天就要出了,不忍看到自己爆零,现在很慌. 大家都考的如何呢?欢迎留言自己的分数或预估分数.
- java ServletContextListener 实现UDP监听
使用spring boot实现项目启动时的监听, UDPListener import java.io.IOException;import java.io.UnsupportedEncodingEx ...
- hive show databases 添加条件
show databases like 'test012301' ; 通配符: show databases like 'a*';