In diesem Artikel erfährst du wie man Dateien unter Linux so überwachen kann und z.B. eine Datei automatisch gelöscht wird sobald sie erstellt wird. Damit schafft man sich extra Sicherheit wenn jemand versucht über unsichere Scripte irgendwelche Dateien auf unseren Server zu laden.
Das Tool welches wir brauchen nennt sich inotify.
Ich persönlich verwende Debian, es wird einfach über diesen Befehl installiert:
apt-get inotify-tools
Dieses Paket installiert zwei tools:
- inotifywait
- inotifywatch
Als Beispiel soll eine Datei entfernt werden sobald sie erstellt wird. Man baut sich ein shell script und speichert es zB als ninja.sh
#!/bin/sh
while true
do
inotifywait –format ‘%w%f’ -r -e create /PFAD | while read FILE
do
rm $FILE;
done
done
In dem Beispiel oben muss man noch den /PFAD anpassen den man überwachen will. Die Option -r ist “rekursiv” und überwacht auch unterordner, wer die rekursive Option nicht braucht, kann auf sie verzichten.
inotifywait überwacht in dem Beispiel den Ordner /PFAD und sobald eine Datei erstellt wurde (-e create), wird der Pfad und Datei (%w%f) an die Variable FILE übergeben. Diese Variable wird dann von rm verwendet um die Datei zu löschen.
Das ganze ist in einer Schleife gepackt weil notify sich sonst nach dem Trigger automatisch beendet.
Um ninja.sh zu starten muss man noch es ausführbar machen:
chmod 777 ninja.sh
und gestartet wird es einfach mit:
./ninja.sh
beenden müsst ihr es von hand, einfach nach der PID von ninja.sh über “ps ax” suchen.
Mit inotifywait kann man noch viele andere Dinge machen. Hier sind noch mehr gute Beispiele:
http://wiki.ubuntuusers.de/inotify
Suche:
- linux dateiüberwachung
- Dateiüberwachung Linux
- linux bash dateitrigger
- Linux datei trigger
- Linux datei trigger inotify
- linux dateien die sich automatisch löschen
- linux löschen bei größe
- script automatisch daten löschen auf windows Server
- wie sh datei löschen linux?
No related posts.