ubuntu断电自动关机

一、登陆并配置定时任务

使用root 权限登陆SSH命令控制界面,假设定时脚本是 ping.sh ,输入命令:crontab -e 配置定时任务。

在最后一行增加下面内容

*/5 * * * * /usr/bin/sudo sh /home/ping.sh  #5分钟 PING 检测一次
Bash

按ctrl+x保存

二、创建 ping.sh 批处理脚本文件

在 /home/ 目录下,创建 ping.sh 批处理程序脚本文件

nano /home/ping.sh
Bash

ping.sh 脚本文件代码如下:

#!/bin/shping -c 1 192.168.5.1 > /dev/null  #将192.168.5.1改为自己路由器的IPret=$?if [ $ret -eq 0 ]thenecho 'AC Power OK !'elseshutdown -h nowfi
Bash

按ctrl+x保存

测试一下, 程序无BUG,可以正式投入使用

 

三、赋予 ping.sh 批处理脚本文件权限

需赋予 ping.sh 批处理脚本文件755权限:chmod 755 /home/ping.sh

 

四、重启服务开始执行任务

输入命令 reboot 重启设备,程序就开始执行了。

 重启 Crontab 服务

Debian 重启 Crontab 服务:/etc/init.d/cron restart

Centos 重启 Crontab 服务:/sbin/service crond restart

 

原理:

  • ping 路由器IP(这个IP根据自己的路由器更改),

  • 如果ping 通了,说明市电正常

  • 回显“AC Power OK ! ”交流电源正常!

  • 否则,执行关机

要求:

  • 路由器不能接在UPS上,否则就不起作用了。