1 介绍
Syncthing是一款开源免费跨平台的文件同步工具,是基于P2P技术实现设备间的文件同步,所以它的同步是去中心化的,即你并不需要一个服务器,故不需要担心这个中心的服务器给你带来的种种限制,而且类似于torrent协议,参与同步的设备越多,同步的速度越快。
针对隐私问题,Syncthing软件只会将数据存储于个人信任的设备上,不会存储到服务器上。设备之间的通信均通过TLS进行,Syncthing还使用了完全正向保密技术来进一步保障你的数据安全。对于处于不同局域网之中的设备之间的文件同步,Syncthing也提供了支持。
2 安装
2.1 Windows安装
Windows系统推荐安装SyncTrayzor,拥有图形用户界面(如下图)并可以最小化到托盘后台运行,并可以设置开机启动(默认即是随开机自动启动)。
2.2 Mac安装
macOS版本默认也是开机自启动并后台运行,但只能通过浏览器访问界面
2.3 Docker安装
docker pull syncthing/syncthing
docker run -p 8384:8384 -p 22000:22000/tcp -p 22000:22000/udp \
-v /data/share:/wherever/st-sync \
--hostname=my-syncthing \
syncthing/syncthing:latest
注意设备间需要开放端口:
- TCP:22000 用于同步文件
- UDP:21027 用于服务发现
3 Q&A
Q:服务启动失败,出现报错Panic: leveldb/table: corruption on data-block
A:数据库索引文件损坏,进入安装目录找到对应的data/syncthing/index-xxx.db
文件夹。删除此文件夹后重新启动syncthing服务,索引文件将自动重建(文件过多时会比较耗时)