首先winscp或者putty进NAS,在/usr/sbin/下建立TG500.sh文件,内容如下:
#!/bin/sh
ping -c 1 192.168.1.1 > /dev/null
ret=$?
if [ $ret -eq 0 ]
then
echo ' AC Power OK ! '
else
echo ' AC Power maybe off, checking again after 4 minutes ! '
sleep 240
/usr/sbin/TG500-2.sh
fi
winscp修改属性为0755,赋予可执行权限,以上内容可能各位lunix达人一看便知,是一个检测脚本,如果ping的通路由的ip,就说明市电正常,不通的话再次检测确认,为什么要再次检测,因为有可能你的路由重启,或者是其它什么情况导致暂时ping不通,所以要再次检测确认,我这里是隔了4分钟,一般4分钟足够路由重启了。
还有这个TG500.sh文件为什么要放在/usr/sbin/目录,因为我试过如果放在NAS本身的一些目录中,如/etc或者/sbin等系统自带目录,重启后自检会删除你新增的文件,导致脚本失效,所以只能放在/usr/下面的子目录中。
继续在/usr/sbin/下建立TG500-2.sh文件,内容如下:
#!/bin/sh
ping -c 1 192.168.1.1 > /dev/null
ret=$?
if [ $ret -eq 0 ]
then
echo ' AC Power OK ! '
else
echo ' AC Power off, shut down NAS ! '
/sbin/poweroff
fi
同样winscp修改属性为0755,赋予可执行权限,这个就是再次确认脚本,如果过了4分钟再次ping路由还是不通,就关机。
然后修改/etc/config/crontab文件,增加一条
*/5 * * * * /usr/sbin/TG500.sh
就是每5分钟执行一次检测脚本,保存后关机重启NAS即可,通过以上的脚本,得到的效果是如果断电,那么在9-14分钟内NAS就会自动关闭,如果路由只是重启,4分钟内不会关闭NAS(再次确认一下。NAS接UPS,路由接市电,路由的ip地址为192.168.1.1),从而保护了我们的硬盘和数据,将突然断电的风险降到最低, |