Linux 检测服务器是否连接着网络

时间:2021-05-19

Linux 检测服务器是否连接着网络

摘要: 每隔5分钟检测一次服务器是否连接着网络,如果三次检测都没有网络?则自动关机! 主要使用场景: 由于自己有一台服务器放在偏远的老家,有可能会遇到停电导致断网的问题,并且停电后UPS使用时间也有限制, 因此设计此脚本为了解决停电的时候服务器突然断电引起的各种问题,当停电后网络也就不通了,此时需要自动关闭服务器. 当然,来电后需要手动启动服务器!!!

#!/bin/bash# 检测服务器是否连接着网络,如果网络不通 则 3次后 关机# crontab -e# */5 * * * * ./check.shecho "Starting test network was clear..."if test -e ./checkInfo then echo "CheckInfo File Exist..."else cat /dev/null > ./checkInfofilast_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}}checkInternetresult="$?"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 > ./checkInfofi

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章