Inotify: Dateien überwachen

007-Tux Logo

Veränderungen an Dateien im Dateisystem mit inotify überwachen.

Sobald Dateien verändert werden möchte ich ein .tar.gz-Archiv zur Datensicherung erstellen, oder die veränderte Datei auf einen Server hochladen, oder auf meinem NAS eine LED anschalten.

Ich bin schon vor einigen Jahren auf dieses Problem gestoßen. Damals konnte ich nur eine Endlosschleife für die Überwachung meiner Verzeichnisse einsetzen. Die Endlosschleife gefiel meinem damaligen Provider nicht, da diese zu häufig auf die zu überwachenden Dateien Zugriff.
Damals konnte ich die Schleife einfach mit einer pause() zügeln, bin dann aber bald auf einen Cronjob gewechselt.

Auf meines eigenen NAS und meinen eigenen Servern bin ich jedoch nicht auf eine Schleife oder Cronjobs angewiesen! Mit einem Inotify Event kann ich die änderungen abpassen und die gewünschte Anktion starten.

Inotify-Events
KürzelFormat
ACCESSZugriff auf die Datei
ATTRIBMetadaten geändert
CLOSE_WRITEzum Schreiben geöffnete Datei geschlossen, sie muss nicht geändert worden sein
CLOSE_NOWRITEEine Datei wurde geschlossen nachdem sie schreibgeschützt geöffnet wurde
CREATENeue Datei angelegt
DELETEDatei gelöscht
DELETESELFÜberwachtes Verzeiuchnis gelöscht
MODIFYDatei modifiziert
MODIFYSELFÜberwachtes Verzeichnis modifiziert
MOVEDFROMDatei aus dem überwachten Verzeichnis verschoben
MOVEDTODatei in das überwachte Verzeichnis verschoben
OPENDatei geöffnet

Zur Überwachung meines WordPress Verzeichnises auf neue Dateien kann ich folgende Befehlszeile nutzen:

Im Anschluss werden alle neu erstellten Dateien im WordPressverzeichnis angezeigt. In meinem Verzeichnis vor allem viele Dateien wp-content/temp-write-test-1492771373. (Die Zahl an ende ändert sich bei jedem Aufruf)
Jedoch werden auch alle Updates, Uploads, Plugin und Theme Installationen und auch all die neuen Dateien an die ich grade nicht denke.

Um herauszufinden welche Dateien „angefasst“ werden wird nur der Parameter „-e create“ auf „-e access“ geändert:

Inotify ist unter Linux ein sehr nützliches Werkzeug, auch für die Fehleranalyse. 😉

Scan to Donate Bitcoin to der_metzger
Did you like this?
Tip der_metzger with Bitcoin