linux服务器情况
-
查看Linux 进程命令 ps -aux 或者ps -ef
-
linux 进程很多 如果需要查找某一个进程可以使用 管道和grep命令
-
Linux下常用命令 grep 匹配字符 ps 查询Linux进程
1.查看服务器CPU飙升卡爆,最后发现是服务器在跑挖矿程序,CPU使用率奇高。在此总结一下排查经过。
首选发现CPU飙升,服务器卡死,查看异常进程PID
#top #查看各个进程的cpu使用情况,默认按cpu使用率排序
2.结束掉异常进程
#kill -9/15 pid #终止指定进程,-9 是强制终止进程,-15 是软结束进程
3.发现刚结束的异常进程又自动启动
#ls -l /proc/$PID/exe #查看PID启动文件的路径
#ls -l /proc/$PID/cwd #查看PID执行目录的路径
4.删除运行文件,但是15s后又自动恢复文件运行了。这里可以肯定的是有定时器不断下载文件和启动程序。
#在定时器配置目录查看是否存在异常定时器配置 /var/spool/cron/root 和/etc/crontab 和/etc/rc.lcoal
#tail -f /var/log/cron #查看定时器启动日志,跟踪自启动程序
5.发现/var/spool/cron/root 里面配置了一个不断下载的定时器任务,删除定时器,问题解决。
如何查找一个进程信息
查看所有进程信息
#top #查看各个进程的cpu使用情况,默认按cpu使用率排序
#ps aux | less #显示所有运行中的进程,q退出
根据进程名称查找PDI
#ps -aux|grep test.jar | grep -v grep #查看test.jar进程号
#ps -ef|grep test.jar | grep -v grep #查看test.jar进程号
查看线程信息
#top -Hp pid #查看该进程下各个线程的cpu使用情况
#printf "%x\n" pid #将线程pid转换为十六进制 8f7
#jstack pid | grep 8f7 #查看pid进程里面的线程信息,线程Id为十六进制
查看进程相关文件:/proc 目录是存放系统进程文件信息的,可以查看到进程详细信息。
#lsof -p pid #查看该进程打开的文件
#cat /proc/pid/maps #查看pid线程内存分配
#ls -l /proc/$PID/exe #查看PID启动文件的路径
#ls -l /proc/$PID/cwd #查看PID执行目录的路径
#cat /proc/$PID/status #查看PID详细的内存占比
---------------------
作者:灵夕丨月下灵
来源:CSDN
原文:https://blog.csdn.net/xiaolong_4_2/article/details/81839498
版权声明:本文为博主原创文章,转载请附上博文链接!