[玩法/技巧] 群晖 为不支持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 分钟执行一次。 游客,如果您要查看本帖隐藏内容请回复 |
|
swy 发表于 2016-12-26 07:40 错误信息都没有这么回答? 为什么你输入的命令后面有个:号 脚本文件ip地址修改成你的路由器ip地址。 教程就是把脚本文件复制到系统目录的, 在共享文件夹也能运行,会影响休眠。 |
|
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 |