tss*_*tss 1 rsync file-transfer
我在 2 个系统之间连续执行 rsync,由于已知原因,tcp 连接被中断。在极少数情况下,整个 rsync 目标目录会被删除,并且数据会同步到其他位置。
使用的 rsync 选项是“-rpt -iP --stats --inplace”,我读到了有关 --inplace 与中断连接不一致的信息。
-rpt -iP --stats --inplace >> 失败
需要帮助提出最安全的方法,以避免在频繁连接中断的环境中出现 rsync 不一致
如果您需要以一致的方式同步整个目录,请使用:
rsync -avz \
--partial \
--partial-dir=.rsync-partial/ \
--delay-updates \
--delete \
--stats \
...
Run Code Online (Sandbox Code Playgroud)
Linux 人说--inplace:
这有几个影响:(1) 使用中的二进制文件无法更新(操作系统会阻止这种情况发生,或者尝试换入数据的二进制文件将行为异常或崩溃),(2) 文件的数据将在传输过程中的不一致状态,(3) 如果传输中断或更新失败,文件数据可能在传输后处于不一致状态
因此,--inplace不能用于一致同步。而是使用延迟更新算法,以保证仅在成功完成传输后才隐含目标目录更改。
您也可以决定使用-a代替-rpt. -aparam 相当于 -rlptgoD,这是为一致同步设置的完整参数。-vzparams 用于传输时的详细输出和压缩(减少流量)。