自建的私有云网盘软件很多,比如 Seafile、ownCloud 等,功能很实用,而 Syncthing 最大的特色是采用了与 Resilio Sync (BitTorrent Sync) 类似的 P2P 分布式技术,无需中心服务器,即可让多台设备互相实时同步文件,用过 Resilio Sync 的朋友都明白这种同步方式的优势了。它们两者的实现方式很相似,区别是 Resilio 属于商业软件,需付费使用,在国内已慢慢变得访问(被)困难(墙),而 Syncthing 不仅完全免费且开源,相比 Resilio 还增加了「文件版本控制」、「单向同步」等堪称杀手级的功能特性。
Syncthing 功能上非常接近于 Resilio Sync / BT Sync,不过说它是一款用于搭建网盘的服务器软件或者云存储服务应用似乎并不十分恰当,相较于 Seafile、NextCloud 等服务器工具,Syncthing 实际上更像是一款文件/文件夹同步工具。你可以非常轻松简单地让同一路由器下的多台 PC 电脑、NAS 设备实现局域网互相同步,也可以在 VPS 服务器或 24 小时不关机且有公网 IP 的电脑上安装和配置 Syncthing,让其成为真正意义上的云同步网盘。
更难得的是 Syncthing 开源且免费,跨平台支持 Windows,Mac,Linux,Android。(稍有些遗憾的是目前暂不支持iOS平台)当然也支持树莓派平台,下面应读者要求,树莓派实验室为大家介绍如何在树莓派上安装 Syncthing!(VPS 等 Linux 平台上安装方法类同,也可以参考本文)
获取软件包
1 2 3 4 5 6 |
|
注:Syncthing 的版本迭代比较频繁,你可以在这个页面获取最新的安装包。页面中文件名为 syncthing-linux-arm-版本号.tar.gz 的就是树莓派可用的版本。
部署、测试
解压之后当前目录下多了一个名为 syncthing-linux-arm-v0.14.42 的目录。
1 2 3 4 5 6 |
|
1 |
|
结果输出一些程序初始化信息,包括网络监听端口、WebUI(操作界面) URL 等,表示部署成功。先不要急着访问 WebUI,因为还需要少量配置。先 Ctrl+C 中止程序。
配置
运行下面的命令编辑 Syncthing 的配置文件:
1 |
|
1 2 3 4 |
127.0.0.1:8384 |
将 127.0.0.1:8384 修改为 0.0.0.0:8384 以便让其他终端可以访问到 Syncthing 的 WebUI。
下面再次运行主程序
1 |
|
不要中断程序,尝试用电脑或者手机的浏览器访问 Syncthing 的 WebUI,地址为
http://树莓派的IP地址:8384
打开之后,会让你设置用户名和密码。下面再大致了解下几个关键的界面:
到这一步就已经可以投入使用了!
但是使用这个命令运行 Syncthing,程序需要一直在前台运行。为了让它在后台默默执行可以这样:
1 |
|
如果你希望让 Syncthing 可以自动开机运行,可以继续往下阅读。
设置开机自动运行
在 /etc/init.d 目录下建立启动文件
1 |
|
输入以下内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
|
保存之后运行
1 2 3 4 |
|
之后你还可以通过这四个命令管理 Syncthing,顾名思义。
1 2 3 4 |
|
如后面你要取消开机自动运行可以使用
1 |
|
与 BTSync 的比较
Syncthing 与 BTSync 有着相似的功能,均很强大。
1.Syncthing 与 BTSync 相比,Syncthing 是开源的,MIT协议。可免费用于商业用途,而 BTSync 相反。
2.Syncthing 的方式更侧重个人资料的同步,BTSync 还可以在同步的基础上进行分享。
3.Syncthing 暂无 iOS 版本。
各种平台的客户端可以在官网免费获取:
https://syncthing.net/
(Windows 版的 Syncthing 官方还提供了一个图形界面版的「SyncTrayzor」工具)
GitHub:
https://github.com/syncthing/syncthing
再配上蒲公英,可以实现异地同步。
在树莓派上安装可以说是非常人性化,超级简单,可以参考官方的安装方式
http://service.oray.com/question/6177.html
本地机上下载对应的客户端, 就可能实现异地同步了。