Envia um ping para um lista pré-determinada e envia seu resultado para o e-mail do administrador.
Terá que ser criado um arquivo chamado list1.txt, com os IPs que deseja monitorar.
Esconder código-fonte
#!/bin/bash
List=list1.txt
echo "Data e Horario:`date`" >> /tmp/arquivo`date +%d`
cat $List | while read ip
do
ping -c3 $ip > /dev/null
if [ $? = 0 ]; then
echo "pingou $ip" >> /tmp/arquivo_`date +%d`
else
echo "não pingou $ip" >> /tmp/arquivo_`date +%d`
fi
done
mail -s "Resposta dos pings" adt.rodrigo@gmail.com < /tmp/arquivo`date +%d`
Scripts recomendados
Ver endereço IP externo com DuckDuckGo + wget
User manager - o gerenciador de usuários para Slackware Linux
Baixar jSMS no Gutsy
Myhard - Informações sobre seu hardware
Kronos - Sincronização de arquivos remotos
Comentários
O comando mail não funcionou.
O comando mail, geralmente está em /usr/bin/mail. Procure, se este comando está no local indicado. Qual o erro que é mostrado ao se utilizar o comando mail, ele não executa ou gera um erro? Poste aqui no VOL.
Mensagem
O comando mail, geralmente está em /usr/bin/mail. Procure, se este comando está no local indicado. Qual o erro que é mostrado ao se utilizar o comando mail, ele não executa ou gera um erro? Poste aqui no VOL.
Esse script foi de muita utilidade, agora tenho uma duvida.
Em alguns casos, os ips só respondem ao comando ARP, nesse script ele vai ignorar e dizer que o ip não pingou. Teria alguma forma de incrementar isso no script para ele responder como "só responde a ARP" ?
Mensagem
Esse script foi de muita utilidade, agora tenho uma duvida.
Em alguns casos, os ips só respondem ao comando ARP, nesse script ele vai ignorar e dizer que o ip não pingou. Teria alguma forma de incrementar isso no script para ele responder como "só responde a ARP" ?
Cara, sei que faz tempo mais que puder ajudar eu agradeço,
quando executo o script ele diz:
@heliogiffoni-PC:~$ /scripts/sistema.sh
cat: lista1.txt: Arquivo ou diretório não encontrado
e existe essa lista criada dentro da mesma pasta e o caminho do script está esse :
List=lista1.txt
já tentei:
List=/scripts/lista1.txt
e nada
????
Mensagem
Cara, sei que faz tempo mais que puder ajudar eu agradeço,
quando executo o script ele diz:
@heliogiffoni-PC:~$ /scripts/sistema.sh
cat: lista1.txt: Arquivo ou diretório não encontrado
e existe essa lista criada dentro da mesma pasta e o caminho do script está esse :
List=lista1.txt
já tentei:
List=/scripts/lista1.txt
e nada
????
Cara, cria um arquivo no diretório atual mesmo, faz o seguinte:
#!/bin/bash
ListaHosts=hosts.txt
diretorio=$(pwd)
Arquivo=monitoracao-`date +"%Y-%m-%d"`.txt
echo -e "\nData e Horário: `date`" >> $Arquivo
echo -e "\n"
cat $ListaHosts | while read ip
do
ping -c1 $ip > /dev/null
if [ $? = 0 ]; then
echo "OK: $ip" >> $Arquivo
else
echo "FAILED $ip" >> $Arquivo
fi
done
sort $Arquivo
Mensagem
Cara, cria um arquivo no diretório atual mesmo, faz o seguinte:
#!/bin/bash
ListaHosts=hosts.txt
diretorio=$(pwd)
Arquivo=monitoracao-`date +"%Y-%m-%d"`.txt
echo -e "\nData e Horário: `date`" >> $Arquivo
echo -e "\n"
cat $ListaHosts | while read ip
do
ping -c1 $ip > /dev/null
if [ $? = 0 ]; then
echo "OK: $ip" >> $Arquivo
else
echo "FAILED $ip" >> $Arquivo
fi
done
sort $Arquivo
Muito obrigado.
Editei o meu, segue para consulta futura:
#!/bin/bash
List=/home/user/Documents/ips_list.txt
echo "Date & Hour: `\date "+%H:%M:%S - %d %B %Y - %a"`" >> /home/user/Documents/Ping-Test
cat $List | while read ip
do
ping -c 5 $ip > /dev/null
if [ $? = 0 ]; then
echo "Ping OK: $ip" >> /home/user/Documents/Ping-Test
else
echo "Dont response $ip" >> /home/user/Documents/Ping-Test
fi
done
Mais uma vez obrigado, abs.
José Oliveira
Mensagem
Muito obrigado.
Editei o meu, segue para consulta futura:
#!/bin/bash
List=/home/user/Documents/ips_list.txt
echo "Date & Hour: `\date "+%H:%M:%S - %d %B %Y - %a"`" >> /home/user/Documents/Ping-Test
cat $List | while read ip
do
ping -c 5 $ip > /dev/null
if [ $? = 0 ]; then
echo "Ping OK: $ip" >> /home/user/Documents/Ping-Test
else
echo "Dont response $ip" >> /home/user/Documents/Ping-Test
fi
done
Mais uma vez obrigado, abs.
José Oliveira
Contribuir com comentário
Enviar