Tengo un directorio del que deseo hacer una copia de seguridad. Sin embargo, un proceso escribe constantemente en archivos en ese directorio y no puedo cerrar este proceso, hacer la copia de seguridad y reiniciar el proceso. La copia de seguridad debe realizarse cuando este proceso se esté ejecutando. ¿Cómo puedo usar los indicadores/opciones de la línea de comando rsync para hacer una copia de seguridad de una instantánea de este directorio sin perder muchos datos? Hay tantas opciones para rsync que no estoy seguro de qué combinaciones se pueden usar para este propósito.
gracias
Respuesta1
AFAICT rsync por sí solo no puede hacer esto.
Cambie el sistema para usar LVM/ZFS/btrfs/algo más con instantáneas, monte la instantánea y rsynceso. Luego elimine la instantánea.
# Allow 1GB of changes to occur while the rsync occurs
lvcreate --snapshot my_vg/my_lv --size 1GB --name backup
mount /dev/my_vg/backup /mnt/temp
# ... rsync goes here ...
# e.g. rsync /mnt/temp/srv/my/path remote:/srv/backups/$( date -I )
umount /dev/my_vg/backup
lvremove my_vg/backup
En una máquina virtual, esto ocurre más fácilmente fuera de la propia máquina virtual y es específico del proveedor; deberá verificarlo para cualquier entorno de máquina virtual que esté utilizando.