bash: Überwachen, welche Dateien von einem Prozess in Echtzeit verwendet werden
427
Jezor
Gibt es einen Befehl, um zu verfolgen, welche Dateien vom Programm mit gegebener PID in Echtzeit geöffnet / geschlossen / geschrieben werden?
Ich möchte:
- Ein Programm ausführen,
- Aktivieren der Überwachung von Programmdateien
- mache Sachen im Programm,
- Überprüfen Sie, welche Dateien in der Zeit geändert wurden, als ich etwas getan habe.
Ich brauche so etwas wie lsof, aber es sollte in Echtzeit Operationsinformationen anhängen.
Haben Sie über Strace nachgedacht? Es würde Ihnen alle diese Informationen geben.
John1024 vor 9 Jahren
3
John: Ja, aber strace ist ein sehr komplexes Werkzeug und ich weiß nicht wirklich, wie ich Daten extrahieren kann, die ich brauche.
Jezor vor 9 Jahren
0
Ich stimme Ihnen zu, dass die Ausgabe der strace _ugly_ ist, aber "strace" ist leicht auszuführen und die Ausgabe ist nicht so schwer zu interpretieren. Wenn beispielsweise eine Zeile mit `open (`) beginnt, wird eine Datei geöffnet. Wenn eine Zeile mit `write (`) beginnt, wird in eine Datei geschrieben. [Klicken Sie hier, um ein Beispiel für eine strace-Ausgabe anzuzeigen.] (Http : //stackoverflow.com/a/27075334/3030305) Ich verstehe jedoch, wenn Sie auf ein besseres, benutzerfreundlicheres Werkzeug hoffen.
John1024 vor 9 Jahren
1
Wenn Sie die Befehlszeilenoptionen für `strace` betrachten, werden Sie feststellen, dass Sie die Ausgabe einschränken können. zB nur für E / A-bezogene Operationen.
Scott vor 9 Jahren
1
Ich habe endlich eine bessere Lösung gefunden als strace (in meinem Fall): https://github.com/ole-tange/tangetools/blob/master/tracefile/tracefile
Jezor vor 9 Jahren
0
@Jezor: Ich lade Sie ein, (1) in den Antworten [Wie empfehle ich Software?] (Http://meta.superuser.com/q/5329/150988) zu lesen und dann (2) Ihre Entdeckung aufzuschreiben * als Antwort * (unten).
Scott vor 9 Jahren
0
0 Antworten auf die Frage
Verwandte Probleme
-
5
Gibt es drahtlose Router, die Bandbreitenüberwachung und -drosselung ermöglichen?
-
1
Pausieren Sie alle Aufgaben außer x CPU-intensiven Aufgaben
-
10
Wie kann ich die Bash-Historie durchsuchen und einen Befehl erneut ausführen?
-
2
Kann die Ausgabe eines Befehls an zwei andere Befehle weitergeleitet werden?
-
8
Benennen Sie eine Gruppe von Dateien mit einem Befehl um
-
2
Warum aktualisiert sich mein Pfad nicht * jetzt *?
-
5
Wie entferne ich einen symbolischen Link zu einem Verzeichnis?
-
8
Rette mich vor dem Kauderwelsch
-
9
Wie kann ich jeder Zeile einer Textdatei eine Zeilennummer und einen Tabulator voranstellen?
-
1
Wann sollte ich Konfigurationen in .bashrc vs einfügen? .bash_profile?