写在前面
说完了nextcloud,大家已经对于个人网盘不再陌生。但想要做到随时随地同步文件,还需要公网IP/内网穿透。
其实说到文件同步,还有一款自带内网穿透的P2P文件同步工具必须介绍一下,就是syncthing。
想象一下,你在公司/实验室编辑了一半的文件还能在家/宿舍无缝衔接编辑另一半的感觉一定很棒。
而这次的主角也不再是nas,它可以是全平台的任何设备。在一些同步场景下(后面举例)会非常好用。
Syncthing是什么
Syncthing是免费开源的文件同步工具,最重要的是基于P2P技术。
这样实现的同步是去中心化的,也就是不需要有一个中心服务器来支撑同步服务。只需要两边的设备都在线即可完成同步。
文件同步的逻辑和我们说过的坚果云很像,使用场景也类似,但是我们现在所介绍的工具都是摆脱了付费限制的,在一定程度上会有更高的自由度。而且开源对于安全性来说也很重要。
安装
进入syncthing的github项目地址,找到引导页:
Community Contributions — Syncthing v1 documentation
可以看到安装方式很多,可以在很多平台上安装。
需要什么设备同步就安装在什么设备上,比如电脑和手机或者电脑和电脑之间,都是可以的。
这里主要说一下在服务器上安装,用docker-compose。
打开我们的老朋友linuxserver.io,找到doc(要注意版本)
参数如下:
1.PUID和PGID
每次安装都说的内容,查询后填写。
2.path/to/data
设置同步文件的目录地址映射,后面也可以修改
3.端口号
保持默认就行,默认端口号为8384
设置好之后就可以部署stack了。
设置
服务器端配置
使用8384端口打开Syncthing
首先要设置一个密码
然后是最基本的添加一个共享文件夹
添加文件夹需要设置这些。
这里注意:
1.文件夹标签可以随便起,用于辨识
2.文件夹ID是共享的唯一标识
3.文件夹路径是我们已经在安装时映射的路径(当然新的路径也可以,但是在服务器上需要先映射)
这个界面就说明成功了
其他客户端配置
这里我们以windows客户端为例演示一下如何连接共享。
首先下载&双击打开SyncTrayzor。
Release Version 1.1.29 · canton7/SyncTrayzor · GitHub
界面和服务器端的没什么区别
然后需要添加远程设备(这里在服务器端添加也可以)
ID就是那个当前设备里带二维码的长长的东西,设备名自己起一个。
这时候被添加的一端会有确认消息。
确认后显示连接成功,就可以在本地创建共享文件夹了。
一定要注意这个ID要和你当时创建的想要同步的文件夹的ID一致。
再勾选共享
然后回到服务器端确认一下
同步成功!
使用场景
对于你创建的共享文件夹来说,Syncthing在连接确认后总会把两个文件夹的内容统一,始终保持一致。对于一些需要办公文件多地处理的场景非常友好。
和坚果云类似,将文件放入共享文件夹,那么其余和这个文件夹连接的设备都可以得到一份复制品。
当然,这个同步时间要根据你的网络环境来判断。局域网之间肯定是最快的,外网就需要用到它自带的内网穿透。
基本用法:
1.你可以直接将手机与电脑同步,也可以电脑与电脑之间同步。
2.但如果你想在家共享你在其他地方的文件,那么就意味着两边的设备都要开启才能连接成功。(P2P的原因)
3.可以用服务器作为中介,两两连接,这样左右两边的设备就不需要随时保持开启状态了。(当然服务器做好公网IP/内网穿透要更舒服)
4.使用一台不常用的电脑作为中介,常开来保证同步。
其他技巧
更改具体文件要求
可以在设置里更改共享文件夹的具体要求
忽略模式
可筛选不需要同步的文件夹(通配符的具体使用方法见文档)
版本控制
和同步云盘一样,Syncthing也有版本控制功能。
这里的版本控制可选择性较高,可以选择保留几个版本或者清除时间间隔等等。
冲突管理
当你在一台设备上修改的文件还没来得及同步到另一台设备时,文件在另一台设备上也被修改了,那么就会导致文件冲突。
这时Syncthing会给你新建一个冲突文档。
你可以选择保留这其中的任何一个版本。
Summary
Syncthing可以说是在日常生活中能解决一些实际问题的同步工具。
设置不算复杂,一劳永逸,功能也简单明了,特别是用法非常直接,专为两边同步文件使用,安全可靠。
如果你平时文件同步需求量不大,又想方便快捷不用受到各种账号的干扰,那么完全可以来尝试一下。
如果觉得《用树莓派搭建全功能NAS服务器(06):自带穿透的文件同步工具》对你有帮助,请点赞、收藏,并留下你的观点哦!