Strona 1 z 1

ping przez email jako informacja o statusie serwera

: 30 października 2008, 17:32
autor: zoozool

Kod: Zaznacz cały

#!/bin/bash
ADDR="zoozool.pl"
DATA=`ping -c10 zoozool.pl`
LOSS=`echo $DATA |awk '{print $18 }' | tr -d %`
if [ $LOSS = 80 ];
then
echo 0
else
echo dziala
fi
to jest mój skrypt jak go zmodyfikować gdy jak loss jest 80 wysyłało mejla?
Jakie paczki są odpowiedzialne za mail?
Ostatnio zainstalowałem to niby mail działało ale wiadomości nie wysyłało.

: 30 października 2008, 19:07
autor: markossx
jesli nie masz na tej maszynie smtp to powinieneś skonfigurować smarthosta dla smtp

Kod: Zaznacz cały

dpkg-reconfigure exim4-config
potem wiadomo:

Kod: Zaznacz cały

...
then
 mail -s "ALERT" < $log
...

: 30 października 2008, 19:33
autor: zoozool
Znalazłem jeszcze inną możliwość obejścia
gdy serwer nie działa
curlem wypełniam specialny formularz wysyłania e-mail i automatycznie wyśle plik przez mail()

: 30 października 2008, 19:44
autor: markossx
też dobre ;)
możesz również na sms

: 30 października 2008, 19:46
autor: zoozool
Tak,
wysyła na pocztę plusnet a ten wysyła do mnie sms :)

: 30 października 2008, 19:52
autor: markossx
dokładnie :mrgreen:

: 30 października 2008, 20:09
autor: zoozool
A masz może pomysł jak zrobić, powiadamianie o tym że serwer np ponownie odpowiada na ping?

: 30 października 2008, 20:11
autor: markossx
Jak to ponownie? Chyba nie rozumiem do końca o co chodzi?

: 30 października 2008, 20:15
autor: zoozool
pinguje serwer
nie odpowiada
wysyła mejla
Cały czas pinguje i nie odpowiada (byle nie wysyłał mi mejli co 10 min - jak to zabezpieczyć)?
Gdy serwer wstanie by wysłał e-mail ponownie o informacji że serwer wstał.
Masz pomysł.

: 30 października 2008, 20:26
autor: markossx
Teraz qumam, no nie wiem tak od razu;
trzeba by wprowadzić kilka warunków, np.: że jeśli w zadanej jednostce czasu stan się nie zmienia to nie wysyłaj, itd
Trzeba by trochę pokombinować z kodem basha, a ja niestety tak od ręki nie wymóżdżę... :-(

[ Dodano: 2008-11-08, 22:41 ]
Pomyślałem trochę nad Twoim problemem i myślę, że możesz to zrobić w jeden prosty sposób, jeśli Ciebie to jeszcze interesuje: :-D
- robisz jednego pinga
- odczytujesz ze zmiennej systemowej jaką wartość zwrócił ping (0 czy 1)
jak zwrócił 0 to ok, nie wysyłaj info
jak zwrócił 1 to jest lipa i wysyłaj
Można by to jeszcze rozbudować żeby wyłapać dokładniej jaki kod zwrócił pakiet icmp
i dodać to do maila :idea: