需求就是有一个文件夹需要在两台电脑同步, 但是不需要实时同步, 所以想通过 rsync 进行同步, 但是 rsync 似乎需要其中一台电脑必须开启 rsync server

rsync over ssh, 配好.ssh/confg

rsync + cron job ?

现在还没有解决两台电脑建立连接的问题

两台电脑都没有公网 ip, 所以才想通过中间服务器进行 rsync 同步, 不知道 rsync 有没有这个能力, 或者其他工具可以实现

zerotier

syncthing

tailscale

装个 zerotier 两台机器直接就相当于内网了, 随便折腾

配置 ssh 反向代理,让两台个人电脑可以通过中间服务器 ssh 连接,然后就可以随意的 rsync 或者 scp 了

楼主看看 croc?

frp

或者可以试试 Resilio Sync

可以用 croc

如果中间服务器跟这两台电脑都可以 ssh 的话,可以试试一楼说的 rsync over ssh ,需要配置 ssh jump host ,可以参考这个 wiki.gentoo.org/wiki/SSH_jump_host
如果都可以访问互联网的话,也可以试试楼下提到的 tailscale 或者 zerotier ,在两台电脑间建立局域网

#4
国内正经网络都有 ipv6 了
直接 ipv6 对着怼

syncthing

两台电脑在一起的话,可以直接一根网线两头插两台电脑,手动配个 ip 网关就能通信了。
两台电脑不在一起的话,过公网,你首先就得要使得两台电脑能够互相访问通信,ngrok 之类的,反正是要有一台电脑开 server 的,不管是 rsync server 还是楼上说的走 ssh server ,总之是要有个端口监听另一边来访问的。

中间服务器运行 frp erver

中间服务器运行 frp server ,一台电脑运行 frp client+

试试 ssh 隧道

rclone+webdav

互联的话,先 frp 打通,其他都好说

A-B
B-C
B 装 server

转换成三台电脑同步数据呢

正如楼上很多人提到了 syncthing, 多个设备共享一个文件夹,每个设备运行一个 syncthing daemon, 然后设备之间彼此发现,有主文件夹的 share 一下,其它设备 accept 就可以保持同步了。以后无论哪个设备上的文件夹更新了,全部设备都跟着更新。

比较简单的是使用 sftp ,一个上传,一个下载。具体的上传和下载机制可以通过脚本实现