上一篇,群晖DSM自动备份到异地OpenWrt硬盘(NAS Synology Syncthing X9S X10 Zidoo),已经实现了基本功能。
进阶篇,我们来点高级功能!
- DSM 自动运行Syncthing
- OpenWrt 自动运行Syncthing
- Syncthing-Inotify,实现文件更新提醒,不需要定期扫描Rescan
1. DSM的Syncthing,是作为组件,会自动运行的。
2. OpenWrt 自动运行Syncthing
方法一:
OpenWrt(X9S),通过图形界面添加:
- 打开OpenWrt LuCI: 浏览器 -> <X9S_IP>
- System -> Startup
- "Local Startup"添加以下命令:
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
sleep 20
/mnt/sda2/zidoo/syncthing/syncthing -home=/mnt/sda2/zidoo/syncthing/.config/syncthing/
exit 0
- 提交Submit
- 以后X9S重启的话,就会后台自动启动Syncthing了!
方法二:
也可以手动添加:
- create new file
/etc/init.d/syncthing
:
#!/bin/sh /etc/rc.common
START=99
STOP=15
start() {
echo start Syncthing...
sleep 20
/mnt/sda2/zidoo/syncthing/syncthing -home=/mnt/sda2/zidoo/syncthing/.config/syncthing/
}
stop() {
echo stop
#commands to kill application
}
- 创建软链接:
cd /etc/rc.d
chmod 777 ../init.d/syncthing
ln -s ../init.d/syncthing ./S99syncthing
- 注意,方法一跟方法二只能选其中一个。
3. Syncthing-Inotify,实现文件更新提醒
减少不必要的Scan,不需要定期扫描Rescan
DSM共享文件夹属性 -> "Rescan Interval" = 0
DSM -> Package Center -> 安装“Syncthing-Inotify”,然后启动就行。有文件变动的话,会自动通知Syncthing,然后两边设备触发同步。
偶觉得放心了,把DSM/OpenWrt两边都设成了0。
(当然,你如果为了保险,OpenWrt共享文件夹属性 -> "Rescan Interval" 也可以设置一下,设一个比较大的值,比如3天。 )
4. 过滤不需要同步的文件
比如 @eaDir:这是DSM的缩略图文件,非常大
共享文件夹 -> Edit -> Ignore Patterns -> 添加你要过滤的即可。注意,两边设备都要加过滤,不然,会经常重新比较。
另:如果换了硬盘,名字可能会变:/mnt/sda2 -> /mnt/sda1。这时,修改:
- 启动文件:vi /etc/init.d/syncthing
- 重配置:Web GUI: https://192.168.1.174:8384/ -> Action -> Advanced -> 这里才能修改路径
5. Syncthing 关闭 restart after wakeup
如果你客户端是笔记本,可能会经常休眠。默认醒来后,如果之前Syncthing在Scan,则会重新从头开始Scan。
一般可以关闭,以减少Scan时间和对硬盘的损耗。
Syncthing Web GUI -> 右上角 -> 设置 -> 选项Option -> 关闭 restart after wakeup
另:注意Syncthing会产生数据库,存放在安装目录下,大几百MB。要保证安装目录有一定的空间哦!我的/volume1/
不小心写满了,出报警了。然后清理一下就OK了.
ls -l /usr/local/
版权印为您的作品印上版权01935276