在Solaris中创build大量重复的sshd守护进程

我有一个Solaris服务器,我发现很多sshd服务正在运行:

ps -ef | grep 23492 root 25449 23492 0 15:27:17 ? 0:00 /usr/sbin/sshd2 -oPidFile=/var/run/sshd2_22.pid -R internal_rexec root 25432 23492 0 15:24:32 ? 0:00 /usr/sbin/sshd2 -oPidFile=/var/run/sshd2_22.pid -R internal_rexec root 25350 23492 0 15:14:22 ? 0:00 /usr/sbin/sshd2 -oPidFile=/var/run/sshd2_22.pid -R internal_rexec root 25344 23492 0 15:13:59 ? 0:00 /usr/sbin/sshd2 -oPidFile=/var/run/sshd2_22.pid -R internal_rexec root 25539 23492 0 15:34:42 ? 0:00 /usr/sbin/sshd2 -oPidFile=/var/run/sshd2_22.pid -R internal_rexec root 23492 1 0 11:45:46 ? 0:01 /usr/sbin/sshd2 -oPidFile=/var/run/sshd2_22.pid root 24101 23492 0 13:06:34 ? 0:00 /usr/sbin/sshd2 -oPidFile=/var/run/sshd2_22.pid -R internal_rexec root 25472 23492 0 15:30:38 ? 0:00 /usr/sbin/sshd2 -oPidFile=/var/run/sshd2_22.pid -R internal_rexec 

如你所见, PID-23492 /usr/sbin/sshd2已经创build了多个subprocess。 我想知道谁/什么其他进程/脚本正在启动这个。

在Solaris中是否有任何命令可以给我进一步的细节?

我试图在PID文件上做一个lsof ,但是我猜它不适用于Solaris:

 [root@e0100damsgmgt01 /var/adm]$ lsof /var/run/sshd2_22.pid ld.so.1: lsof: fatal: libc.so.1: version `SUNW_1.22.5' not found (required by file /opt/csw/bin/amd64/lsof) ld.so.1: lsof: fatal: libc.so.1: open failed: No such file or directory Killed [root@e0100damsgmgt01 /var/adm]$ 

我的solaris版本:

 [root@e0100damsgmgt01 /var/adm]$ uname -a SunOS e0100damsgmgt01 5.10 Generic_137112-07 i86pc i386 i86pc [root@e0100damsgmgt01 /var/adm]$ 

请帮助。

 ps axf 

应该给你一个进程树,你会看到在服务器上,其他人是与不同的客户端通信的孩子。 这是正常的行为。

要获得你的程序打开的文件列表,你应该使用

 lsof -p $(cat /var/run/sshd2_22.pid) 

或者你可以看到每个其他进程的列表,用前面命令中的PID代替$(...)