Mir ist bekannt, dass ich lsof verwende, um die Dateien zu überprüfen, auf die ein Prozess derzeit zugreift. Gibt es eine Möglichkeit, alle Dateien anzuzeigen, die eine Anwendung im Laufe ihres Lebens öffnet?
Mir ist bekannt, dass ich lsof verwende, um die Dateien zu überprüfen, auf die ein Prozess derzeit zugreift. Gibt es eine Möglichkeit, alle Dateien anzuzeigen, die eine Anwendung im Laufe ihres Lebens öffnet?
Antworten:
Mit dem Befehl strace ist es möglich mit etwas wie:
strace -e trace=open program [arguments]
strace -e trace=open program [arguments] | grep -v ' = -1 ENOENT'
die Situation verbessern könnte, aber es ist auch nicht wahr. Letzteres erkennt nicht abgeschlossene und dann wieder aufgenommene Anrufe an open
.
openat
.
Ich bin nicht sicher, ob ich genau verstanden habe, was Sie damit machen wollen. Aber haben Sie Strace in Betracht gezogen? Es werden alle Systemaufrufe einschließlich Dateien angezeigt.
BEARBEITEN: Vergessen Sie nicht die Option -f, mit der Sie gegabelte Prozesse verfolgen können.