Déterminer les fichiers auxquels un processus accède


9

Comment puis-je trouver tous les fichiers auxquels un processus particulier accède?

J'utilise Ubuntu 9.04.

Réponses:


11

lsof répertorie les fichiers ouverts et les ID de processus associés. Il répertorie tout si aucune option n'est donnée.

Il existe une option,, -ppour répertorier les fichiers ouverts pour un seul processus. Ainsi, pour un processus avec PID 6714, cela répertoriera les fichiers ouverts par ce processus:

    lsof -p 6714

Pour lister uniquement les fichiers normaux, grep peut être utilisé pour filtrer la sortie de lsof:

    lsof -p 6714 | grep REG

S'il doit être plus robuste qu'avec grep, l' -Foption peut être utilisée, mais elle devient alors plus complexe. Depuis la page de manuel lsof :

Lorsque l'option -F est spécifiée, lsof produit une sortie qui peut être traitée par un autre programme - par exemple, un script awk ou Perl ou un programme C.

Cela dépend de vos besoins.


1
J'aime ajouter '-b' à lsof, ça ira un peu plus vite. Aussi, j'ajoute 2> / dev / null avant le canal vers grep.
kbyrd
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.