Hay un directorio A cuyos contenidos son cambiados con frecuencia por otras personas.
He creado un directorio personal B donde guardo todos los archivos que han estado en A .
Actualmente, ocasionalmente ejecuto rsync para hacer una copia de seguridad de los archivos desde A a B . Sin embargo, temo la posibilidad de que se agreguen algunos archivos en A y luego eliminado de A antes de que tenga la oportunidad de copiarlos en B .
¿Cuál es la mejor manera de evitar que esto ocurra? Idealmente, me gustaría que mi script de copia de seguridad actual se ejecute cada vez que el contenido de A cambiarse.
Respuesta aceptada:
Si tiene inotify-tools instalado, puede usar inotifywait para activar una acción si se escribe en un archivo o directorio:
#!/bin/sh
dir1=/path/to/A/
while inotifywait -qqre modify "$dir1"; do
/run/backup/to/B
done
Donde -qq el interruptor es completamente silencioso, -r es recursivo (si es necesario) y -e es el evento a monitorear, en este caso modify . De man inotifywait :
modificar
Se escribió un archivo vigilado o un archivo dentro de un directorio vigilado.