Simples Teamspeak3 Menü für die Shell

Heute gibt es mal ein kleines Menü für die Shell um die 4 Optionen des TS3 Startscript komfortabel zu nutzen und schnell mal in die letzten Zeilen des Logfiles reinzusehen.
Normalerweise hat startet man den Server auf der Shell mit diesem Script:

$ ./ts3server_startscript.sh {start|stop|restart|status}

Die Logfiles lassen sich bequem via tail aufrufen:

$ tail logs/ts3server_2011-[...]-.log

Starten wir und erstellen im TS3 Verzeichnis die Datei ts-menu.mnu

$ vi ts-menu.mnu

In diese legen wir folgenden Inhalt:

#!/bin/sh
# ts-menue.mnu
# done simple TS3 menu script under Unix
# Autor blue-matrix
# Twitter: @bluematrix
showMenu (){
clear
echo "t----------------------"
echo "t| Teamspeak 3 |"
echo "t----------------------"
echo "t| Optionen: |"
echo "t| 1 - TS3 Start |"
echo "t| 2 - TS3 Stop |"
echo "t| 3 - TS3 Restart |"
echo "t| 4 - TS3 Status |"
echo "t| 5 - TS3 Logs |"
echo "t| |"
echo "t| x - Exit |"
echo "t----------------------"
}

choice1 (){ ./ts3server_startscript.sh start ; echo „nPress Enter“ ; read DUMMY ; }
choice2 (){ ./ts3server_startscript.sh stop ; echo „nPress Enter“ ; read DUMMY ; }
choice3 (){ ./ts3server_startscript.sh restart ; echo „nPress Enter“ ; read DUMMY ; }
choice4 (){ ./ts3server_startscript.sh status ; echo „nPress Enter“ ; read DUMMY ; }
choice5 (){
clear ; ls logs/ ;
echo „nWelches Logfile soll angezeigt werden?“ ;
read log ;
echo „n“ ;
tail logs/$log ;
echo „nPress Enter“ ;
read DUMMY ;
}

while true
do
showMenu
read answer
case $answer in
1) choice1;;
2) choice2;;
3) choice3;;
4) choice4;;
5) choice5;;
x) clear ; exit 1;;
*) echo Eingabe ungueltig ; echo „nPress Enter“ ; read DUMMY ;;
esac
done

Nach dem die Datei gespeichert wurde diese noch ausführbar machen:

$ chmode +x ts-menu.mnu

Das Menü wird dann aufgerufen mit:

$ ./ts-menu.mnu

TS3 Menü für die Shell
TS3 Menü für die Shell

HINWEIS: Wenn beim Aufruf des Menüs am Zeilenanfang -e angezeigt wird kann im Script selbst die Option -e nach echo entfernt werden.

Teamspeak2 per apt-get auf Debian lenny installieren

Ein Teamspeak2-Server lässt sich ganz leicht via apt aufsetzen:

[root@666:~$]>apt-get update
[root@666:~$]>apt-get install teamspeak-server

Genauso einfach kann man den Teamspeak2-Server auch wieder deinstallieren:

[root@666:~$]>apt-get --purge remove teamspeak-server

Wichtige Pfade:
Das Passwort für den admin und superadmin befindet sich in
etc/teamspeak-server/passwort
die server.ini
/etc/teamspeak-server/server.ini

Letztere ist nur wichtig, wenn Änderungen realisiert werden sollen, welche über die Weboberfläche nicht möglich sind. z.B. die Einbindung eines eigenes Banners.

Dazu im Block [WebPost] dies einfügen:

ISPLinkURL=http://www......de/.../ts-logo.jpg

Und ganz unten einfach diesen Block anfügen:

[ISP] GFX URL=http://www......de/.../ts-logo.jpg

Teamspeak 2 bei Serverstart starten

Hin und wieder kommt es vor, dass man seinen Server neu starten muss. Ungern möchte ich dann auch den Teamspeak2 Server per Hand starten. Also muss er beim Serverstart gleich mit hochfahren.

Dazu bedarf es nur kleiner Schritte:

[root@666:~$]>su root
Passwort:
[root@666:/home/blue-matrix]>cd /etc/init.d/
[root@666:/etc/init.d]>touch teamspeak
[root@666:/etc/init.d]>chmod +x teamspeak

Diese neuen Datei muss nun (unter root) mit folgendem Inhalt gefüllt werden

[root@666:/etc/init.d]>vi teamspeak

#!/bin/bash
# User unter dem TS läuft bei mir ts
USER=ts

# Installationspfad von Teamspeak
DIR=/home/teamspeak/tss2_rc2

# Starten des TS-Servers
su -c "cd $DIR && $DIR/teamspeak2-server_startscript $1" - $USER

vi verlassen mit ESC und :wq
Fertig.
Überprüfen mit:

[root@666:/etc/init.d]>/etc/init.d/teamspeak stop
[root@666:/etc/init.d]>/etc/init.d/teamspeak start

Viel Spass 🙂