Linux 服务器内存占用高达 90%,被一个不知道哪儿来的进程占用了,如何排查

2020-06-22 18:31:04 +08:00
 madizmChou

这是公用的测试服务器,我寻思首先应该找到这个文件在哪儿,这个 find 命令能行吗

find / ROInmw -type f -executable -print

返回

find: ‘ROInmw’: 没有那个文件或目录
2513 次点击
所在节点    问与答
21 条回复
lululau
2020-06-22 18:34:12 +08:00
lsof
yujiang
2020-06-22 18:48:09 +08:00
先 kill 掉再排查吧,这个命名法感觉不是善茬
vissssa
2020-06-22 18:51:39 +08:00
敲一下试试
itskingname
2020-06-22 19:00:23 +08:00
有 pid,就可以找到文件地址。

sudo ls -l /proc/<pid>/cwd

这里的 cwd 是一个软连接,通过 ls -l 可以显示出它指向的文件夹地址。
ladypxy
2020-06-22 19:12:06 +08:00
ps -ef
CodeCodeStudy
2020-06-22 19:12:33 +08:00
假设 pid 是 12207,进入到 /proc/12207,ls -l
cwd 查看该进程的所在目录,注意后面不要有斜杠,因为这个文件是一个软链接,加斜杠的话就会列出目标目录的文件出来
exe 查看该进程的可执行文件
uid_map 查看该进程的用户和用户组
fd 查看该进程打开的文件描述符
cmdline 查看该进程的调用的命令
environ 是环境变量
net/netstat 该进程的流量统计
madizmChou
2020-06-22 19:13:24 +08:00
@itskingname
sudo ls -l /proc/<pid>/cwd
-------------------
返回
lrwxrwxrwx 1 root root 0 6 月 22 18:20 /proc/12207/cwd -> /
😂
CodeCodeStudy
2020-06-22 19:21:34 +08:00
CodeCodeStudy
2020-06-22 19:22:28 +08:00
@madizmChou
cat /proc/12207/exe 查看可执行文件的路径
cat /proc/12207/cmdline 查看该进程的调用的命令
Vhc
2020-06-22 19:28:38 +08:00
楼主,你确定自己能分清 CPU 和 内存?
610915518
2020-06-22 19:30:04 +08:00
10 楼神回复
exiahan
2020-06-22 19:54:35 +08:00
内存映像 dump 出来看看?
先 cat /proc/pid/maps,然后找到这玩意对应的内存区域,然后
dd if=/proc/pid/mems of=xxx skip=offset count=size
baiduyixia
2020-06-22 21:24:32 +08:00
@Vhc 9 楼之前那些人是不是也没分清楚
May725
2020-06-22 22:05:36 +08:00
90 占用,默认就是 cpu 了,结果发现你标题写的是内存,不过不影响大家答题
msg7086
2020-06-23 05:40:27 +08:00
800%的 CPU 占用,不是挖矿还能是啥? root 账号挖矿,不马上重装系统?
itskingname
2020-06-23 09:22:01 +08:00
@madizmChou 说明这个程序就被放在根目录下面。
xiaooloong
2020-06-23 15:45:57 +08:00
挖矿程序,看看怎么侵入的。先排查下弱口令、redis 。
CodeCodeStudy
2020-06-23 21:28:04 +08:00
@baiduyixia 看清楚了,是 CPU 的问题,不过题主想知道的是文件在哪里,不影响答题
julyclyde
2020-06-28 17:43:52 +08:00
@itskingname 并不能说明放在根目录
madizmChou
2020-06-28 18:17:04 +08:00
@julyclyde 到根目录检查了,并没有。有可能是程序跑起来后自动删除了?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/683842

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX