En un servidor sin teclado ni pantalla esto es un problema ya que se pierde la conexion totalmente y no hay manera de acceder.
He hecho un sencillo script que comprueba la conexion a internet y reconfigura la conexion wifi si esta caida.
Hace un ping a www.google.com, y si NO hay respuesta reinicia las red y deja una entrada en un log de seguimeinto.
El script:
#!/bin/bash
PING=`ping -c 1 www.google.com|grep "64 bytes from"`
if [ -z "$PING" ]
then
/etc/init.d/networking restart
echo "Network restart on date" >> /var/log/pp-wifiguardian.log
date >> /var/log/pp-wifiguardian.log
fi
PING=`ping -c 1 www.google.com|grep "64 bytes from"`
if [ -z "$PING" ]
then
/etc/init.d/networking restart
echo "Network restart on date" >> /var/log/pp-wifiguardian.log
date >> /var/log/pp-wifiguardian.log
fi
Lo he puesto en /etc/init.d/pp-wifiguardian.sh
Ahora hecemos que lo ejecute el demonio cron
para ello editamos el archivo /etc/crontab indicando la frecuencia que queramos que se ejecute. Como agregar tareas al Cron de Linux
Cada minuto (solo para probar ...)
# m h dom mon dow user command
* * * * * root /etc/init.d/pp-wifiguardian.sh > /dev/null
* * * * * root /etc/init.d/pp-wifiguardian.sh > /dev/null
Cada hora, con esto creo que es suficiente control ...
# m h dom mon dow user command
0 * * * * root /etc/init.d/pp-wifiguardian.sh > /dev/null
0 * * * * root /etc/init.d/pp-wifiguardian.sh > /dev/null
pero si quisieramos que se ejecute cada media hora:
# m h dom mon dow user command
0,30 * * * * root /etc/init.d/pp-wifiguardian.sh > /dev/null
0,30 * * * * root /etc/init.d/pp-wifiguardian.sh > /dev/null
y reiniciamos cron
#/etc/init.d/cron restart
Para ver que se esta ejecutando correctamente y a su hora podemos consultar syslog
micra:~# tail /var/log/syslog
Nov 21 20:23:01 micra /USR/SBIN/CRON[5735]: (root) CMD ( /etc/init.d/pp-wifiguardian.sh > /dev/null^I)
Nov 21 20:24:01 micra /USR/SBIN/CRON[5743]: (root) CMD ( /etc/init.d/pp-wifiguardian.sh > /dev/null^I)
Nov 21 20:25:01 micra /USR/SBIN/CRON[5752]: (root) CMD ( /etc/init.d/pp-wifiguardian.sh > /dev/null^I)
Nov 21 20:26:01 micra /USR/SBIN/CRON[5760]: (root) CMD ( /etc/init.d/pp-wifiguardian.sh > /dev/null^I)
Ref:.
cron (Unix)
No hay comentarios:
Publicar un comentario