GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie überwacht man einen kompletten Verzeichnisbaum auf Änderungen in Linux?

Ich habe etwas Ähnliches mit dem inotifywait gemacht Werkzeug:

#!/bin/bash
while true; do

inotifywait -e modify,create,delete -r /path/to/your/dir && \
<some command to execute when a file event is recorded>

done

Dadurch werden rekursive Verzeichnisüberwachungen für den gesamten Baum eingerichtet und Sie können einen Befehl ausführen, wenn sich etwas ändert. Wenn Sie nur die Änderungen sehen möchten, können Sie den -m hinzufügen Flag, um es in den Überwachungsmodus zu versetzen.


Meines Wissens nach gibt es keine andere Möglichkeit, als rekursiv einen inotify zu setzen jedes Verzeichnis beobachten.

Allerdings werden Ihnen die Dateideskriptoren nicht ausgehen, weil inotify muss kein fd reservieren, um eine Datei oder ein Verzeichnis zu überwachen (sein Vorgänger, dnotify , litt unter dieser Einschränkung). inotify verwendet stattdessen "watch descriptors".

Gemäß der Dokumentation für inotifywatch beträgt das Standardlimit 8192 Überwachungsdeskriptoren, und Sie können es erhöhen, indem Sie den neuen Wert in /proc/sys/fs/inotify/max_user_watches schreiben .


$ inotifywait -m -r /path/to/your/directory

Dieser Befehl reicht aus, um das Verzeichnis rekursiv auf alle Ereignisse wie Zugriff, Öffnen, Erstellen, Löschen ...

zu überwachen
Linux
  1. Linux – Wie kombiniere ich den Baum mit der Verzeichnisgröße?

  2. Wie man ein Verzeichnis unter Linux gzippt

  3. Es wird behauptet, dass eine Datei verschwindet – So überwachen Sie eine Datei auf Löschung in Linux

  4. Wie kann ich einen Verzeichnisbaum in C++/Linux erstellen?

  5. Wie erhalte ich programmgesteuert den freien Speicherplatz für ein Verzeichnis in Linux

Wie man Hulu unter Linux anschaut

So überwachen Sie Dateiänderungen mit fswatch unter Linux

So zeigen Sie die Verzeichnisbaumstruktur in Linux an

So legen Sie in Linux für jeden Monitor ein anderes Hintergrundbild fest

So kopieren Sie das Verzeichnis unter Linux

Linux-Verzeichnisbefehle:Eine vollständige Anleitung