Recevoir une alerte mail quand un disque linux est plein

Si vous achetez un serveur dédié chez OVH ou ailleurs, faites attention déjà à bien positionner l’emplacement vos sites web.
Par défaut, on a tendance à les placer dans /var/www, mais sur certains serveurs les partitions les plus volumineuses se trouvent dans /home. Pour le savoir, faites un df -h .

Comme beaucoup, vous n’avez pas trop de temps à passer à monitorer vos serveurs, et à part , faire régulièrement un apt-get update, apt-get upgrade, vous ne regardez pas trop l’état de saturation des disques.
Je vais donc vous aider avec un petit script maison qu’il vous faudra placer dans le cron, et qui vous enverra une alerte dès qu’un disque sera rempli à plus de 90% (peu importe lequel, car il regarde toutes les partitions).

Pour info: ce script fonctionne aussi bien sur les serveurs Francais qu’Anglais.
Et pour ceux qui voudraient un assistant pour ne pas trop galérer avec les commandes Bash, je vous recommande cette page.

#!/bin/bash

THRESHOLD=90
EMAIL="votre_email@ndd.com"
SERVER="IP_SERVEUR"

iLigne=0
for vFS in `df -h |awk {'print $5'}` ;  do
 ((iLigne+=1))
 taille=`expr length "$vFS"`;
 if [ $taille -lt 3 ];
   then
    vFS="0$vFS"
 fi
 if [ $iLigne -gt 1 ] ;
    then
        if [[ "$vFS" > "$THRESHOLD" ]];
          then
          echo "Alerte envoyé car $vFS utilisé"
          mail -s 'Disk Space Alert > $SERVER' $EMAIL << EOF
La partition n' a plus assez d'espace disque. Pour le moment, on atteint: $vFS d'espace occupe
EOF
  fi
 fi
done

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.