我有一个 cronjob 每 2 小时运行一个包含一些 rsync 作业的脚本,用于将我的电脑同步到我的家庭服务器。大多数行看起来像这样(有些有--exclude
参数):
rsync -e ssh -a --delete --log-file={LOG_FILE} {LOCAL_DIR}/src/ {REMOTE_SERVER}:{REMOTE_DIR}/dest/"
我想在目标计算机上保存已删除/更改的文件的副本,以防我弄乱计算机中的某些内容并且在计划的 rsync 作业之前没有意识到这一点。
我尝试使用--backup
但无法让它工作。
有没有办法做我想做的事或者我应该以其他方式做?
答案1
我现在终于可以使用这个命令模板来工作了:
rsync -e ssh -a --delete --backup --backup-dir=.rsync_recycle/{TIME_STRING} --exclude=.rsync_recycle --log-file={LOG_FILE} {LOCAL_DIR}/src/ {REMOTE_SERVER}:{REMOTE_DIR}/dest/"