Verificando disco de backup e enviando e-mail

Publicado por Thierry em 16/06/2014

[ Hits: 2.546 ]

 


Verificando disco de backup e enviando e-mail



O objetivo deste script, é criar uma rotina de um possível e já existente sistema de monitoramento (Zabbix, Nagios, etc), que alerta o responsável pelo backup, ou área do backup, a indisponibilidade de espaço necessário para realização do backup naquele momento (ou pelo menos, algumas horas antes), auxiliando na intervenção do responsável.

Considere que o espaço mínimo necessário para um backup seja de 60 GB e que por diversas vezes o backup não foi realizado, pois, o responsável esqueceu de remover os arquivos ou copiar para outra área, este script irá enviar para as áreas responsáveis um e-mail alertando que não existe espaço em disco para realizar a atividade.

Este script faz a utilização do SSMTP (basta instalar via yum ou apt-get):

Exemplo do SSMTP:

# cat /etc/ssmtp/ssmtp.conf | grep -v "#"

Alert=Informacoes
mailhub=mail.xibitoto.net.br:465
Hostname=EBS
FromLineOverride=YES
UseTLS=YES
UseSTARTTLS=YES
[email protected]
AuthPass=hadouken
AuthMethod=LOGIN

# cat /etc/ssmtp/revaliases | grep -v "#"
 root:[email protected]:mail.xibitoto.net.br:25

Script:

#!/bin/bash
echo "Criador - Thierry Vanden Broucke"
echo "Versao 1.2"
echo "ChangeLog :"
echo " - 1.2 - Ajuste de tratamento de valores acima de 60 GB"
echo " - 1.1 - Ajuste de tratamento de numeros reais"
echo " - 1.0 - Criacao do script, tratando o valor do disco de backup informando caso o espaco esteja abaixo de 60 GB"

touch /u01/scripts/spaceResult.txt

echo "To: [email protected]
Subject: Alerta de espaco em disco do Backup - Informacoes de alerta" > /u01/scripts/spaceResult.txt

date >>  /u01/scripts/spaceResult.txt
echo "Informacoes de espaco em disco em /mnt/backup" >> /u01/scripts/spaceResult.txt

DISKSIZEINT=`df -h /mnt/backup/ | awk '{ print $3  }' | tail -n 1 | cut -d "G" -f 1`


if [ $DISKSIZEINT -gt 61 ];
then
echo "Espaco em disco com folga."
exit
fi


if [ $DISKSIZEINT -lt 60 ];
then
echo "A falta de espaco em disco impede que o proximo processo de Backup seja realizado.

Espaco minimo necessario: 60 GB

Espaco atual livre: $DISKSIZEINT GB" >> /u01/scripts/spaceResult.txt
/usr/sbin/ssmtp [email protected] < /u01/scripts/spaceResult.txt
/usr/sbin/ssmtp [email protected] < /u01/scripts/spaceResult.txt
/usr/sbin/ssmtp [email protected] < /u01/scripts/spaceResult.txt
elif [ `echo $DISKSIZEINT | grep "."` ];
then

echo "A falta de espaco em disco impede que o proximo processo de Backup seja realizado.

Espaco minimo necessario: 60 GB

Espaco atual abaixo de 10 GB

Espaco atual livre: $DISKSIZEINT GB" >> /u01/scripts/spaceResult.txt
/usr/sbin/ssmtp [email protected] < /u01/scripts/spaceResult.txt
/usr/sbin/ssmtp [email protected] < /u01/scripts/spaceResult.txt
/usr/sbin/ssmtp [email protected] < /u01/scripts/spaceResult.txt

fi

Espero ter ajudado alguém.

Outras dicas deste autor

Utilizando o uShare como A/V media center

Leitura recomendada

Reset Router WAG120N pelo Shell

Novo script de autenticação para o Velox da Telemar

Clonar HDs em máquinas Windows 7 via servidor openSUSE

Verificando montagem de unidade para abrir programa

online_man - Páginas de manual online no terminal

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts