本文摘自PHP中文网,作者黄舟,侵删。
这篇文章主要介绍了Linux 检测服务器是否连接着网络的相关资料,需要的朋友可以参考下Linux 检测服务器是否连接着网络
摘要: 每隔5分钟检测一次服务器是否连接着网络,如果三次检测都没有网络?则自动关机! 主要使用场景: 由于自己有一台服务器放在偏远的老家,有可能会遇到停电导致断网的问题,并且停电后UPS使用时间也有限制, 因此设计此脚本为了解决停电的时候服务器突然断电引起的各种问题,当停电后网络也就不通了,此时需要自动关闭服务器. 当然,来电后需要手动启动服务器!!!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | 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
|
以上就是Linux如何检测服务器是否连接着网络的代码案例的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
Linux如何卸载软件
i1实例创建全镜像需要注意什么?
Linux怎么查看内核版本
总结Linux下系统巡检常用命令
Linux下export命令怎么用?
Linux系统ftp服务目录下的文件乱码
Linux中如何查看cpu是几核的
Linux简单知识点分享
Linux如何判断目录是否存在
Linux怎么查看进程号并杀死进程
更多相关阅读请进入《Linux》频道 >>
转载请注明出处:木庄网络博客 » Linux如何检测服务器是否连接着网络的代码案例