hallo Community,
ich trau mich fast garnicht das Thema zu erstellen, doch möchte ich ein Script schreiben, das kontrolliert ob mein mySQLDienst gestartet ist oder nicht und dann einen Wert zurück gibt.
Dieses Script soll von unserem Monitoring System gestartet werden und der zurückgegebene Wert soll dann kontrolliert werden. Leider hab ich mit nicht wirklich das gefunden was mir helfen könnte. Irgendwie waren meine Suchbegriffe wohl nicht speziel genug
Vielen Dank für eure Kommentare.
MfG
Script um Dienst zu kontrollieren
Re: Script um Dienst zu kontrollieren
Vielleicht reicht es dir einfach "/etc/init.d/mysql status" auszulesen und zu schauen ob der Rückgabewert 0 (ok) oder eben nicht ok ist.
$? enthält den Rückgabewert der Funktion. $aus enthält die Ausgabe selbst, die aber für deinen Zweck eigentlich nicht benötigt wird. Welche Überwachung nutzt du denn? Vielleicht gibt es ja eine entsprechende Bibliothek genau für deine Überwachung.
Code: Alles auswählen
#!/bin/sh
aus=$(/etc/init.d/mysql status)
echo $?
$? enthält den Rückgabewert der Funktion. $aus enthält die Ausgabe selbst, die aber für deinen Zweck eigentlich nicht benötigt wird. Welche Überwachung nutzt du denn? Vielleicht gibt es ja eine entsprechende Bibliothek genau für deine Überwachung.
Re: Script um Dienst zu kontrollieren
Wir nutzen PRTG der FirmaPaessler.
Das mit OK und nicht OK würde mir wirklich schon reichen
Das mit OK und nicht OK würde mir wirklich schon reichen
Re: Script um Dienst zu kontrollieren
Hätte auch noch eine Idee. Keine Ahnung ob die besser ist oder nicht.
Code: Alles auswählen
pgrep privoxy >/dev/null && echo "yes"
pgrep privoxy || echo "no"
Re: Script um Dienst zu kontrollieren
Kann mir jemand verraten wo das Stammverzeichnis für Skripte unter Debian 7 ist?Achtung: Das Skript wird auf dem Gerät ausgeführt, auf dem der Sensor angelegt wird. Das Arbeitsverzeichnis für das Skript ist das Stammverzeichnis für Skripte auf dem Linux/Unix Zielsystem.
Re: Script um Dienst zu kontrollieren
Die Formulierung ist unueblich, vermutlich ist damit das $HOME des ausfuehrenden Benutzers gemeint oder andernfalls /. Auch /tmp/ waere ein sinnvoller Ort fuer so Aktionen, aber das hat nix mehr mit der Aussage zu tun.thomas91 hat geschrieben:Kann mir jemand verraten wo das Stammverzeichnis für Skripte unter Debian 7 ist?Achtung: Das Skript wird auf dem Gerät ausgeführt, auf dem der Sensor angelegt wird. Das Arbeitsverzeichnis für das Skript ist das Stammverzeichnis für Skripte auf dem Linux/Unix Zielsystem.
Speziell bei Datenbanken wuerde ich mich nicht auf irgendwelche laufenden oder nicht laufenden Prozesse verlassen, sondern eine Test-Query absetzen. Zum Beispiel koennte man einen unberechtigten [1] MySQL-Benutzer mit genau einer Tabelle anlegen und als Test
Code: Alles auswählen
#!/bin/sh
echo 'select * from testtable limit 1;' \
| mysql -u monitoring -p password somedatabase 2>&1 >/dev/null
Gruss Cae
[1] Das Passwort dieses Benutzers wird auf der Kommandozeile uebergeben und ist daher fuer jeden Systembenutzer sichtbar. Daher muss der MySQL-Benutzer so wenig wie moeglich Rechte haben.
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.
—Bruce Schneier
Re: Script um Dienst zu kontrollieren
http://dev.mysql.com/doc/refman/5.1/en/ ... -user.html[1] Das Passwort dieses Benutzers wird auf der Kommandozeile uebergeben und ist daher fuer jeden Systembenutzer sichtbar. Daher muss der MySQL-Benutzer so wenig wie moeglich Rechte haben.
Unix is user-friendly; it's just picky about who its friends are.