Como eu descobriria todos os arquivos que um processo específico acessa?
Estou usando o Ubuntu 9.04.
lsof listará arquivos abertos e IDs de processo associados. Ele lista tudo se nenhuma opção for fornecida.
Existe uma opção,, -p
para listar arquivos abertos para um único processo. Portanto, para um processo com PID 6714, isso listará os arquivos abertos por esse processo:
lsof -p 6714
Para listar apenas arquivos regulares, o grep pode ser usado para filtrar a saída de lsof:
lsof -p 6714 | grep REG
Se precisar ser mais robusto do que com o grep, a -F
opção poderá ser usada, mas será mais complexa. Na página do manual lsof :
Quando a opção -F é especificada, lsof produz saída adequada para processamento por outro programa - por exemplo, um script awk ou Perl, ou um programa C.
Depende de suas necessidades.