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.