Syncthing:一款开源的文件同步工具,去中心化和点对点加密传输,支持多平台,允许用户在多个设备之间安全、灵活地同步和共享文件,无需依赖第三方云服务,特别适合高安全性和自主控制的文件同步场景。
🚀功能特性
- 去中心化:不依赖于集中式服务器或云存储服务。采用点对点(P2P)技术,在设备之间直接进行通信和同步文件,无需经过第三方服务器;
- 跨平台支持:支持多种操作系统,Windows、macOS、Linux、Android;
灵活性:用户可以灵活地配置文件夹同步规则,包括排除特定文件或文件夹、设定带宽限制等; - 界面管理:提供了一个易于使用的Web界面,用户可以通过浏览器直接管理和监控其设备和同步任务;
- 支持版本控制:支持版本控制功能,用户可以恢复到文件的指定版本,为同步的重要文件提供了安全备份保障。
🛠 特别说明
Syncthing项目也说明了,如果文件同步的效率不高或者无法建立连接时,可以自建Syncthing发现服务器(discovery-server)和中继服务器(relay-server)。
发现服务器:用于发现互联网上的设备;
中继服务器:当端点设备建立数据连接失败时,会利用中继服务器进行同步建立(但是同步效果就类似网盘模式了),所以如果需要最好是自行建立,不用共享的中继服务器!
Syncthing 安装
docker安装
docker pull syncthing/syncthing
$ docker run -p 8384:8384 -p 22000:22000/tcp -p 22000:22000/udp -p 21027:21027/udp \
-v /wherever/st-sync:/var/syncthing \
--hostname=my-syncthing \
syncthing/syncthing:latest
docker-compose安装
---
version: "3"
services:
syncthing:
image: syncthing/syncthing
container_name: syncthing
hostname: my-syncthing
environment:
- PUID=1000
- PGID=1000
volumes:
- /wherever/st-sync:/var/syncthing
ports:
- 8384:8384 # Web UI
- 22000:22000/tcp # TCP file transfers
- 22000:22000/udp # QUIC file transfers
- 21027:21027/udp # Receive local discovery broadcasts
restart: unless-stopped
安装包安装
#Github release下载地址
https://github.com/syncthing/syncthing/releases
#官网下载地址
https://syncthing.net/downloads/
手机端APP安装
目前Syncthing支持Android系统,下载地址:
https://github.com/syncthing/syncthing-android/releases
Syncthing 使用
本文主要操作将手机微信照片同步至PC。
一、个人PC安装Syncthing
我个人电脑是Windows10操作系统,所以直接下载Windows安装包,下载完成后解压,运行exe文件即可:
运行后,会自动打开默认浏览器,访问页面:
二、手机安装Syncthing APP
我手机是华为手机,所以直接下载安卓安装包,下载完成后安装即可:
默认加载所有照片文件夹,因为演示,所以这边需要选择微信图片。我们先在编辑页面,删除此文件夹
三、配置双向同步
在手机端操作,添加远程设备
添加电脑设备ID,ID可以电脑页面右上角【操作】-【显示设备ID】获取
手机扫描二维码,快速添加。稍等30秒左右,电脑端页面弹出添加设备确保选项,选择【添加设备】
电脑端添加完成后,页面显示设备信息
手机端,添加需要备份同步的微信图片目录。选择同步对象为【我的电脑】
电脑端稍等片刻,会接收到同步信息提示,点击添加:
输入电脑端需要存放的文件夹目录
至此,配置完成,等待数据同步即可,可以在电脑文件夹中确认同步的微信图片
总的来说,Syncthing是一个安全、灵活、功能强大且简单易用的点对点文件同步工具,特别适合在不依赖第三方云服务的情况下,在多个设备之间同步和备份场景。如果你也感兴趣的话,那么不妨自己动手实际下,给文件多一层安全备份吧!