백업하고 싶은 디렉토리가 있습니다. 그러나 프로세스가 해당 디렉터리의 파일에 지속적으로 쓰고 있으므로 이 프로세스를 종료하고 백업을 수행하고 프로세스를 다시 시작할 수 없습니다. 이 프로세스가 실행 중일 때 백업을 수행해야 합니다. rsync 명령줄 플래그/옵션을 사용하여 많은 데이터 손실 없이 이 디렉터리의 스냅샷을 백업하려면 어떻게 해야 합니까? rsync에 대한 옵션이 너무 많아서 이 목적에 어떤 조합을 사용할 수 있는지 혼란스럽습니다.
감사해요
답변1
AFAICT rsync 자체로는 이 작업을 수행할 수 없습니다.
LVM/ZFS/btrfs/스냅샷과 함께 다른 것을 사용하도록 시스템을 전환하고, 스냅샷을 마운트하고, rsync를 수행합니다.저것. 그런 다음 스냅샷을 제거합니다.
# 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 환경에 관계없이 이를 살펴봐야 합니다.