Verwenden Sie strace
!
Beispiel: Alle Dateien auflisten, die Firefox während einer Sitzung geöffnet hat:
strace -f firefox 2>&1 | grep 'open('
Wenn Sie eine zweite Instanz von FireFox öffnen, führt dies zu folgendem Ergebnis: http://pastebin.com/iRqxgiWN .
Beispiel 2: Alle von FireFox ausgeführten Prozesse auflisten:
strace -f firefox 2>&1 | grep -P 'exec[vlpe]*\('
Beim Besuch von YouTube ergibt sich etwa Folgendes:
[pid 25020] execve("/usr/lib/firefox/plugin-container", ["/usr/lib/firefox/plugin-containe"..., "/usr/lib/adobe-flashplugin/libfl"..., "-greomni", "/usr/lib/firefox/omni.ja", "-appomni", "/usr/lib/firefox/browser/omni.ja", "-appdir", "/usr/lib/firefox/browser", "15198", "false", "plugin"], [/* 57 vars */]) = 0
[pid 25024] execve("/bin/sh", ["sh", "-c", "ps x | grep netscape"], [/* 57 vars */]) = 0
[pid 25025] execve("/bin/ps", ["ps", "x"], [/* 57 vars */] <unfinished ...>
[pid 25026] execve("/bin/grep", ["grep", "netscape"], [/* 57 vars */]) = 0
Sie können dies auch mit vielen anderen Systemaufrufen tun ...
Indem Sie die Parameter von open()
in Ihrer grep
Suche abgleichen , können Sie auch herausfinden, in welchem Modus die Datei geöffnet wurde:
Fügen Sie einfach | grep -P 'O_RDONLY|O_RDWR'
(das führende Pipe-Zeichen ist wichtig!) Hinzu, um den Lesezugriff oder den | grep -P 'O_WRONLY|O_RDWR'
Schreibzugriff auf Ihren Befehl zu filtern ...
EDIT :
Wie in den Kommentaren erwähnt, können Sie auch strace -fe open firefox
alle von FireFox geöffneten Dateien auflisten. Sie können auch verwenden strace -fe trace=file firefox
zur Liste alle von FireFox getan Dateioperationen , die einen Dateipfad als Argument haben (offen, stat, lstat, chmod, Zugang, ...).
Viele weitere sind verfügbar! Schauen Sie sich die Manpage zu strace (1) an .
strace -e open
, nur Anrufe zu zeigenopen()
.Eigentlich gibt es einen Modus, der als ausführlicher Modus bezeichnet wird, aber ich bin mir nicht sicher, ob Firefox eine solche Option hat. Aber kein Problem, jede Anwendung besteht aus ihrem Protokoll. Sie können also die Aktivität der Anwendung überprüfen, indem Sie ihre Protokolldaten überprüfen.
Wenn Sie das Protokoll für Firefox aktivieren möchten, können Sie dies überprüfen
http://bertrandbenoit.blogspot.in/2011/09/activate-logging-for-mozilla.html
Jede Anwendungsaktivität in Ubuntu können Sie mit ihren spezifischen Protokollen überprüfen. Alle Anwendungen werden im
/var/log
Verzeichnis protokolliert .quelle