kevinqq 发表于 2017-6-7 11:09:01

群晖DSM自动备份到异地OpenWrt硬盘(NAS Synology Syncthing X9S zidoo)

很多人家里是这种场景:一台群晖作为主力NAS,WIFI路由器或电视盒子刷了OpenWrt挂硬盘作为第二NAS。
对于关键资料,仅仅存放在一台NAS上还是有风险的,最好定期拷贝一份到异地硬盘,比如其它NAS、QNAP、USB硬盘、外挂SATA硬盘、网盘等等。
本文分享的方法,就是:群晖和OpenWrt设备之间,通过Syncthing软件,实现自动备份Syncthing:是免费的开源软件,关键是能跨平台:Linux/Windows/Arm/MIPS/OpenWrt都能用,优于rsync。官网:https://syncthing.net/条件
[*]Synology黑群或白群,DSM5.0+
[*]OpenWrt设备,我这里以Zidoo X9S/X10为例,其它Andriod、路由器等智能设备,原理是一样的
步骤
[*]Synology DSM安装Syncthing
[*]DSM配置Syncthing
[*]X9S OpenWrt安装Syncthing
[*]OpenWrt配置Syncthing
[*]DSM/OpenWrt两者调通
[*]开机自启动,定期运行
以下是具体说明:1. Synology DSM安装SyncthingIn the DSM / "Package Center":
(1) In the "Beta" tab, select Yes, I want to see beta versions.
(2) In the "General" tab, Trust section - select Synology Inc. and trusted publishers.
In the Package Sources tab, click Add, type SynoCommunity as Name and http://packages.synocommunity.com/ as Location and then press OK to validate.http://upload-images.jianshu.io/upload_images/3843091-b6384f83bd0d44d9.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
Paste_Image.png

"Package Center" -> 安装“Syncthing”,然后,在“Installed”里,就能看到了2. DSM配置SyncthingDSM -> Open "Syncthing",点启动,就会打开熟悉的Syncthing网页管理界面了。第一次打开,会自动升级Syncthing.Web GUI Manual: https://docs.syncthing.net/intro/gui.html
默认地址为:<DSM_ip>:7070http://upload-images.jianshu.io/upload_images/3843091-f5a5eb7b71d6fee2.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
Paste_Image.png

注意DSM的版本和平台:我的机子是Linux(64bit)
http://upload-images.jianshu.io/upload_images/3843091-4ab5755d89229bec.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
DSM_ver.png

这时,并不能共享文件夹,需要先添加权限。
DSM -> Control Panel -> Group -> 双击“sc-syncthing”:http://upload-images.jianshu.io/upload_images/3843091-6ffdeb1b71d882d2.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
Group Permission.png

对于你想同步的文件夹,添加Read/Write权限:
http://upload-images.jianshu.io/upload_images/3843091-2cd9eb466df918f0.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
Group Permission2.png

好,现在DSM上基本设置完成了。3. X9S OpenWrt 安装Syncthing幸好,万能的大神们,现在Syncthing编译版本也支持各种Arm设备了。
Zidoo X9S用的是RTD1295芯片,是Arm64平台,内置Android/OpenWrt双系统。我们直接下载编译好的arm64执行文件就行:
syncthing-linux-arm64-v0.14.29.tar.gz
所有其它平台版本:https://github.com/syncthing/syncthing/releases/解压,上传syncthing可执行文件到X9S,比如到这个目录:/mnt/sda2/syncthing/,用你顺手的SSH工具(putty, XShell),SSH登录到X9S,用root用户名,密码默认是rootcd /mnt/sda2/syncthing/chmod 777 syncthing./syncthing这时,你应该能看到Syncthing正常运行了:
http://upload-images.jianshu.io/upload_images/3843091-1beb1ceaea59538d.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
傲游截图20170606202331.png

Web GUI还不行,因为地址默认为127.0.0.1:8384,下面来修改配置文件4. OpenWrt配置Syncthing修改Web GUI地址:vi ~/.config/syncthing/config.xml# change 127.0.0.1:8384 to 0.0.0.0:8384好了,电脑上打开<X9S_IP>:8384,成功连上了:
注意,显示版本为Linux(AArch64)
http://upload-images.jianshu.io/upload_images/3843091-8e399e71c9d73506.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
X9S_openwrt_ver.png

