Script que avisa del espacio libre en el disco

Script que avisa del espacio libre en el disco.

El script que hoy te presento, nos enviara un mail diciéndonos el espacio libre en el disco o cualquier otro sistema de almacenamiento que usemos.

Puede parecer un tema un tanto baladí, pero te equivocas… no lo es. Es de suma importancia para cualquier Sysadmin estar informado del espacio disponible en sus sistemas de almacenamiento.

Un ejemplo común… un servidor exclusivo de backups, los usuarios van aumentando y los baks también, por lo tanto debes estar al corriente del espacio de ese servidor.

Lo que haremos es crear un script bash, que mediante una tarea cron nos avisara si hemos rebasado el umbral definido de espacio libre en nuestro disco o discos.

Vemos dos ejemplos de script bash:

  1. Script que avisa con 25% libre.
  2. Script que avisa con 10% libre.

Script que avisa del espacio libre en el disco 1

 

Script que avisa con 25% libre

Desde la consola:

Creamos el archivo *.sh.

nano free_disk25.sh

Copia y pega en el archivo lo siguiente (donde «mail@mimail.es», pon tu correo electrónico).
#!/bin/bash
used=`df -h | grep sda1 | awk {'print $5'}`
used=${used/\%/}
if [ $used -gt 75 ];
then
echo "WARNING! Espacio disponible menos del 25%. El espacio utilizado = $used"% | mail -s "DISK ALERT" mail@mimail.es
fi

Guarda y cierra el editor.

Le damos permisos…

chmod +x free_disk25.sh

Lo puedes ejecutar con la secuencia siguiente…
bash free_disk25.sh

Pero lo ideal es que lo ejecutes como una tarea cron, por ejemplo (generadores online de tareas cron):
* */12 * * * ((aquí la ruta))./free_disk25.sh >/dev/null 2>&1

Con la tarea que hemos establecido, el script se ejecutara cada 12h, todos los días de la semana de todos los meses.

Script que avisa del espacio libre en el disco 2

 

Script que avisa con 10% libre

Desde la consola:

Creamos el archivo *.sh.

nano free_disk10.sh

Copia y pega en el archivo lo siguiente (donde «mail@mimail.es», pon tu correo electrónico).
#!/bin/bash
used=`df -h | grep sda1 | awk {'print $5'}`
used=${used/\%/}
if [ $used -gt 90 ];
then
echo "WARNING! Espacio disponible menos del 10%. El espacio utilizado = $used"% | mail -s "DISK ALERT" mail@mimail.es
fi

Guarda y cierra el editor.

Le damos permisos…

chmod +x free_disk10.sh

Lo puedes ejecutar con la secuencia siguiente…
bash free_disk10.sh

La tarea cron aconsejada, es igual que en el ejemplo anterior.

 

Espero te resulte útil 🙂

2 Comentarios

  1. Jorge Le Maire
    16/05/2018
  2. Ricardo
    28/05/2018

Agregar comentario