这篇文章介绍的是开源同步软件 Syncthing 的基础使用以及自己服务器的搭建过程

是什么

贴上 Github 地址:Syncthing

是一款可以进行同步的软件,不同于各种“云”(谷歌Sync、坚果云),这款软件没有云端服务

p2p 模式进行数据同步,不存在第三方中心,因此可以认为数据是安全的

如果两个客户端在同一个局域网,则会直接依赖于局域网进行数据传输

如果两个客户端不在同一个局域网,则会通过中继服务器进行传输,中继服务器可以用 default,全球各个地方都架设的有(用户自行架设的),但是用别人服务器的话,还是会担心一些安全问题,尽可能使用自己的服务器

简单描述下我是怎么发现的

开始使用 Logseq 的时候,我发现 Logseq 这个软件我直观的用途应该有两个:

  1. 办公时候在电脑上用
  2. 随拍、随记、读书,需要随时随地在手机上用

这样就涉及到了一个非常明显的问题:需要在 PC 端和手机端进行数据同步

考虑过几个方式:

  1. 通过 Github 做中心,PC 和手机都在使用前做拉取操作
    1. 卡在了手机端,尝试了很多软件,没有能很方便的支持的
  1. 通过云硬盘同步工具
    1. 找了几个遇到各种问题
    2. 配置麻烦
    3. 数据需要在别人的云端

后来发现了 Syncthing,简单了解了之后发现这个就是我想要的

本来以为会比较困难,没想到使用起来太简单了

怎么用

下载地址:自己直接去 Github 上下载最新版就行

想快速使用的话,就在自己家里面试试,两个手机都连上家里局域网,都安装上这个软件

  1. 添加设备
  2. 添加共享的文件夹

共享文件夹中有要共享的设备选项,勾上要共享的设备,对方手机上就会收到提示,确定了选择一个要保存到的目录

这样两个目录就能进行数据同步了

电脑端的使用

下载电脑版的之后,启动可执行文件,会打开一个命令窗口,不要关闭它

同时会在浏览器上打开 GUI 地址:127.0.0.1:8384

操作方式跟手机端是一样的

并且电脑上还会推送附近的客户端

操作举例

新增文件夹

文件夹路径,就是本地要同步的目录

共享:就是要共享的设备,因为可能会加进来很多设备

版本控制:暂没用到

忽略模式:就跟 .gitignore 类似,哪些是忽略同步的

高级里面有文件夹类型,可以选择发送与接收

基于这个有个用法:

比如我照片想做备份,那么就可以在用作备份的机器上设置为:仅接收,那么备份机器上的操作就不会同步到其他设备上

同时还会再去配置一下:“忽略删除操作”,这样的话,就可以做一个照片备份机制了

忽略删除操作配置

这个:Ignore Delete 就是,如果需要忽略删除,那么勾上就成,我这个不是备份机器,所以没有勾

Windows 的开机启动

这种同步工具按说应该是开机默认就启动的,Linux 下设置开机启动的方式就比较多了,这里主要说下 Windows

syncthing.exe 建立快捷方式

 windows + R
 shell:startup

就会打卡开机启动的目录,把快捷方式拖进去就可以了

发现/中继服务器

简单的了解了之后,就基本会用了

特别是在局域网中,同步的速度还是非常快的

可以完成一些很有用的操作,比如:

  1. 重装系统的时候,数据同步
  2. 家里两个手机之间或者手机与电脑之间想传文件时候
  3. 等等

但是大家想一下,如果不在本地局域网呢?

不在局域网的话,两个设备怎么建立关联呢

去看了文档后发现:

Syncthing 定义了”发现服务器”和“中继服务器”

Syncthing Discovery Server 和 Syncthing Relay Server

先放上文档:

发现服务器官方文档

中继服务器官方文档

简单的理解就是,发现服务器用于发现设备,中继服务器用于传输文件

