Linux 检测服务器是否连接着网络
更新时间:2017年05月18日 10:14:23 作者:Kxvz
这篇文章主要介绍了Linux 检测服务器是否连接着网络的相关资料,需要的朋友可以参考下
Linux 检测服务器是否连接着网络
摘要: 每隔5分钟检测一次服务器是否连接着网络,如果三次检测都没有网络?则自动关机! 主要使用场景: 由于自己有一台服务器放在偏远的老家,有可能会遇到停电导致断网的问题,并且停电后UPS使用时间也有限制, 因此设计此脚本为了解决停电的时候服务器突然断电引起的各种问题,当停电后网络也就不通了,此时需要自动关闭服务器. 当然,来电后需要手动启动服务器!!!
#!/bin/bash
# 检测服务器是否连接着网络,如果网络不通 则 3次后 关机
# crontab -e
# */5 * * * * ./check.sh
echo "Starting test network was clear..."
if test -e ./checkInfo
then
echo "CheckInfo File Exist..."
else
cat /dev/null > ./checkInfo
fi
last_res=`head -1 ./checkInfo`
checkInternet(){
ping_res=1
for url in "8.8.8.8" "61.139.2.69" "114.114.114.114" "168.95.1.1" "223.5.5.5" "180.76.76.76"
do
echo "PING ${url}"
ping=`ping -c 3 ${url}|awk 'NR==7 {print $4}'`
if [ ${ping} -eq 0 ]
then
ping_res=1
else
ping_res=2
fi
if [ ${ping_res} -eq 2 ]
then
break
fi
done
return ${ping_res}
}
checkInternet
result="$?"
if [ ${result} -eq 1 ]
then
if [ "${last_res}" = "1" ]
then
echo "2" > ./checkInfo
elif [ "${last_res}" = "2" ]
then
cat /dev/null > ./checkInfo
init 0
else
echo "1" > ./checkInfo
fi
else
cat /dev/null > ./checkInfo
fi
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章
ubuntu无法ssh远程,提示'Permission denied (publickey
SSH(Secure Shell)是一种加密的网络协议,用于在网络上安全地传输数据,它被广泛用于远程登录和执行命令,有时候使用SSH登录时,可能会遇到错误消息Permission denied (publickey)导致登录失败,这种情况可能由多种原因引起,将探讨导致SSH登录失败的可能性,并提供解决方案2025-04-04
详解Centos7.2编译安装zabbix3.2(详细步骤)
这篇文章主要介绍了详解Centos7.2编译安装zabbix3.2(详细步骤),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-02-02
服务器端如何开启GZIP压缩功能(Apache、IIS、Nginx)
在负载均衡中有一个必须要做的事情就是给服务器开启GZIP压缩功能,本文主要介绍了服务器端如何开启GZIP压缩功能,具有一定的参考价值,感兴趣的可以了解下2022-04-04


最新评论