Sauvegarde instantanée rsync lorsque le process est en cours

J'ai un directory que je souhaite sauvegarder. Cependant, un process écrit constamment sur les files dans ce directory et je ne peux pas fermer ce process, faire la sauvegarde et redémarrer le process. La sauvegarde doit être effectuée lorsque ce process est en cours d'exécution. Comment puis-je utiliser les drapeaux / options de command line rsync pour sauvegarder un instantané de ce directory sans perdre beaucoup de données? Il existe tellement d'options pour rsync que je suis confus, les combinaisons pouvant être utilisées à cette fin.

Merci

AFAICT rsync ne peut pas le faire.

Activez le système pour utiliser LVM / ZFS / btrfs / autre chose avec des instantanés, montez l'instantané et rsync. Ensuite, retirez l'instantané.

Par exemple, avec LVM :

# 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 ... # eg rsync /mnt/temp/srv/my/path remote:/srv/backups/$( date -I ) umount /dev/my_vg/backup lvremove my_vg/backup 

Dans une machine virtuelle, cela se fait le plus facilement en dehors de la VM elle-même et est spécifique au fournisseur, vous devriez regarder cela pour n'importe quel environnement VM que vous utilisez.