注意:X9S的root home空间很小,37MB,所以,必须要手动指定Syncthing的Log、临时文件到其它SATA盘!运行时添加-home=参数就行,比如:
/mnt/sda2/syncthing/syncthing -home=/mnt/sda2/syncthing/.config/syncthing/5. DSM/OpenWrt两者调通先相互添加设备,任一方发起就行:
GUI右下角 -> Add Device然后创建共享文件夹:
GUI左边 -> Add Folder这里参考其它现成教程就行,很直观,不会出错。好了,先找一个测试文件夹作试验吧:http://upload-images.jianshu.io/upload_images/3843091-daa5e642a6de26e4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
sync start.png

过一会,就同步完成啦!
http://upload-images.jianshu.io/upload_images/3843091-7fc324879045e269.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
sync_complete.png

6. 单向同步的设置一般情况,我们不会需要双向同步。
我们一般要求单向:
[*]主NAS群晖上的数据,无条件地备份到第二NAS - OpenWrt硬盘。就算主NAS上意外删除了文件,第二NAS也能保留
[*]第二NAS上的删除操作,不会同步到主NAS。保证主数据的安全
好,下面我们来设置:
对于1),在第二NAS,高级设置里,勾选“IgnoreDelete”,这样,主NAS的删除文件动作,不会影响到第二NAS上已有的文件:
http://upload-images.jianshu.io/upload_images/3843091-5532d3a4df0d72d5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
adv_para.png

http://upload-images.jianshu.io/upload_images/3843091-6f2a8691e3c7ccd5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
ignorDelete.png

对于2),主NAS设置共享文件夹时,“文件夹类型”设为“只发送”,这样,第二NAS上的意外删除,不会影响主数据:http://upload-images.jianshu.io/upload_images/3843091-fb7c1141bfe0c60f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
Paste_Image.png

http://upload-images.jianshu.io/upload_images/3843091-ebe6b06e5b9bffe8.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240
send only.png

你可以在测试文件夹上,多试验几次,满足条件之后,再正式用到你的关键数据上去。Tips: 如果接收端已存在部分文件,则同步时,会自动跳过7. 开机自启动,定期运行DSM的Syncthing,是作为组件,会自动运行的。
OpenWrt(X9S),需要手动添加: TODO参考:
官方文档Syncthing v0.14 documentation
Syncthing免费开源的文件同步工具-带版本控制可用于构建个人云存储
单向备份的设置

oldthree6289 发表于 2017-6-7 15:22:51

{:8_224:}谢谢楼主分享

kevinqq 发表于 2017-6-8 08:50:20

进阶篇马上出炉:
1) OpenWrt自动运行
2)Inotify,实现文件更新提醒,不需要定期打描Rescan

kevinqq 发表于 2017-6-8 14:20:07

群晖DSM自动备份到异地OpenWrt硬盘 - 进阶篇(Syncthing-Inotify) - 简书
http://www.jianshu.com/p/92ce0050ebc7

kevinqq 发表于 2017-6-10 12:35:48

看来玩OpenWrt的人不多。。。。。。。。。。。。。。。。。。。。。。。。

hbxntsxw 发表于 2017-7-14 22:05:41

楼主,请问如果两地都没有公网ip,参考这个教程可以实现同步吗?

kevinqq 发表于 2017-7-17 09:00:33

hbxntsxw 发表于 2017-7-14 22:05
楼主,请问如果两地都没有公网ip,参考这个教程可以实现同步吗?

中间通过内网穿透就行

kernel 发表于 2017-9-12 18:35:51

"Package Center" -> 安装“Syncthing”,然后,在“Installed”里,就能看到了,
请教这步的时候, 安装“Syncthing ,但是我在 套件中心里面 搜索不到Syncthing啊。不知道怎么搞了。

oldthree6289 发表于 2017-9-13 01:25:25

buffalo ts5400是封闭的系统,无法安装syncthing。
不能折腾也好,3*3T RAID5 运行快2年了。

一直找不到方法,把windows server 或 黑群 的数据定时自动同步到TS5400。
这样可以关掉一台NAS比较节能

derby 发表于 2017-9-13 09:46:02

多谢,学习了!
页: [1]
查看完整版本: 群晖DSM自动备份到异地OpenWrt硬盘(NAS Synology Syncthing X9S zidoo)