syncthing文件同步软件
这是一款可以满足办公、文件共享、团队协作、家庭存储等文件同步需求的开源软件,不依赖中心服务器,完全由自己掌握数据,安全可靠。
Syncthing是免费且开源的,而且跨平台支持windows、mac、linux、android等主流平台,除了PC、手机以外,在部分路由器、树莓派等硬件上都能轻松运行,听说还支持NAS。
阿里云限量代金券 | 此广告位出租25元/月 |
下载地址:https://github.com/syncthing/syncthing/releases/
比较可惜的是,目前syncthing手机端只支持安卓,并未发布ios版,由一个第三方做的相对简陋的ios app[fsync]可以暂时顶替,不过我在美区商店搜到需要支付2美金才能下载。
大多数同类的网盘软件都需要较为麻烦复杂的安装搭建服务器过程,而 Syncthing 在使用上简直超级简单方便!以 Windows 版本为例,Syncthing 本身就是一款绿色免安装的软件,直接下载解压打开 syncthing.exe 即可运行,启动后通过浏览器访问:http://127.0.0.1:8384 进入 Syncthing 的控制面板
官方最新windows图形界面增强版的syncthing客户端SyncTrayzor下载https://syncthing.net/downloads/
图形版项目地址:https://github.com/canton7/SyncTrayzor
64位:https://github.com/canton7/SyncTrayzor/releases/download/v1.1.29/SyncTrayzorPortable-x64.zip
32位:https://github.com/canton7/SyncTrayzor/releases/download/v1.1.29/SyncTrayzorPortable-x86.zip
不过图形版内置的内核文件可能不是最新的,当然旧版的内核不是不能用,你也可以下载最新版内核文件替换(据说图形版界面只是集成了一个web浏览器框架以及一些接口制作而成的)
最新正式版下载
64位:https://github.com/syncthing/syncthing/releases/download/v1.22.0/syncthing-windows-amd64-v1.22.0.zip
32位:https://github.com/syncthing/syncthing/releases/download/v1.22.0/syncthing-windows-386-v1.22.0.zip
更新内核的方法实际上就是将syncthing.exe替换成压缩包里最新版的syncthing.exe
安卓版:https://github.com/syncthing/syncthing-android/releases
如果安卓版在4G环境下无法同步,则需要将内网电脑上的22000端口映射到路由器22000端口上,同时路由器上登录一个动态域名服务,在安卓端编辑设备添加自己的动态域名后就可以同步了
关于同步速度:两边都没有开放22000端口也可以实现同步,而且速度能达到上传带宽极限,想知道这是靠什么原理实现的?交叉同步你需要添加一堆远程节点,节点越多同步速度越快,但是这样会占用每个节点的硬盘空间,syncthing也支持单独部署中继节点,类似反向代理转发,比直接在公网ip部署完整syncthing节点更节省硬盘空间。相关链接:https://docs.syncthing.net/users/relaying.html
是靠nat打洞吗?那是因为有一边的路由器开启了UPnP或者开启了Nat fullcone,其实就是打洞原理。
windows版简单使用教程
以 Windows 为例,简单记录一下 Syncthing 数据同步神器使用方法,软件版本:syncthing-windows-amd64-v1.18.5。
解压,打开 syncthing.exe,一般会自动打开 http://127.0.0.1:8384/ syncthing 网页管理页面,首次登录会提示是否允许匿名使用报告
建议给 GUI 管理页面加个用户名和密码:
syncthing 默认开启本地发现和中继
关于启用中继是什么意思的解释:比如你在楼顶对楼下一个人喊话,太高了他听不到,这时候中间一个人帮你传话,这个人就是 “中继”,如果你只是局域网使用只需要开启本地发现,另外三个选项不用勾。
关于安全问题:即便知道对方识别码,对方识别码可以动态改的,识别码暴露没事,新设备加入同步是需要你主动同意的,除非不仅知道deviceId,还可以控制对方的Sync,sync在安全这块处理是很严格的
如果跨文件系统使用 syncthing,建议文件夹「选项」中开「启忽略文件权限」
添加远程设备
远程设备文件夹共享给新设备(同样建议文件夹「选项」中开「启忽略文件权限」)
如无意外,至此已经能同步文件了
主机哥服务器上有个定时备份任务,由于它每分钟都会向我自己电脑同步一些备份文件过来,导致电脑不断弹出同步成功的信息来,很是烦,怎么关掉这些提醒呢?
Windows 10电脑桌面右下角的通知角标上面右键-打开操作中心-转到通知设置
通知关掉
关于开机启动
SyncTrayzor支持在设置里设置
注意:
如果打开SyncTrayzor出现下面这种错误提示应该如何处理?
解决办法:把config.xml删除,重新打开SyncTrayzor让syncthing主程序重新自动生成这个配置文件就可以了。
很多在windows下使用syncthing的朋友不是借助SyncTrayzor来实现开机自动启动的,这里在介绍一下windows下使用nssm来开机自动启动的方法:
参考开机自动启动官方文档:https://docs.syncthing.net/users/autostart.html
下载NSSM:http://nssm.cc/download
在C盘根目录下建立syncthing文件夹,用于存放syncthing.exe和nssm.exe
将下载好的nssm.exe解压到C:\syncthing文件夹
WIN + R键打开命令提示符,cd到syncthing所在文件夹执行安装命令(注意要使用管理员身份运行命令提示符):
cd C:\syncthing nssm.exe install syncthing
执行完命令后会弹出这个画面,点击Path右边三个点按钮选择你存放的syncthing.exe
在Arguments输入框内输入如上图填写的代码(此处我有个疑问,官方文档里Arguments里的参数使用的是两个“-”我这里实测一个"-"也是可以的,清楚原因的朋友欢迎去添加底部QQ群一起交流)
-no-restart -no-browser -home="C:\syncthing"
点击Install service,提示安装成功
接着我们做店小修改让外部设备能够访问到本机的GUI界面
先执行启动命令让syncthing在所在目录自动生成配置文件
nssm.exe start syncthing
编辑syncthing目录下的config.xml文件
将<address>127.0.0.1:8384</address>修改为<address>0.0.0.0:8384</address>,这样修改后可以实现其他外部设备来访问本机的GUI界面了
最后执行重启命令
nssm.exe restart syncthing
此时已经实现syncthing开机自动启动并可以用浏览器访问http://本机IP地址:8384了
linux版教程:https://23vps.com/post/42.html
SYNCthing同步技术QQ群177255350