PDA

View Full Version : ts-server bei reboot starten


R1ddl3r
14-08-2004, 13:42
ich mache hier mal dafür einen neuen thread auf.
ich möchte, dass sich der ts-server bei jedem neustart von linux startet.
nur ich kriege das nicht hin.

habe die crontab geöffnet, dort "@reboot server cd /home/server/tss2_rc2/ ./server_linux" reingeschrieben. funktioniert nicht.
auch "@reboot server /home/server/tss2_rc2/teamspeak2-server_startscript start" funktioniert nicht.

wie kriege ich das nun hin??
habe Suse Linux auf meinem root am laufen.

Rooty
14-08-2004, 13:59
Ich glaub dieser Link hilft dir weiter:

Crontab howto (http://www.rootforum.de/forum/viewtopic.php?t=16846&postdays=0&postorder=asc&start=0)

R1ddl3r
14-08-2004, 14:09
tut er nicht, denn diesen hab ich schon durchgelesen. deshalb bin ich auch auf "@reboot server /home/server/tss2_rc2/teamspeak2-server_startscript start" gekommen.

Rooty
14-08-2004, 15:28
dann probiert mal das da:

init.d (http://www.rootforum.de/forum/viewtopic.php?t=22231&highlight=teamspeak)

R1ddl3r
14-08-2004, 17:41
ok, soweit verstehe ich das.
aber man muss das ganze ja unter "root" machen. wie kann ich das jetzt so einstellen, dass das script als "user" gestartet wird?
wenn ich ein runlevel als "user" anlegen möchte, dann schreibt er, dass ich zu wenig rechte hab.

efryse
16-08-2004, 18:57
Also ich hab das Ganze mit Cron hinbekommen:
Mein User heißt "tss". Der Pfad ist also "/home/tss/tss2_rc2".
Das Problem ist wohl, dass das Skript gefunden wird, aber die Pfade wohl alle absolut angegeben werden müssen (ich kenne mich zwar nicht so gut aus mit Linux, aber dies scheint mir nach dem Studium von "/var/mail/tss" das Problem zu sein).
Also habe ich ein Skript namens "crontss2" in "/home/tss/tss2_rc2" mit folgendem Inhalt erstellt:
#! /bin/bash
cd /home/tss/tss2_rc2
/home/tss/tss2_rc2/teamspeak2-server_startscript start
exit 0
Das Skript muss dann natürlich ausführbar sein.
Am Besten noch einen Testlauf machen und von der Konsole das Skript starten und überprüfen, ob der Server läuft ("teamspeak2-server_startscript status").
Danach hab ich mich als User "tss" eingeloggt und "crontab -e" ausgeführt. "i" gedrückt und "@reboot /home/tss/tss2_rc2/crontss2" eingegeben. ESC gedrückt, ":wq" eingegeben und alles läuft prima.
Du müsstest natürlich den Usernamen "tss" in den Pfaden durch "server" ersetzen.

efryse
17-08-2004, 22:15
Ich hab noch eine kleine Ergänzung:
Wenn der Rechner nicht ordnungsgemäß runtergefahren wurde (kann ja mal passieren), befindet sich die tsserver2.pid noch in dem Verzeichnis und der Server startet nicht. Es könnte also sinnvoll sein, in das Skript noch eine Zeile "rm /home/tss/tss2_rc2/tsserver2.pid" (vor dem Start des Servers) zu ergänzen. Sollte kein Problem darstellen, da das Skript ja sowieso nur beim booten ausgeführt wird.

Michael
03-09-2004, 13:47
Also hier mal meine Version wie ich mein TeamSpeak bei Booten mitstarte: (Ich weiß das diese Version nicht gerade die sauberste ist, es ist aber eine möglichkeit)

VORAB: ICH ÜBERNEHME KEINE HAFTUNG AUF EVENTUELL AUFTRETENDE SCHÄDEN ! GETESTET WURDE DIESES "SCRIPT" UNTER DEBIAN 3.0

1. Shell öffnen
2. "su" eingeben.
3. Root-Passwort eingeben.
4. "vi /etc/crontab" eingeben.
5. Ganz unten folgende Zeilen hinzufügen:

#TeamSpeak

Und darunter:

@reboot user /home/tss2_rc2/server_linux

Wobei "user" durch den Benutzer ersetzt werden soll der den Server starten sollte (NICHT ROOT !!!). "/home/tss2_rc2/" sollte natürlich durch das eigene Verzeichnis ersetzt werden.

Rooty
03-09-2004, 18:51
wäre da nicht besser das beiliegende startscript zu nehmen ?
und das per cron zu starten ?

Michael
03-09-2004, 23:49
Ja, dass wäre es wohl, geht aber dann nicht so einfach. Ich habe es mit

@reboot user /home/tss2_rc2/teamspeak2-server_startscript start

auch ausprobiert, hat aber nicht funktioniert. Wenn das einer realisieren könnte wäre ich dankbar.

Rooty
04-09-2004, 11:58
die frage ist warum musst du so oft neustarten hört sich ja fast nach ner M$ Kiste an. Also meine Kiste lauft seit 120 tagen ohne reboot. und ist auf dem neusten stand.

Michael
04-09-2004, 12:41
Ne, ich muss auch nicht oft neustarten, das ganze hat bei mir folgenden sinn:

Ich muss oft im Aussendienst arbeiten und bin daher von Montag bis Donnerstag nicht zuhause. Mein Provider vom Mietserver bietet mir den Service an den kompletten Server im Notfall zu resetten. Also habe ich mir ein PHP-Script geschieben, dass auf dem Index bekannter Websites mit eingebunden ist. Das Script prüft im Hintergrund ob der TeamSpeak-Server läuft. Wenn er läuft, passiert nix. Wenn er nicht läuft, werden automatisch 2 E-Mails versendet (ohne das der Besucher das mitbekommt, vielleicht hast DU mir auch schon soeine Notfall-E-Mail gesendet :)), eine zu meinem Provider, dass Sie den Server neustarten sollen (Mit dem Cronjob startet TeamSpeak dann automatisch mit ausser wenn ein "wirkliches" Problem mit dem Server besteht) und eine auf mein E-Mail-Postfach, dass von einem anderen Provider überwacht wird und mir sofort eine SMS auf mein Handy sendet sobald er down ist.

Nette sache ;)