Checagem de ping com link down e link up
Publicado por André Canhadas (última atualização em 25/09/2015)
[ Hits: 5.164 ]
Homepage: www.andrecanhadas.com.br
Achei muitos por aí mas tive a necessidade de fazer um que fizesse o envio de apenas um e-mail em caso de falha e outro quando o link voltasse e este script faz uma checagem de ping para um ou mais IPs e envia um e-mail em caso de falha de ping e outro assim que o ping for restabelecido.
Sugestão: crie um agendamento no crontab de 2 em 2 minutos.
Obs.: precisa ter um Postfix pré-configurado para o envio de e-mail.
#!/bin/bash # /root/iplist.txt = lista de Ips a serem monitorados (um por linha) for i in $( cat /root/iplist.txt ) do # Checa o ping ping -q -c2 $i > /dev/null # Se for positivo if [ $? -eq 0 ] then # Checa se existe um arquivo com o nome do IP monitorado if [ -f "/root/$i" ]; # Se o arquivo existir pq foi criado quando falhou o ping ele envia o email de Link UP e apaga o arquivo para enviar apenas um email then mail -s "Link UP" alguem@algo.com.br <<< "$i" rm "/root/$i" fi else # Se o arquivo não existir e tiver falha de ping ele envia o email de link down e cria o arquivo if [ ! -f "/root/$i" ]; then mail -s "Link Down" alguem@algo.com.br <<< "$i" echo "$i" > /root/$i fi fi done
Descom.sh - Descompactador de arquivos
Criar pacote Debian o firefox de br.mozdev.org
Instalação do aplicativo Franz
Instalar o screenFetch em qualquer distribuição
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Criando uma VPC na AWS via CLI
Multifuncional HP imprime mas não digitaliza
Dica básica para escrever um Artigo.
Como Exibir Imagens Aleatórias no Neofetch para Personalizar seu Terminal
Como usar o Git apenas em um servidor interno, usando apenas o git? [R... (2)