Mac 上的 Rsync(3.1.2 或更早版本)似乎无法正确更新符号链接。
当我从客户端“推送”到服务器时,它会自动覆盖服务器的符号链接,即使它比较旧。
例如 :
serverA 具有链接 MASTER->myFile_v10
clientB 具有较旧的链接 MASTER->myFile_v03
当我推送到 serverA 时,最新的链接被覆盖,留下旧版本:
serverA 具有链接 MASTER->myFile_v03
clientB 具有较旧的链接 MASTER->myFile_v03
我已经尝试过 --update 和我能想象到的链接参数的所有变体。
MASTER 链接和基础文件 myFile_v10 的时间戳均早于 myFile_v03。
答案1
rsync
通常不会尝试保留最新数据。它只是一种替代方案cp
,scp
可以避免传输本地数据的相同副本。您可以使用它--update
来保留具有最新修改标记的文件,但它不适用于目录和符号链接。
解决问题的最简单方法是确保两台计算机中需要同步的数据相同。任何不同的东西都应该放在不同的子树中。因此,在您的情况下,只需MASTER
链接到您正在同步的树外部的中间符号链接,并且该链接在每台计算机中都可以不同。