如何通过 rsync 同步两台服务器的网页目录?

如何通过 rsync 同步两台服务器的网页目录?

我想知道我是否可以同步两个服务器的文件夹,例如服务器 1 插件的更新应该反映在服务器 2 上。如果我们从服务器 2 执行此操作,它应该反映在服务器 1 上。

为此我应该使用什么 rsync 命令?

我已经尝试过以下命令

r sync -avWe ssh --delete-before //public_html/ [email protected]:/home/public_html/

但它从两台服务器中删除了新添加的文件。

答案1

您不能将 rsync 与远程源和远程目标一起使用。假设两个服务器不能直接相互通信,则可以使用 ssh 通过本地计算机建立隧道。

你可以使用这个

ssh -R localhost:50000:host2:22 host1 'rsync -e "ssh -p 50000" -vuar /var/www localhost:/var/www'

/var/www 的第一个实例适用于 host1 上的源,localhost:/var/www 对应于 host2 上的目标。如果您好奇的话,-R 选项会从 host1 上的端口 50000 设置一个反向通道,该通道(通过您的本地计算机)映射到 host2 上的端口 22。从 host1 到 host2 没有直接连接。

原文来源: https://unix.stackexchange.com/questions/183504/how-to-rsync-files-between-two-remotes

相关内容