Syncthing-P2P文件同步工具学习
简介
开源的文件同步工具,基于P2P技术实现设备间的文件同步
特点:1.去中心化(解释:即不需要服务器)
2.类似于torrent协议(解释:采用高效的软件分发系统和点对点技术共享大体积文件(如一部电影或电视节目),并使每个用户像网络重新分配结点那样提供上传服务。
简单理解为:一般流程是用户发起下载请求后,由服务器提供下载服务,而torrent协议是用户发起下载请求后,分配器或者文件持有者(其他用户,可以是多个)发送给所需要的的用户,再由这个用户转发给其他用户,多个用户间相互转发自己所持有的文件部分,直到所有用户下载完成。 所以,参与同步的设备越多,同步速度越快)
3.隐私问题:该软件只将数据存储于个人信任的设备而不是服务器,而且使用了完全正向加密技术(解释:要求一个密钥只能访问由他所保护的数据,用来产生密钥的元素一次一换,不能再产生其他的密钥,所以一个密钥被破解并不影响其他密钥的安全性)
4.支持平台:windows,macos,android,linux,freebsd,solaris
windows安装
准备:
-
安装包下载地址:syncthing下载(下载过慢可以换浏览器下载试试);
-
下载后解压直接安装
-
安装成功后会直接进入浏览器操作页面,提示设置用户名和密码
设置设备名称等 -
设置共享文件夹
-
添加远程设备(l另一台用于测试的设备,顺序和这个类似)
需要用到设备id
-
连接成功后会提示文件共享请求,确认即可;
-
syncthing默认是共享文件夹内的所有内容的,如果要忽略某一部分则需要在共享文件夹内新建一个.stignore文件用于写入忽略文件的规则;
-
具体规则:点击文件夹列表中要共享的文件夹点击选项;
-
可以设置只能A设备修改文件而B设备不能修改
其他
- syncthing发现服务器的使用
特点:可跨平台
作用:当处于不同局域网的两台设备之间同步时,需要通过发现服务器协助实现,否则两台设备无法发现对方设备。
搭建:syncthing默认使用官方提供的全球发现服务器集群,当然也可以自己搭建一个,然后syncthing设置使用这台服务器 - 中继服务器的使用
当两台设备无法直接相联的时候,Syncthing可以通过中继服务器进行数据的传输。目前有一批默认的公共中继服务器可供使用,如果你想自己搭建,也是可以的。当然中继传输的速度是不如直连 - 文件同步冲突
假设A,B设备共享文件,A设备对文件修改,B设备也对同一文件进行了修改(发生于A同步之前),就会出现文件冲突,syncthing对文件冲突的解决方法时两个文件都会保留,但修改更晚的文件会根据特定规则重新命名(命名规则:<文件名>.sync-conflict-<日期>-<时间>-<修改设备的ID>.<文件扩展名>),具体保留哪个需要用户自行决定
linux安装
linux vps安装配置
- 简介:
Virtual Private Server 虚拟专用服务器,是一个运行在linux上的虚拟服务器
安装网上一堆,这里略过
linux vps内安装syncthing
转载自数据同步神器
安装流程按这位大佬的即可,相关配置文中都有提到,
文中也有提到启动脚本解决方案
linux这边主要是懒得搭建环境,所以没实践
结束