用 rsync 做镜像备份,源端删了文件,备份端还在。以为是同步失败。
原因:没加 --delete。不加这个参数,rsync 只增量复制,不同步删除。
但加了 --delete 又有新风险:源端路径写错,会把备份端清空。
我的做法:
- 用 --delete 但配合 --dry-run 先看一遍
- 备份路径用绝对路径,且脚本里加路径存在性检查
- 分两个阶段:先同步到临时目录,成功后再切换软链
还有:--delete 配合 --exclude 要注意,排除的目录不会被删,但父目录可能被删。这条踩过,备份里的 uploads 目录被清空了。
加日志:每次备份记录删除的文件列表,出问题能查。
主楼- 暂无回复
继续逛逛