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.