Hallo liebe Community,
ich habe ein kleines Problem, stehe bei der Lösung aber auf dem Schlauch…
Und zwar habe ich einen vServer bei Server4you und darauf einen
Teamspeak-Server laufen.
Nun ist es so, daß der TS-Server sich manchmal von selbst beendet.
Bin noch nicht dahintergekommen warum, aber hatte da folgende Idee:
Irgendein Script basteln, was per cron den Status abfragt und den Server bei
bedarf neu startet, also etwa so:
grep | top nach ‘server-linux’
wenn ‘server-linux’ da ist -> exit
wenn nicht -> ls ob ts.pid im Verzeichnis existiert
wenn nicht -> starte TS-Server neu -> exit
wenn ja -> rm ts.pid und starte TS-Server neu -> exit
exit
Wie müßte das Script ungefähr aussehen?
Bin leider nicht so der Bash-Programmierer.
Vielleicht kann mir ja jemand einen Tip geben.
Dankeschön!
Hallo Lars,
schau Dir doch mal monit an, das Packet macht so was.
Mathias
[1] http://www2.uibk.ac.at/zid/software/unix/linux/monit.html?style=print
Hi,
monit (siehe oben) wird die Aufgabe die Du hast erfüllen, falls Du trotzdem ein eigenes Skript machen möchtest lohnt ein Blick in den “Advanced Bash Scripting Guide” [1].
Desweiteren ist der Befehl Du suchst etwas wie:
ps -ef | grep | grep -v grep
ps -ef zeigt alle laufenden Prozesse an mit ein paar zusätzlichen Feldern (genaueres siehe man ps). Das grep -v am Schluß ist dafür da, das der grep-Prozess selbst nicht angezeigt wird.
Damit und mit dem Guide sollte es Dir gelingen, das Skript zusammenzubasteln.
Grüße,
MaDMaik
Sieht gut aus, werde ich mal testen.
Danke!