Networking Cron作业仅在网络关闭时重新启动网络?

Networking Cron作业仅在网络关闭时重新启动网络?,networking,cron,Networking,Cron,我曾经遇到过一个令人沮丧的问题,它的网络在明显随机的时间断开,作为一种解决办法,我做了一个简单的cron作业,每小时重新启动一次。但是,如果网络已经启动了,这似乎很愚蠢——为什么要重新启动它,对吗 那么,我是否可以创建一个简单的脚本,首先检查ping?ifconfig?查看网络是否正常工作,然后仅在返回false时重新启动?或者网络管理器上的一个标志会自动检查 我的克朗就是这样: 15 * * * * /sbin/service network-manager restart 提前感谢任何对如

我曾经遇到过一个令人沮丧的问题,它的网络在明显随机的时间断开,作为一种解决办法,我做了一个简单的cron作业,每小时重新启动一次。但是,如果网络已经启动了,这似乎很愚蠢——为什么要重新启动它,对吗

那么,我是否可以创建一个简单的脚本,首先检查ping?ifconfig?查看网络是否正常工作,然后仅在返回false时重新启动?或者网络管理器上的一个标志会自动检查

我的克朗就是这样:

15 * * * * /sbin/service network-manager restart

提前感谢任何对如何最好地进行网络管理有想法的人!双关语-

从crontab调用更复杂的脚本:

15 * * * * mySafeRestart


#!/bin/bash  
# mySafeRestart : restart only if uncommunicative
if ! ping -c 1 remote.host.com ; then 
    /sbin/service network-manager restart
fi
有关网络启动的测试,请参阅

使用下面建议的netcat测试将是:

if ! nc -w 2 google.com 80 ; then
  ...

我见过网络连接中ping可以工作,但TCP和UDP数据包无法工作。我建议使用nc或类似的工具来检查网络。嗨@Alexiswillke,谢谢你的评论。您能否使用nc提供类似的解决方案?我也有类似的想法,但是如果ping有严重的问题,那可能就不太理想了。我不是程序员,所以这方面的任何帮助都会很好。@user1149499,请看这里我可以替换if!发出砰的声响。。。符合if nc-w 2-v google.com 80;然后或者我需要考虑其他的语法吗?它是否总是端口80?nc与ping与ifconfig的区别更多的是如何确定网络是否正常。有很多方法可以处理它。如果我在cron作业中使用nc,我会放弃-v。测试nc-W2 google.com是否为80;然后呼应起来;fi看起来语法会很好。