Dateivorgänge überwachen

Dateivorgänge überwachen

Ich möchte herausfinden, welche Dateivorgänge (erfolgreich und fehlgeschlagen) in der letzten Stunde auf meinem System ausgeführt wurden. Gibt es eine Möglichkeit, das zu tun?

Antwort1

Sie können den Verlauf von Dateioperationen nur sehen, wenn Sie diese überwacht und protokolliert haben. Es gibt einige Möglichkeiten, dies zu tun, wie den Systemaufruf ptrace() oder das Befehlszeilenprogramm strace oder vielleicht sogarDTrace, aber wenn Sie die Aktionen nicht protokolliert haben, können Sie nur mit den Dateizeitstempeln arbeiten.

Antwort2

Solche Informationen werden standardmäßig nicht protokolliert (das wären sehr viele Informationen)!

Wenn Sie sehen möchten, was ein bestimmter Prozess tut, führen Sie ihn aus unterstrace(das ist das Linux-Dienstprogramm, andere Unix-Varianten haben ähnliche Dienstprogramme wietruss, dtrace, usw.). Standardmäßig stracewerden alle Systemaufrufe protokolliert. Sie können steuern, welche Art von Informationen straceangezeigt werden. Beispielsweise -efilebeschränkt die Option die Protokollierung auf Systemaufrufe, die auf Dateien zugreifen.

strace -o myprogram.log -efile myprogram --option

Wenn Sie Zugriffe auf alle Dateien einer bestimmten Hierarchie protokollieren möchten, können SieAngemeldetes FS. SehenIst es möglich herauszufinden, welches Programm oder Skript eine bestimmte Datei erstellt hat?für ein Anwendungsbeispiel. Protokollieren Sie nicht das Verzeichnis, in das die Protokolle geschrieben werden!

Ein weit verbreiteterer Protokollierungsmechanismus ist LinuxAudit-Subsystem. Es läuft als root. SieheIst es möglich herauszufinden, welches Programm oder Skript eine bestimmte Datei erstellt hat?für Konfigurationsanweisungen und ein Anwendungsbeispiel. Protokollieren Sie nicht das Verzeichnis, in das die Protokolle geschrieben werden!

verwandte Informationen