Es gibt ein Verzeichnis A
deren Inhalte häufig von anderen Personen geändert werden.
Ich habe ein persönliches Verzeichnis B
erstellt wo ich alle Dateien aufbewahre, die jemals in A
waren .
Derzeit führe ich nur gelegentlich rsync
aus um die zu sichernden Dateien von A
abzurufen zu B
. Allerdings befürchte ich die Möglichkeit, dass einige Dateien in A
hinzugefügt werden , und dann aus A
entfernt bevor ich die Chance bekomme, sie nach B
zu kopieren .
Was ist der beste Weg, um dies zu verhindern? Im Idealfall möchte ich, dass mein aktuelles Sicherungsskript jedes Mal ausgeführt wird, wenn der Inhalt von A
zieh dich um.
Akzeptierte Antwort:
Wenn Sie inotify-tools installiert haben, können Sie inotifywait
verwenden um eine Aktion auszulösen, wenn in eine Datei oder ein Verzeichnis geschrieben wird:
#!/bin/sh
dir1=/path/to/A/
while inotifywait -qqre modify "$dir1"; do
/run/backup/to/B
done
Wo der -qq
Schalter ist völlig still, -r
ist rekursiv (falls erforderlich) und -e
ist das zu überwachende Ereignis, in diesem Fall modify
. Von man inotifywait
:
ändern
Es wurde in eine überwachte Datei oder eine Datei in einem überwachten Verzeichnis geschrieben.