use*_*569 2 linux backup incremental-backup
即,我需要轮换备份文件夹。我有许多机器按计划将 rsync 同步到单个备份机器。尽管我安排在深夜开始备份,并在第二天早上晚些时候安排文件夹轮换(使文件夹 day0 变为 day1,从最旧的开始)(例如,提供 10 个小时来完成备份) ,我希望能够在允许轮换开始之前确保所有备份都已完成,而不是做出假设(因为,如果我在备份进行时轮换文件夹,我的备份将不准确)。
这对于一台机器来说是微不足道的,但对于几台机器来说,我希望有人知道最好的方法......我可以想到一些但宁愿不必在运行系统上“实验”:
让每个备份创建一个完成标记,并在特定时间后每隔几分钟运行一次轮换脚本,检查它是否还没有成功运行,并且所有标记都是最新的(比上次旋转脚本标记旧)?
让每个备份 mv 之前的 rsync 到一个正在进行的文件夹,rsync,然后 mv 回到 day0,这样如果没有完成,轮换就跳过那个备份?
只是忍受可能不准确的备份?
我可能会向中央服务器写入一个包含日期和主机名的完成文件;你可以用这个:
#!/bin/bash
# when each backup completes, write a completion file:
ssh user@central-server "touch /path/to/completion-files/$HOST-$(date +%F).complete"
Run Code Online (Sandbox Code Playgroud)
在中央服务器上:
#!/bin/bash
# on the central server, run this before attempting folder rotation
for h in (list of hosts); do
if [[ -e "/path/to/completion-files/$h-$(date +%F)" ]];
then # do your thing
fi
done
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
267 次 |
| 最近记录: |