用心打造
VPS知识分享网站

用 rsync 做目录镜像前,先预演目标端的删除清单

目录镜像要清理目标端多出的文件,但源路径填错就可能把该保留的目录当成多余文件。先让 rsync 列出它准备做什么,再决定是否同步。

源目录和目标目录之间的同步预演示意图

先核对挂载和方向

示例以本机两个目录为例。先检查findmnt -T /srv/source和findmnt -T /srv/mirror的结果是否符合预期。源数据盘未挂载时,同名空目录依然可能存在。不要把“目录存在”当作数据盘在线。

用正式参数预演

执行rsync -ani --delete /srv/source/ /srv/mirror/。-n不执行变更,-i列出变更项;关注标为*deleting的路径。预演必须使用与正式运行相同的方向、路径和过滤规则。换成远程端时也应先确认该端路径。

看清斜杠和排除规则

源路径末尾的斜杠表示同步目录内容;省略它可能多保留一级目录。普通排除规则也会影响接收端删除;--delete-excluded改变默认保护。不要为了清理测试文件顺手加上这个选项。

给删除数量设边界

确认目标快照可恢复后,可为正式运行评估有业务依据的--max-delete=NUM。超限会跳过后续删除,常见退出码为25,之前的删除和其他变更并不会回滚。删除上限不能替代可恢复备份。

复测目录与保留项

可在萤光云或LightNode的独立实例准备两个临时目录做演练。实际同步后再次预演,确认没有意外的待删除项,并抽查关键文件与被排除目录。有持续写入时,预演与实际结果可能不同。

FAQ

预演会创建文件吗? 不会执行同步变更。

斜杠只影响显示吗? 它影响传输目录结构。

超限能回滚吗? 不能。

排除文件是否一定安全? 取决于过滤规则以及是否启用额外删除选项。

预演后必须立即执行吗? 不必;若数据或参数变化应再预演。

温馨提示

别对唯一备份执行带删除的镜像;保留独立的历史版本。极老版本对 max-delete 的零值解释不同,不要把零值作为通用保护。

赞(0)
未经允许不得转载;国外VPS测评网 » 用 rsync 做目录镜像前,先预演目标端的删除清单
分享到