Linux Verzeichnisse auf Änderungen überwachen

Es kann vorkommen, dass man ein Linux Verzeichnis oder ein MAC Verzeichnis auf Änderungen überwachen möchte z.B. wenn Dateien gelöscht oder neue Dateien angelegt werden. Eine mit einer automatische Benachrichtigung per E-Mail bleibt der Admin bei Änderungen auf dem Laufenden.

Es kann vorkommen, dass man ein Linux Verzeichnis oder ein MAC Verzeichnis auf Änderungen überwachen möchte z.B. wenn Dateien gelöscht oder neue Dateien angelegt werden. Eine mit einer automatische Benachrichtigung per E-Mail bleibt der Admin bei Änderungen auf dem Laufenden.

Nicht immer sind professionelle Tools wie z.B Aide nötig, um diese Aufgabe zu erledigen.
Hier ein kleines Linux Shell Script dass diese Aufgabe übernehmen kann.

Der zu überwachende Pfad steht in der 2. Zeile in der Variable $PFAD. In unserem Beispiel zeigt auf /htdocs/.
Die E-Mailadresse des zu benachrichtigenden Administrators oder der Verteilerliste steht in der Variable $EMAIL in Zeile drei. Ändern Sie diese Variablen auf Ihre Bedürfnisse ab.

#!/bin/bash
PFAD=/htdocs/
EMAIL=ueberwachung@it-support-ulm.de
find $PFAD -name "*" > /tmp/verzeichnis-version1
diff /tmp/verzeichnis-version1 /tmp/verzeichnis-version2 > /tmp/verzeichnis-aenderungen
if [ $? = "1" ]; then
cat /tmp/verzeichnis-aenderungen | mail -s "Aenderungen im HTDOCS Verzeichnis" -v $EMAIL
fi
mv /tmp/verzeichnis-version1 /tmp/verzeichnis-version2

Hinweis: Da die Datei /tmp/verzeichnis-version2 beim ersten Aufruf noch nicht vorhanden ist, muss das Script zwei mal gestartet werden, bevor es richtig funktionieren kann. Weiterhin sollte der Benutzer unter dem das Script ausgeführt wird, die entsprechenden Dateiberechtigungen haben, um auch alle Verzeichnisse innerhalb des zu überwachenden Verzeichnisses durchgehen zu können.

Wenn Änderungen seit der letzten Überprüfung festgestellt wurden, enthält die zugestellte E-Mail eine Liste der gelöschten oder neu angelegten Dateien im Textteil der E-Mail.

Die spitze Klammer gibt an, das Dateien gelöscht wurden (Bsp: < /htdocs/test.txt) die spitze Klammer nach rechts gibt an, dass neue Dateien hinzugekommen sind: (Bsp: > /htdocs/text.txt).

Um dieses Script automatisiert und kontinuierlich laufen zu lassen, genügt es, dieses in den Cron Deamon einzutragen.

Hinweis: Dieses Script kann keine Änderungen an den Dateien selbst erkennen. Wenn ebenfalls der Inhalt der Datei überwacht werden sollte, empfiehlt sich der Einsatz von professionellen Tools wie z.B. Aide.