许多未知的进程名称为“sudo”

许多未知的进程名称为“sudo”

我的服务器可用内存越来越少,而且很多进程的命令都是在用top输入M的时候需要输入“sudo”。

我不明白用户需要使用“sudo”。我想知道这些进程是如何生成的?我可以杀死它们吗?

Tasks: 185 total,   1 running, 184 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   3967848k total,  3484196k used,   483652k free,   218532k buffers
Swap:  4112376k total,        0k used,  4112376k free,  2932864k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND            
22219 mysql     20   0  582m  67m 5492 S  0.0  1.7   0:01.75 mysqld             
22337 daemon    20   0  327m  31m 3440 S  0.0  0.8   0:01.58 httpd              
22252 daemon    20   0  321m  26m 3416 S  0.0  0.7   0:01.25 httpd              
22263 daemon    20   0  319m  23m 3396 S  0.0  0.6   0:00.71 httpd              
22253 daemon    20   0  310m  18m 3444 S  0.0  0.5   0:00.69 httpd              
22251 root      20   0 28392  12m 3640 S  0.0  0.3   0:00.09 httpd              
 2422 root      20   0  9192 3608 2184 S  0.0  0.1   0:00.32 ssh                
13613 root      20   0 38220 3572 1044 S  0.0  0.1   0:22.31 rsyslogd           
 2423 root      20   0 11556 3420 2692 S  0.0  0.1   0:00.11 sshd               
22570 root      20   0 11716 3408 2676 S  0.0  0.1   0:00.08 sshd               
 3351 root      20   0 10384 2540 2000 S  0.0  0.1   0:00.06 sudo               
30870 root      20   0 10384 2528 2000 S  0.0  0.1   0:00.06 sudo               
14356 dkim-mil  20   0 49664 2444 1468 S  0.0  0.1   0:03.91 dkim-filter        
 2085 root      20   0 10376 2344 1824 S  0.0  0.1   0:00.00 sudo               
 7741 root      20   0 10376 2344 1824 S  0.0  0.1   0:00.00 sudo               
29838 root      20   0 10376 2344 1824 S  0.0  0.1   0:00.00 sudo               
 2006 root      20   0 10376 2340 1824 S  0.0  0.1   0:00.00 sudo               
29747 root      20   0 10376 2340 1824 S  0.0  0.1   0:00.00 sudo               
30602 root      20   0 10376 2340 1824 S  0.0  0.1   0:00.00 sudo               
30935 root      20   0 10376 2340 1824 S  0.0  0.1   0:00.00 sudo               
 2259 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
 2503 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
 2515 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
 7718 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
 7745 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
29845 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
30172 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
30352 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
30548 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
30598 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
30897 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo               
30899 root      20   0 10376 2336 1824 S  0.0  0.1   0:00.00 sudo   

答案1

您需要确定是什么产生了它们,以及它们是什么,然后您才能够判断是否可以杀死它们,或者最好是首先禁止它们发生(如果没有必要的话)。

使用 ps 命令。 ps -ef将显示进程的父进程 ID,这可能有助于确定导致进程的原因。它还将显示 STIME,即进程启动的时间,这可能有助于确定原因。 ps -ef f将显示进程层次结构,这也可能有助于确定命令的来源。

查看 cron 日志。 /var/log/cron在基于 RHEL 的系统上可能会显示与命令同时运行的作业。

ps auxwwe可能会让您了解命令的来源环境,这可能会为您指明来源。

strace -fp <PID>如果您需要查看命令在系统调用级别执行的操作,这也可能有所帮助。也许它因某些需要修复的故障而停滞。

答案2

它们root现在可以运行,因为 sudo 已将原始用户转换为root

通过(例如)执行来获取进程的开始时间,ps -o lstart 29845并在安全日志中使用 sudo 日志交叉检查其开始时间。

哦,你的可用内存仍然相当不错。检查应用程序的实际内存使用情况时,可以忽略cached和值。buffers

相关内容