No meu servidor Ubuntu, eu tenho o seguinte script em /etc/cron.daily
que me alerta por e-mail sempre que /dev/sdc
(minha /srv
partição) tem menos que 200MB de espaço livre.
ALERT=200
UNIT=M
PARTITION=/dev/sdc
df -B$UNIT | grep "^$PARTITION" |
while read partition size used free perc mnt ;
do
free_space=$(echo $free | tr -d $UNIT )
if [ $free_space -le $ALERT ]; then
echo "Partition $partition ($mnt) running out of space ($free) on $(hostname) as on $(date)" |
mail -s "Alert: $mnt almost out of disk space on $(hostname) - $free" root
fi
done
Inicialmente foi tirado e adaptado deste post no nixCraft . Salve isso em um arquivo em /etc/cron.hourly
como root, modifique as 3 primeiras linhas de acordo com seu servidor e necessidades, e torne o arquivo executável. Se você quiser executá-lo com mais frequência, salve-o como um script e crie um cron job regular.
Observe que você precisará de algo fornecendo o comando mail
, normalmente dos pacotes qmail-run
ou courier-mta
.