
A administração de sistemas Linux é uma tarefa muito difícil quando tem muitos servidores, pois é preciso vigiar continuamente os recursos sistema e as atualizações necessárias para cada um deles.
O seguinte script permite criar um relatório enviado todos os dias por e-mail ao administrador e indicar o estado do disco rígido e as atualizações necessárias (para um sistema Debian, para os outros sistemas é preciso adapta em função dos sistemas de pacotes disponíveis :
#!/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
O script acima permite de afixar um alerta no sujeito da mensagem se o disco hda1 tem uma taxa de preenchimento superior à 80%. O sistema de caixas de entrada de mensagens utilizadas para envio no exemplo é qmail, mas qualquer outro comando similar (por exemplo /usr/sbin/sendmail) pode ser utilizado.
Basta em seguida tornar este script executável, por exemplo :
chmod +x /home/user/script/dailyreport.sh
Enfim, a criação de uma entrada na crontab permitirá o envio cotidiano (5h00 da manhã no exemplo aqui abaixo) da mensagem por e-mail:
crontab -e
Inserir a seguinte linha:
00 5 * * * /home/user/script/dailyreport.sh > /dev/null 2>&1
Tradução feita por Ana Spadari