群晖 为不支持usb通讯的ups增加停电自动关机功能 关机脚本
本帖最后由 worimeimei123 于 2017-5-7 20:54 编辑群晖 为不支持usb通讯的ups增加停电自动关机功能
群晖5.2,群晖6.0,群晖6.1 都可以用
由于升级群晖6.0后,论坛的关机脚本不起作用了http://www.gebi1.com/thread-246010-1-1.html
参考资料写了个脚本。
原理:群晖每隔1分钟ping一下接在市电上的路由器,如果停电,路由器就关闭了,群晖开始等待1分钟,如果市电来电就不关机。1分钟后还是ping不通路由器就自动关机。
功能:群晖接UPS,路由器接在市电上,停电后等待1分钟,如果市电来电就不关机。1分钟后还是停电就自动关机。
情况会写入系统日志。
不影响休眠。
关机用的是系统的关机脚本。
直接拔网线也会自动关机。
带3个脚本:
5.2和6.0,6.1通用的,
5.2专用的,
6.0,6.1专用的。
需要软件:
SecureCRT
WinSCP
附件有
使用方法:
1.群晖控制面板打开SSH和telnet
打开群晖控制面板-共享文件夹-新增-名称123-所在位置存储空间1-权限可读写。
2.用SecureCRT链接群晖IP地址,
输入管理员帐号和密码(你安装群晖时设置的),保存用户名和密码。
群晖6.0以后限制了root权限。
输入sudo -i后回车
在password:再次输入密码(输入没有显示),回车
变成了:~# 就拥有root权限了。
用WinSCP链接群晖IP地址,
输入管理员帐号和密码(你安装群晖时设置的),保存用户名和密码。
打开群晖目录/volume1/123
之后2个软件一直有用,不要关闭。
注:群晖5.2直接输入账号root和你自己的管理员密码。
2.把power-ups.sh复制到共享文件夹123。
用SecureCRT测试一下,
我的路由ip地址是192.168.81.1,应该和你家的不一样。运行的话群晖会关机。
输入
chmod -R 755 /volume1/123/power-ups.sh
回车
输入
/volume1/123/power-ups.sh
回车
显示
AC Power maybe off, checking again after 1 minutes !
脚本运行正常,不要管等1分钟看群晖会不会关机。
如果出现错误
-ash: /volume1/123/power-ups.sh: /bin/sh^M: bad interpreter: No such file or directory
那就是用Windows记事本修改了,格式变了,用WinSCP新建文件power-ups.sh把脚本内容复制到里面保存再从第2步开始。
3.关机ok的话,群晖开机。
SecureCRT和WinSCP重新连接群晖
用WinSCP修改/volume1/123/power-ups.sh脚本ip地址成你家路由器的IP地址。
或者打开群晖共享文件夹123,用写字板或者notepad++修改脚本ip地址成你家路由器的IP地址,不要用记事本修改。
用SecureCRT:
输入
/volume1/123/power-ups.sh
回车
显示
AC Power OK !
脚本运行正常。
4.把脚本文件复制到系统目录,因为在用户共享目录可能会影响休眠。
我放在/mnt目录了。
用SecureCRT:
输入
cp -r /volume1/123/power-ups.sh /mnt
回车
输入
chmod -R 755 /mnt/power-ups.sh
回车
输入
/mnt/power-ups.sh
回车
显示
AC Power OK !
脚本运行正常。
注:群晖5.2可以直接用WinSCP复制到/mnt目录,设置权限755。
5.下面就是设置定时运行了,2种方法。
第一种:需要修改系统定时文件crontab,效果最好。
把crontab复制出来
SecureCRT输入
cp -r /etc/crontab /volume1/123
回车
用WinSCP打开/volume1/123/crontab,如果没有刷新一下。
或者打开群晖共享文件夹123,用写字板或者notepad打开crontab,如果没有刷新一下。
修改内容:
在#minute hour mday month wday who command下面插入一行内容,在最后一列有时候会被系统删掉。
* * * * * root /mnt/power-ups.sh
各个区段用 TAB 分隔
例:
MAILTO=""
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin
#minute hour mday month wday who command
* * * * * root /mnt/power-ups.sh
保存
把crontab复制回系统目录
用SecureCRT输入
cp -r /volume1/123/crontab /etc
回车
重启群晖
注:群晖5.2可以直接用WinSCP修改crontab文件,在/etc目录。
第2种:群晖24小时不关机一直运行的话可以设置任务计划。
效果不好,断网关机后再开机就不起作用了,看计划任务的下次运行时间是第二天才运行,需要开机后手动点一下运行计划才能运行。
在群晖控制面板设置任务计划。
在 NAS 管理界面,打开“控制面板”,选择“任务计划”,点击“新增”并选择“用户定义的脚本”,/mnt/power-ups.sh,并选择每天的 00:00 到 23:59,每 1 分钟执行一次。
**** Hidden Message *****
技术贴,学习了。
http://www.gebi1.com/static/image/common/sigline.gif
https://wrdan.com 一个运行在家里的小网站
技术贴,学习了。. m& 好的 看看 学习了谢谢楼主 看看 学习了谢谢楼主 来学习的。 这个好厉害哦 强大的关机脚本设置! 好东西,就是有点难搞 来学习的 正在想这事呢,谢谢楼主 测试一下
输入
/mnt/power-ups.sh:
回车
显示
出错,不知道怎么回事,楼主 技术贴,学习了。 {:8_212:}很好很强大{:8_225:} 厉害,越看越觉得好 好东西,就是有点难搞 swy 发表于 2016-12-26 07:40
测试一下
输入
/mnt/power-ups.sh:
错误信息都没有这么回答?
为什么你输入的命令后面有个:号
脚本文件ip地址修改成你的路由器ip地址。
教程就是把脚本文件复制到系统目录的,
在共享文件夹也能运行,会影响休眠。 worimeimei123 发表于 2016-12-26 11:38
错误信息都没有这么回答?
为什么你输入的命令后面有个:号
麻烦帮忙看下,我哪里出的问题了?我的共享目录为pow
worimeimei123 发表于 2016-12-26 11:38
错误信息都没有这么回答?
为什么你输入的命令后面有个:号
执行下面这一句就成功了,网上搜的,什么意思也不明白,能否帮忙解释下!
sed -i 's/\r$//' /mnt/power-ups.sh
测试一下
输入
/mnt/power-ups.sh
成功显示
AC Power OK !
但是,任务计划或复制到系统目录,断电路由器均不能自动关机! 路由器 192.168.1.1 脚本均已做修改!不知道错在哪里! DS216+II