Este script fue obtenido desde las iguiente pagina . https://lamiradadelreplicante.com/2016/02/23/script-para-monitorear-los-servicios-de-un-servidor/
El script, es muy sencillo de entender, los servicios que deseamos monitorizar se indican en un archivo de texto, validando el servicio que deseamos controlar en nuestro servidor, para el caso de distribuciones basadas en Debian, como es Ubuntu, entramos al directorio /etc/init.d y determinamos cuales queremos chequear.
Se obtiene la fecha y hora del sistema, para registrar en un log que maneja el script, las incidencias del servicio.
#! / bin / bash FILE=servicios.txt TIME='date +%Y-%m-%d_%H-%m-%S' while read linea; do if ps ax | grep -v grep | grep $linea > /dev/null then echo "Servicio $linea esta ejecutandose" else echo "El Servicio $linea ,estaba DETENIDO, a las $TIME" >> Servicios.log service $linea start echo "Validar el estado del servicio, si esta down, puede ser iniciado con: service $linea status, estaba down a las $TIME" | mail -s "Servicio $linea Detenido " usuario@dominio.com fi done < "$FILE"