当然了,虽然用到了服务器,但并不是说文件传输就是先上传到服务器上,另一个设备再从服务器上下载下来。不是这个样子的,Syncthing 只是通过中间服务器进行建立 P2P 的连接通道,实际上还是直接进行文件传输的,只不过传输中间需要经过中继服务器

参考该页面:

现有的可用中继服务器

可以看到有很多可以用的,国内也有几台

但这种呢,是网友自己搭建的,每个人的可以自己搭建,没有自己服务器的话,可以用这些,但是建议还是用自己服务器搭建的,因为这样的话是绝对安全的

搭建自己的服务器

搜了下发现有对应的 docker,本来想尝试使用 dcoker,但是整了一波忽然意识到。这个东西需要用到生成的 ID,如果用 Docker 的话,一旦重启,这个 ID 就换了,换 ID 的成本还是有点儿大的,还是决定直接放在主机上合适

由于两个服务器的安装方式一样,我就直接写在一块儿了

下载/解压安装包

wget https://github.com/syncthing/discosrv/releases/download/v1.23.4/stdiscosrv-linux-amd64-v1.23.4.tar.gz
wget https://github.com/syncthing/relaysrv/releases/download/v1.22.1/strelaysrv-linux-amd64-v1.22.1.tar.gz

tar -zxvf stdiscosrv-linux-amd64-v1.23.4.tar.gz
tar -zxvf strelaysrv-linux-amd64-v1.22.1.tar.gz

启动执行

建议放到可执行目录下

cp stdiscosrv-linux-amd64-v1.23.4/stdiscosrv /usr/bin/
cp strelaysrv-linux-amd64-v1.22.1/strelaysrv /usr/bin/

使用 nohup 启动:

touch stdiscosrv.log
touch strelaysrv.log
nohup stdiscosrv > stdiscosrv.log 2>&1 &
nohup strelaysrv > strelaysrv.log -pools="" 2>&1 &

随后看对应的日志文件中,有打印 ID,自行找到即可

注意,一定要去看日志,比如启动中继服务时候,要加上 -pools=””,不然的话会去注册到公共的池子,加上这个之后就不会了,单单是自己私有的

放开相关端口

发现服务器:8443

中继服务器:22067 22070

客户端使用地址

发现服务器:

 https://ip_address:port/?id=your_id

中继服务器地址:

relay://ip_address:port/?id=your_id

客户端配置

以 PC 端举例

上面的“协议监听地址”填的是中继服务器的地址:

tcp4://0.0.0.0:22000, relay://xxx.xxx.xxx.xxx:22067?id=your_id

也可以加上 default,中间用英文逗号分割,代表两个都用,哪个能用用哪个

下面的“全局发现服务器填的是发现服务器的地址:

https://xxx.xxx.xxx.xxx:8443/?id=your_id

同样也可以加上 default,如:

https://xxx.xxx.xxx.xxx:8443/?id=your_id,default

尾声

以上,就是 Syncthing 的使用方式,亲测非常好用

可以用来做非常多的事情


新软师兄 » Syncthing使用以及服务器搭建
50T免费网盘资源大集合【持续更中~~~~】:点击查看

dase kand pornhan.mobi xvideo desi gay pcso 2pm result today pinoytvfriends.com where i can watch bad romeo كلام فى النيك wfporn.com قصص محارم حديثة busporn porngugu.mobi indian sexx vedios sex ka video noticieroporno.com himachal pradesh sex com
nero hentai hentaitgp.com ламия хентай www.mom xxx.com alohaporn.me sahara knite mature fucking tubepatrolporn.com bhabi sex indian girl sex gotporn.mobi xnxx family strocks ang probinsyano july 20 2022 full episode youtube pilipinoteleserye.com ano ang pambansang sasakyan ng pilipinas
احلي سكس محارم pornxporn.org نيك فلاحى multi.xnxx alohaporn.net telugu sex chart سكس قصيرات arabysexy.org نيك نقاب www assames sex com umora.info desi sexy bhabi 8teenx bukaporn.com india hot sex videos