数据库实时同步工具(Syncthing:免费开源的跨平台文件实时同步工具)

数据库实时同步工具(Syncthing:免费开源的跨平台文件实时同步工具)
Syncthing:免费开源的跨平台文件实时同步工具

Syncthing 深度实践指南:构建属于你的私有同步网络。

我试了快半年 Syncthing,不是下载完就扔一边,是天天用——PC、手机、家里那台旧笔记本,全靠它传文件。没开会员,没交年费,也没把照片文档发到别人服务器上。它不声不响,但每次我改一个文档,另一台设备几秒后就更新好了。

以前总觉得“同步”就该是百度网盘、iCloud 那样:先上传,再等它存好,再从另一端下。可 Syncthing 不走这路。它让我的电脑和手机直接“握手”,像两个人面对面递文件,中间没第三者盯着看。它不存你文件,不记你名字,连你设备型号都不往上发。配对时输的不是账号密码,是一串56位的设备ID,像一串乱码,但只有你和对方都点“同意”,连接才通。

它用的是 TLS 1.3,和银行网页用的一样加密方式。文件传的时候是块级比对,改了一个字,就只传那一小块,不是整个重发。手机端我设成“只接收”,删自己电脑上的文件,手机不会跟着删;反过来也一样。这个功能不显眼,但真救过我两次——上次误清空了项目文件夹,手机里还留着三天前的版本。

家里那台老 NAS 我让它一直开着,当成一个“常驻节点”。但得小心:它不是服务器,不会替你做任何决定。我关掉了全球发现,只让它在局域网里找设备;中继功能也关了,除非真连不上,否则绝不走第三方线路。跨公网用的时候,是我和同事各自把对方的设备ID手动填进设置里,像交换微信二维码,但比微信多一步——双方都得点确认,少一次都不行。

Windows 上我用 SyncTrayzor,托盘里点一点就能看状态,但它干的只是“叫出网页界面”,所有真正改配置的地方,还是在 http://127.0.0.1:8384 那个网页里。Mac 上用 syncthing-macos,菜单栏点开就是开关,可你看它生成的 config.xml 文件,和命令行跑出来的完全一样。iOS 上装 Synctrain,它根本不像个“同步App”,倒像个文件选择器——选完路径,同步动作是后台 Syncthing Core 自己干的,App 睡着了也不影响。

我关掉了 Web 界面的远程访问,只允许本地打开;UPnP 也关了,怕它自己去找路由器开门;日志只留 warning 级别,不然满屏全是路径名,看着烦。局域网里把压缩关了,省得CPU白忙;公网连的时候,我把下载并发数压到2,扫描间隔拉到5分钟,不然老连老断,手机电量掉得快。

它不能像 Git 那样给你分分支、合代码;也不能像腾讯文档那样,两人同时改一页 Word 还不打架。它就是老老实实比对文件哈希值,一致就跳过,不一致就传差的那块。你删了它不拦,你改了它不问,它只管“让两边看起来一样”。所以我在所有文件夹都开了“版本保留”,最少存3份,删了还能找回来。

有人问我为什么不用 Resilio Sync。我试过,它免费版限设备数,而且中继逻辑不透明。Syncthing 所有协议文档全公开,MPL-2.0 许可证,代码在 GitHub 上,谁都能看。我不懂 Go 语言,但我搜过 issue,看懂了它怎么处理断网重连,怎么选块大小,怎么防重复扫描。它不教你怎么用,但你愿意查,它就给你答案。

数据库实时同步工具(Syncthing:免费开源的跨平台文件实时同步工具)

我用 Docker 跑过一次,挂载 config 和 sync 目录,都加了 ro/rw 标签,没加 --privileged。Linux 上用 systemd 跑,加了重启限制,怕它崩了无限拉起。Windows 服务是用 sc create 注册的,不是靠开机自启那种,用户不登录它也转。这些不是“高级玩法”,是装完第二天就该干的事。

它不提醒你“同步完成”,也不弹窗告诉你“新版本来了”。你打开网页界面,绿色小圆点亮着,文件时间戳对得上,就完了。没有云存储空间百分比,没有会员等级提示,没有“加速通道”广告。

我把它当网络里的一根网线,而不是一个App。

它不是工具,是规则。
不是服务,是协议。
不是代替你思考,是让你能自己定规矩。

用久了,反而不太注意它存在。
它就在那儿。

文章版权声明:除非注明,否则均为边学边练网络文章,版权归原作者所有

相关阅读

最新文章

热门文章

本栏目文章