Di seguito è riportato l'output del comando "top". Ho ritagliato il risultato. Qui, voglio conoscere il dettaglio del processo chiamato httpd.pl
.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
23546 user 20 0 55596 5428 808 S 0.7 0.1 0:01.52 httpd.pl
Questo mi sembra sospetto, perché quando faccio lsof -p 5182
, mostra il seguente output, che mostra che il processo sta aprendo la porta 39331:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd.pl 5182 user 3u IPv4 168936033 0t0 TCP *:39331 (LISTEN)
Ho usato pochi comandi per scoprire da dove è in esecuzione, ma non sono riuscito a trovarlo. Ho usato i seguenti comandi finora:
#ls -l /proc/PID/cwd
#cat /proc/PID/environ | tr '-bash-4.1# cat testing.pl
#!/usr/bin/perl
print 'ps $$';
$0="my_name_is_httpd.pl .. honest";
print 'ps $$';
-bash-4.1#
-bash-4.1# ./testing.pl
PID TTY STAT TIME COMMAND
6762 pts/0 S+ 0:00 /usr/bin/perl ./testing.pl
PID TTY STAT TIME COMMAND
6762 pts/0 S+ 0:00 my_name_is_httpd.pl .. honest
-bash-4.1#
' '\n'
#ps -p PID -o command
Tuttavia, nessuno di questi mostra la posizione esatta. Mostra /
come cwd ma non esiste un tale file chiamato httpd.pl
lì. Anche un mio amico mi ha detto che httpd.pl
potrebbe essere un nome falso, perché è banale cambiare il nome di un processo:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
23546 user 20 0 55596 5428 808 S 0.7 0.1 0:01.52 httpd.pl