进程运行时 rsync 快照备份

进程运行时 rsync 快照备份

我有一个想要备份的目录。但是,一个进程不断向该目录中的文件写入数据,我无法关闭该进程,然后执行备份并重新启动该进程。备份必须在该进程运行时进行。我如何使用 rsync 命令行标志/选项来备份此目录的快照而不丢失太多数据?rsync 有太多选项,我不知道哪些组合可以用于此目的。

谢谢

答案1

据我所知,rsync 本身无法做到这一点。

将系统切换为使用 LVM/ZFS/btrfs 或其他具有快照的系统,挂载快照,然后 rsync.然后删除快照。

例如,使用 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 ...
# e.g. rsync /mnt/temp/srv/my/path remote:/srv/backups/$( date -I )
umount /dev/my_vg/backup
lvremove my_vg/backup

在 VM 中,这最容易在 VM 本身之外发生,并且是特定于供应商的 - 您需要查看您所使用的任何 VM 环境。

相关内容