Monitora continuamente arquivos abertos / acessados por um processo

22

lsof -p 12345 listará todos os arquivos abertos pelo processo cujo pid é 12345, mas apenas por um instante específico.

Como podemos monitorar continuamente um processo do começo ao fim (até o processo ser encerrado) para listar / mostrar cada arquivo acessado pelo processo durante toda a sua vida útil?

    
por MA1 20.10.2011 / 15:50

3 respostas

28

Tente com strace -p 12345 ; deve fazer o que você está tentando alcançar.

A saída pode ser filtrada para exibir apenas arquivos abertos ( Comentário de Dan D. :

strace -e open -p 12345

Nota: você também pode rastrear processos em execução rapidamente com strace -e open <command> .

    
por 20.10.2011 / 16:33
6

O novo utilitário fatrace fará isso: link

sudo fatrace | grep '(6514)'

Não use a opção -p, isso significa o oposto do que significa em lsof ou outros utilitários.

    
por 04.03.2015 / 09:18
3

Isso irá repetir o seu comando e limpar a tela toda vez:

watch "lsof -p 12345"

AVISO: isto irá perder acessos rápidos a arquivos e só é adequado para ver arquivos antigos

    
por 05.12.2013 / 16:10