martes, 31 de julio de 2012

Bash Script para monitorerar conexion de internet

Bash Script para monitorerar conexion de internet.
Si no responde 3 veces, llama a otro script que reseta el modem/router.
$gedit cortesd

#!/bin/bash
echo "begin ping"
c=0
while true; do
        echo $c
        date +"%y-%m-%d %H:%M:%S"
        ping -c 3 8.8.8.8
        if [ $? -eq  0 ]; then
                echo "ping success";
  c=0
        else
                echo "fail ping"
                let "c+=1"
        fi
        ping -c 3 8.8.4.4
        if [ $? -eq  0 ]; then
                echo "ping success";
  c=0
        else
                echo "fail ping"
                let "c+=1"
        fi

         if [ $c  -gt  3 ]; then
     echo "se corto internet"
     c=0
     date >> /var/log/cortesd
     expect /usr/local/bin/pirelli_reboot.sh
        fi
 sleep 20
done


para que arranque al inicio, podemos agregarlo al final de /etc/rc.local
nohup /usr/local/bin/cortesd  &

para monitorear el script corriengo en 2do plano:
tail nohup.out  -n 30