Syncthing介绍与入门

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 用于服务发现

参考:Syncthing - P2P文件同步工具

3 Q&A

Q:服务启动失败,出现报错Panic: leveldb/table: corruption on data-block A:数据库索引文件损坏,进入安装目录找到对应的data/syncthing/index-xxx.db文件夹。删除此文件夹后重新启动syncthing服务,索引文件将自动重建(文件过多时会比较耗时)

往年同期文章