Page 1 of 1

sh Script ping eines Servers

Posted: 2005-09-28 16:59
by xamibor
Hi,

ich bin etwas unerfahren was das Programmieren von sh scripts. Ich will von meine Server lokal einen ping auf meinen root server machen der alle 5 Minuten ausgeführt wird .... was anneversich kein Problem ist:

Code: Select all

ping -n -c 1 xxx.xxx.xxx.xxx || echo "Server ist nicht erreichbar"|mail -s "Server ist nicht erreichbar" meine@email.de
Nun problematisch ist es nur was ist wenn der Server down ist und ich die email erst eine Stunde später lesen kann ...

Wie sollte ich ein Script schreiben das wenn beim ersten Ping fehler einen weiteren ping in 2 Minuten ausführt und dann erst wieder nach erreichbarkeit ... sozusagen eine wieder "Gut Meldung" ...

hat jemand ein tipp wie ich so etwas mache bzw. wie man so etwas schreibt?

Danke

Re: sh Script ping eines Servers

Posted: 2005-09-28 17:16
by chris76
Warum verwendest zu nich z.b. Nagios oder dessen Plugins?
Das bietet dir weit mehr möglichkeit als nur der einfache Ping.

Re: sh Script ping eines Servers

Posted: 2005-09-28 17:19
by xamibor
Nagios ist gut ich bin am anfang und das ist etwas zu mächtig für mich .... ich dachte mir nur mit diesem Script die dienstleistung eines externen server überwachungs tool zu ersparen ...

Re: sh Script ping eines Servers

Posted: 2005-09-28 17:21
by chris76
Du kannst dir doch nagios/Plugins auf deinem lokalen Rechner installieren von dem aus Du den Ping machen willst.

Re: sh Script ping eines Servers

Posted: 2005-09-28 19:30
by captaincrunch
Ersetz deine kleine ||-Kombi durch ein einfaches "if [...]; then", dann passt die Geschichte.

Re: sh Script ping eines Servers

Posted: 2005-10-20 13:13
by eof__
CaptainCrunch wrote:Ersetz deine kleine ||-Kombi durch ein einfaches "if [...]; then", dann passt die Geschichte.
ping -n -c 1 xxx.xxx.xxx.xxx || ( echo "Server ist nicht erreichbar"|mail -s "Server: `hostname` ist nicht erreichbar" meine@email.de )

sollte es auch tun. :wink: