Teamspeak 3 Autostart unter Linux
Ist es Ihnen zu lästig nach jedem Server Neustart Teamspeak manuell zu starten?
Dazu gibt es eine einfach Lösung.
Sie sollten bereits aus Sicherheitsgründen einen extra Benutzer angelegt haben, mit welchem Sie Teamspeak ausführen. Wenn nicht sollte dieses schleunigst geändert werden.
z.b. mit:
useradd ts3user
Nun erstellen wir das Startscript mit dem Benutzer „root„.
Erstellen Sie eine neue Datei mit dem Namen „teamspeak3“ in den Ordner „/etc/init.d„.
z.B. mit:
touch /etc/init.d/teamspeak3
Damit es auch ausgeführt werden kann geben wir dem Script noch die nötigen Rechte dazu.
z.b. mit:
chmod +x /etc/init.d/teamspeak3
Fügen Sie nun den Inhalt des Scriptes ein. Hier muss der Pfad und der Benutzer angepasst werden, mit dem der Teamspeak Server gestartet werden soll.
Im Beispiel mit dem Benutzer „ts3user“ im Verzeichnis „/home/ts3user“. Hierfür kann ein beliebiger Editor benutzt werden wie z.B. VI oder MC.
#!/bin/sh # Erstellt von Webmaster www.ist-immer-online.de # https://www.ist-immer-online.de/2010/09/teamspeak-3-autostart-unter-linux/ # chkconfig: 2345 99 01 # description: Teamspeak 3 Server ### BEGIN INIT INFO # Provides: teamspeak3 # Required-Start: $all # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Description: Teamspeak 3 Server ### END INIT INFO USER="ts3user" DIR="/home/ts3user" case "$1" in start) su $USER -c "${DIR}/ts3server_startscript.sh start" ;; stop) su $USER -c "${DIR}/ts3server_startscript.sh stop" ;; restart) su $USER -c "${DIR}/ts3server_startscript.sh restart" ;; status) su $USER -c "${DIR}/ts3server_startscript.sh status" ;; *) echo "Benutze: `basename $0` {start|stop|restart|status}" >&2 exit 1 ;; esac exit 0
Ihr Startscript ist damit schon fertig.
Jetzt müssen Sie nur noch das Script in den Autostart einfügen. Dieses geht am einfachsten automatisch mit dem Befehl
openSUSE/CentOS:
chkconfig teamspeak3 on
Debian/Ubuntu:
update-rc.d teamspeak3 defaults
Teamspeak starten
als root z.B. mit:
/etc/init.d/teamspeak3 start
oder
als einfacher Benutzer mit:
/home/ts3user/ts3server_startscript.sh start
Viel Spaß und Erfolg damit 🙂
Ihr dürft gerne auf diesen Beitrag linken, kopiert aber nicht 1:1 den Inhalt in Foren oder Blog´s als eure eigenen Inhalte! Eine Verlinkung reicht aus, und muss nicht kopiert bzw. komplett zitiert werden. Das Init Script wird ggf. noch angepasst, falls doch mal was nicht klappen sollte.
Vielen Dank für das Tutorial, bist mir ne echte Hilfe. 🙂
Merci!
Mal abgesehen davon, das ich erstmal die chmod-Zeile überlesen hatte
und die Konvertierung von DOS nach Unix (mal wieder) vergessen hatte,
hats wunderbar geklappt!
Dankeschön!
Super Sache, klappt 1a, so muss ein kleines HowTo aussehen!
Danke!
hi leute, bei mir kommt folgender fehler:
insserv: Script teamspeak3 is broken: incomplete LSB comment.
insserv: missing `Required-Stop:‘ entry: please add even if empty.
Der Wert für Required-Stop wurde hinzugefügt. 🙂
Hi Leute,
Ich bekomme bei dem Eintrag als Autostart folgende Meldung:
update-rc.d: using dependency based boot sequencing
ka was ich machen soll.
Gruß Leon
P.S. schöne Beschreibung Danke dafür
Hi,
das war der hinweis das die Autostart dateien angelegt wurden.
also sorry für den doppelpost und es geht alles.
DANKE
Gruß LEON
Huhu…danke für das Tut. allerdings bin ich ein vollkommener Linux Anfänger und verstehe nicht genau was mir folgende Meldung sagt :
vadmin199:/home/ts/teamspeak# /etc/init.d/teamspeak3 start
bash: /etc/init.d/teamspeak3: /bin/sh^M: bad interpreter: Datei oder Verzeichnis
Habe diese Meldung bekommen nach dem Befehl:
/etc/init.d/teamspeak3 start
Das Script wurde zwar in den Autostart geschrieben, allerdings startet der Teamspeakserver auch nicht nach dem Server Neustart…
Lieben Gruß, Pierre
Entweder ist Verzeichniss falsch im Script oder evt ein Fehler beim kopieren, /bin/sh^M sieht komisch aus.
Kannst Script sonst auch manuell starten
cd /etc/init.d
./teamspeak3 start
Vergleich mal ob dass was kopiert hast mit dem Script von hier passt und auch Verzeichniss korrekt ist.
Vielen vielen Dank!
Bestes und einfachstes Tutorial zu diesem Thema!
Du hast mich gerettet 🙂
Ich hatte vorher ein anderes Script gehabt, war aber vollends unbrauchbar, habe dieses hier genommen, musste lediglich den Benutzer und das Verzeichnis anpassen, damit auf ‚ts3server_startscript.sh‘ zugegriffen werden kann.
Hallo der, der immer online ist!
Dein Script ist einfach super und ich freue mich, dass der Teamspeakserver nun immer automatisch startet, doch kann ich nicht wirklich rauslesen für was die ganzen Informationen in dem Script sind.
Ich habe starkes Interesse daran das Skript zu verstehen und würde mich über eine kleine Erklärung freuen.
Wofür sind die Init Infos „Required-Start: $all“, „Default-Start: 2 3 4 5“ und „Default-Stop: 0 1 6“ und wie kommen diese Werte zu stande?
Wenn dies zu simple ist und ich einfach keinen Plan habe, dann fehlt mir wohl grundlegendes Wissen über Shellscripts. Aber selbst in diesem Fall bitte ich euch mich zu informieren 🙂
Required-Start: $all besagt, dass erst mal alle Dienste gestartet werden auf dem Server bevor Teamspeak gestartet werden soll. Wenn du z.B. TS mit mysql statt sqlite3 Datenbank betreibst, wäre es schlecht, wenn mysql noch nicht gestartet ist, dann würde TS die Datenbank nicht finden, und sich beenden.
Schaue besser mal in den Wiki http://wiki.ubuntuusers.de/Dienste dort wird es erklärt was Dienste und Runlevel angeht.
Hi Leute ich hoffe ihr könnt mir helfen^^
Das Script startet den Server nicht … —–>
Beim Ausführen des Scriptes bekomme ich folgende meldung:
:~# /etc/init.d/teamspeak3 start
: No such file or directorye 1: #!/bin/sh
: command not foundak3: line 14:
: command not foundak3: line 15:
: command not foundak3: line 18:
‚etc/init.d/teamspeak3: line 19: syntax error near unexpected token `in
‚etc/init.d/teamspeak3: line 19: `case „$1“ in
Sieht nach einen Kopierfehler aus, nicht im Binärmodus kopieren.
Verwende sonst mal einen anderen Editor, z.B. WinSCP.
Sei gegrüßt,
ich verwende deine Anleitung für meinen TS3 Server und bin bisher super zufrieden.
Ich habe das Script, der Anleitung nahc, auch mit meinen Daten gefüttert, doch will er den TS3 Server einfach nicht mitstarten, ich bekomme auch keinerlei Fehlermeldungen, was könnte da schief gelaufen sein?
Dann schau mal in /etc/init.d ob du dort in den rc Ordnern den Eintrag zum Autostart findest. Müsste S99teamspeak.sh oder so ähnlich heißen.
Probiere doch mal den manuellen Start aus.
cd /etc/init.d
./teamspeak3 start
Danke für die schnelle Antwort.
Also in den RC Ordner sind alle datien vorhanden.
wenn ich das sript über „./tsauto start“ ausführen möchte, findet er die Datei nicht.
Zur Richtigstellung, ich habe das Script von „teamspeak3“ in „tsauto“ umbenannt gehabt, bevor ich es auf den Server geschoben habe.
Dies ist die Meldung die mir ausgegeben wird.
/etc/init.d# ./tsauto.sh start
-bash: ./tsauto.sh: No such file or directory
Wenn die Datei nicht existiert musst du diese Anlegen bzw. richtig umbenennen.
Auch muss die Datei Rechte zum ausführen haben. Hast du dieses jeweils mit root gemacht?
Entsprechende REchte sind vergeben.
habe jetzt das Script mal aus der ini.d genommen und alle damit zusammenhängende aus den rc Ordnern.
Habe das Script dann wieder in den ini.d geschoben und den Updatebefehl ausgeführt, jedoch schreibt er diese nicht mehr in die rc Ordner.
Die Rechte passe ich natürlich immer gleich an.
Ich bin so langsam überfragt.
Du kannst ja erst mal manuell das Script starten und sehen ob es klappt. Wenn ja dann halt nochmal “update-rc.d tsauto defaults” ausführen.
Hab alles nochmals von „0“ gemacht, das System neu gestartet und nochmals versucht.
Alles ist dort wo es sein sollte, auch die Rechte stimmen.
—————-
cd /etc/init.d
./tsauto start
—————-
gemacht und er sagt mir dennoch:
—————-
/etc/init.d# ./tsauto start
-bash: ./tsauto: No such file or directory
Könnte es am Ubuntu selbst liegen?
Wenn ./tsauto.sh start auch nicht geht, dann mal im Script #!/bin/sh durch #!/bin/bash ersetzen, sonst mal in entsprechenden Foren um Hilfe bitten.
Mir bleibt nichts anderes übrig als mich bei dir zu bedanken.
Das mit dem bash wars gewesen.
„Mensch fix maln Autostartscript draufwerfen……“
4 Stunden später die Lösung 😛
Ich danke dir nochmals und wünsche dir noch einen schönen Abend.
LG
Chris
Hallo,
das mein TS3-Server startet wenn ich den LINUX-Server starte, funktioniert wunderbar!
Aber ich möchte wenn der TS3 aus irgendwelchen Gründen DOWN geht auch dass er dann neu gestartet wird.
Dazu habe ich in der Datei /etc/crontab die Zeile
*/1 * * * * root ps ax | grep ‚ts3server_linux‘ | grep -v ‚grep‘ || /etc/init.d/teamspeak start
eingefügt. Gemäß der ps -ax Abfrage mittels grep müsste doch dein Script auch in diesem Falle greifen – tut es aber nicht! 🙁
Hast Du mir einen Rat wie ich das realisiren kann?
Gruß M@rco
Hallo,
das Problem hat sich erledigt – war meine Dummheit! 🙁
Ich hatte bei /etc/init.d/teamspeak3 start
die 3 vergessen im Namen vergessen /etc/init.d/teamspeak start
…wie sage ich immer: Kaum macht mann es richtig funktionierts! 🙂
Gruß M@rco
PS: …aber vielleicht willst Du ja dieses Feature trotzdem noch in dein Script mit aufnehmen …
Hey,
bekomme immer die Meldung:
root@mitscher:/etc/init.d# ./teamspeak3 start
bash: ./teamspeak3: /bin/bash^M: bad interpreter: No such file or directory
beim manuellen ausführen des Startscripts, was kann ich dagegen tun?
Dazu gibt es doch schon Kommentar, erste Zeile ggf. tauschen, und prüfen ob richtig kopiert wurde. Script nicht auf Windows PC erstellen und im Binärmodus kopieren.
Hey,
danke für die schnelle Antwort. Wie mache ich das am blödsten ohne Windows?
Ich verwende über Konsole für sowas Midnight Commander ganz gerne.
Dazu einfach mc installieren und starten, dann mit F4 bearbeiten.
Gibt aber auch noch andere diverse Editoren.
Für Rest wende dich an Serverforen, Grundkenntnisse sollten vorhanden sein, wer einen V- oder Root Server betreibt.
Grüße,
besten dank, habs mit VI hinbekommen.
Super Startscript!
Also kann man generell davon ausgehen dass Linux mit im windows verfassten Texten nicht zurecht kommt?
Grüße
Ja kann Probleme geben mit der Kodierung, siehe z.B. http://wiki.ubuntuusers.de/Zeichensatz-Konverter
Mit MC, WinSCP ect. hatte ich aber solche Probleme bisher nicht.
Für Windows Benutzer gibt es Notepad++
Unten Rechts wo DOS/windows Steht kann man mit der Rechten Maustaste auf Konvertiere auf Unix (LF) und anschließend Abspeichern.