Descobrindo com quais parâmetros um programa foi iniciado


8

Existe uma maneira de descobrir para qualquer processo determinado com quais parâmetros ele foi iniciado?

Respostas:


5

Para descobrir quais argumentos foram passados ​​para o pdnsd, eu faria:

[~]> pgrep -l pdnsd
1373 pdnsd
[~]> cat /proc/1373/cmdline 
/usr/sbin/pdnsd--daemon-p/var/run/pdnsd.pid[~]> 

( cmdlineas entradas de arquivo são separadas por caracteres nulos; use algo como tr '\0' '\n' </proc/<pid>/cmdlinepara ver uma saída mais legível.)

/proc/<pid>/ contém muita informação.


Observe que a linha de comando pode ser substituída pelo próprio programa; certas peças de software fazem isso por razões benignas, geralmente para colocar informações úteis legíveis por humanos na pssaída, mas também por razões malignas, como uma exploração ou um rootkit tentando se esconder.
Shadur

Muito complexo. Por que não apenas pgrep -a pdnsd?
user1404316

4

Para Linux, ps -efgera toda a linha de comandos, incluindo os parâmetros.

Para o Solaris, as coisas poderiam ser mais problemáticas, mas você marcou a pergunta com o Linux ...

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.