
		canhotojam
		
		(usa CentOS)
		
		Enviado em 08/05/2013 - 10:39h 
		Pessoal,
       preciso configurar uma rotina em shellscript, no qual testo a resposta de um ping, e dependendo da resposta, eu continuo testando até que mude o status do mesmo (enquanto o host estiver respondendo, ok, quando parar, preciso tomar uma ação).
       A ação que preciso tomar, é enviar um email sinalizando que o host parou de responder, até ai beleza; o que eu preciso, é que quando ele enviar o email, envie uma unica vez, e que só vai enviar novamente quando o host voltar a responder.
       No momento, cheguei nessa parte do script, mas não sei como fazer o mesmo parar de enviar email quando já tiver enviado, e voltar a enviar quando o host voltar.
       Uso o zimbra para serviço de email interno:
=============================================================================================================
while :; do
PING=`ping -c 1 192.168.X.X | grep 64\ bytes | awk '{print $6}' | cut -c5-7`
if [ "$PING" == "126" ]
then
        echo "HOST de Pé" > /var/log/status_host
else
(echo "Subject: Host Down - `date +%d/%m/%Y-%kh%Mm`";echo "Sem conectividade com o HOST") | /opt/zimbra/postfix/sbin/sendmail ti@mail.com
fi
done
==============================================================================================================
       Se o host cair, ele fica mandando email direto, não consegui encontrar uma forma dele parar, assim que já tiver enviado o email; com certeza é pura lógica, acredito que devo usar um contador para tal, mas não sei onde ainda.
       Como devo proceder?