Linux - Rapport quotidien des serveurs par mail

Décembre 2016

L'administration de systèmes Linux est une tâche d'autant plus difficile qu'il y a un grand nombre de serveurs car il faut surveiller continuellement les ressources systèmes et les mises à jour nécessaires pour chacun d'entre eux.

Le script suivant permet de créer un rapport envoyé quotidiennement par mail à l'administrateur et indiquant l'état du disque dur et les mises à jour nécessaire (pour un système Debian, pour les autres systèmes il faut adapter en fonction des systèmes de gestion de packages disponibles :

#!/bin/bash
apt-get update
( 
        echo To: destinataire@domaine.ext
        echo From: systeme@domaine.net
 if [ "$( df -h | grep hda1 | cut -c40-42)" -ge "80" ]; then echo Subject: Rapport du `date +%e\ %B\ %Y` : ESPACE DISQUE FAIBLE
 else echo Subject: Rapport quotidien du `date +%e\ %B\ %Y` pour `hostname`
 fi
        echo Rapport de `hostname`
        echo Usage du disque :
        echo 
        df -h
        echo
        echo Charge du serveur :
        echo
        uptime
        echo
        echo Mises à jour nécessaires
        echo
        apt-get -s upgrade
) | /var/qmail/bin/qmail-inject -fexpediteur@domaine.ext destinataire@domaine.ext


Le script ci-dessus permet d'afficher une alerte dans le sujet du message si le disque hda1 a un taux de remplissage supérieur à 80%. Le système de messagerie utilisé pour l'envoi dans l'exemple est qmail, mais n'importe quel autre commande similaire (par exemple /usr/sbin/sendmail) peut-être utilisée.

Il suffit ensuite de rendre ce script exécutable, par exemple :
chmod +x /home/user/script/dailyreport.sh


Enfin, la création d'une entrée dans la crontab permettra l'envoi quotidien (5h00 du matin dans l'exemple ci-dessous) du message par mail :
crontab -e


Insérer la ligne suivante :
00 5 * * * /home/user/script/dailyreport.sh > /dev/null 2>&1

A voir également :

Ce document intitulé «  Linux - Rapport quotidien des serveurs par mail  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.