Syncthing是一款开源免费跨平台的文件同步工具,是基于P2P技术实现设备间的文件同步,所以它的同步是去中心化的,即你并不需要一个服务器,故不需要担心这个中心的服务器给你带来的种种限制,而且类似于torrent协议,参与同步的设备越多,同步的速度越快。针对隐私问题,Syncthing软件只会将数据存储于个人信任的设备上,不会存储到服务器上。设备之间的通信均通过TLS进行,Syncthing还使用了完全正向保密技术来进一步保障你的数据安全。对于处于不同局域网之中的设备之间的文件同步,Syncthing也提供了支持。

项目地址:https://syncthing.net/

1、安装

1.1 Windows安装

下载对应的版本包,解压后即可运行。下图中的syncthing

开源免费跨平台数据同步工具-Syncthing-LMLPHP

开源免费跨平台数据同步工具-Syncthing-LMLPHP

1.2 Linux安装

# wget https://github.com/syncthing/syncthing/releases/download/v1.26.1/syncthing-linux-amd64-v1.26.1.tar.gz

# tar zxvf syncthing-linux-amd64-v1.26.1.tar.gz

# cp syncthing-linux-amd64-v1.26.1/syncthing /usr/local/bin/

# rm -rf syncthing-linux-amd64-v1.26.1

# vi .config/syncthing/config.xml

修改监听地址

<gui enabled="true" tls="true" debugging="false" sendBasicAuthPrompt="false">

        <address>0.0.0.0:8384</address>

# vi /etc/systemd/system/syncthing.service

[Unit]

Description=Syncthing – Open Source Continuous File Synchronization

After=network.target

[Service]

User=root

ExecStart=/usr/local/bin/syncthing -no-restart -logflags=0

Restart=on-failure

SuccessExitStatus=3 4

RestartForceExitStatus=3 4

ProtectSystem=full

PrivateTmp=true

SystemCallArchitectures=native

MemoryDenyWriteExecute=true

NoNewPrivileges=true

[Install]

WantedBy=default.target

启动服务,并查看服务状态。

# systemctl daemon-reload

# systemctl start syncthing.service

# systemctl status syncthing.service

2、配置同步

2.1添加同步设备

访问http:\\127.0.0.1:8384,点击当前页面中的【添加远程设备】

开源免费跨平台数据同步工具-Syncthing-LMLPHP

设备ID在导航栏中的【操作】中【显示ID】中。

开源免费跨平台数据同步工具-Syncthing-LMLPHP

2.2添加同步文件夹选项设置

当前页面中点击【添加文件夹】

开源免费跨平台数据同步工具-Syncthing-LMLPHP

填写相关的【文件夹路径】、【文件夹ID】等,是否共享及版本控制

开源免费跨平台数据同步工具-Syncthing-LMLPHP

开源免费跨平台数据同步工具-Syncthing-LMLPHP

配置完成后,如下显示同步完成。

开源免费跨平台数据同步工具-Syncthing-LMLPHP

配置版本详见版本控制:开源免费跨平台数据同步工具-Syncthing备份版本控制-CSDN博客

2.3测试同步效果

增加同步文件夹内容或者修改已同步的文件内容,测试是否同步。

11-30 04:46