Community Forums Today's Posts     Member List     Archive    
Page 1 of 2 12 LastLast
Results 1 to 15 of 18
  1. #1
    Join Date
    May 2005
    Location
    Stuttgart
    Posts
    7

    TS Server automatisch starten

    Als Linux Neuling konnte ich bislang TeamSpeak2 Server erfolgreich installieren.

    Am automatischen Start beim Reboot des Servers scheitere ich allerdings.

    Auf dem Server läuft Suse 9.0. Ich hab ungefähr in Erfahrung gebracht, dass dafür Einstellungen in init.d und rc3.d nötig sind.

    Entsprechend der Readme habe ich für TS einen eigenen Benutzer ts angelegt.

    Kann mir da jemand helfen?

  2. #2
    Join Date
    Oct 2003
    Location
    Germany
    Posts
    2,298
    Hier hast du ein modifiziertes Startscript:

    Code:
    # ! /bin/bash
    #
    # Modified TeamSpeak 2 server startscript
    # Original script written by: pwk.linuxfan 2004
    #
    # . /etc/rc.d/init.d/functions
    #
    ### BEGIN INIT INFO
    # Provides: teamspeak2
    # Short-Description: TeamSpeak 2 server
    # Description: Start and stop your TeamSpeak 2 server...
    ### END INIT INFO
    
    # CONFIG SECTION
    USER=teamspeak
    DIR=/ts2server
    # END OF CONFIG SECTION
    
    case "$1" in
    		start)
    				if [ -e $DIR/tss2.pid ]; then
    					 echo "tss2.pid already exists...";
    					 echo "Is your TeamSpeak 2 server already running?"
    					 exit 1
    				else
    					 if [ "$UID" = "0" ]; then
    							 for c in $(seq 1 10); do
    									 echo -n "!"
    									 sleep 1
    							 done
    							 echo !
    					    fi
    					 echo "Starting the Teamspeak 2 Server..."
    					 if [ -e $DIR/server_linux ]; then
    							 if [ ! -x $DIR/server_linux ]; then
    									 echo "server_linux is not executable..."
    									 echo "Trying to set it."
    									 chmod u+x $DIR/server_linux
    							 fi
    							 if [ -x $DIR/server_linux ]; then
    									 WD=`pwd`
    									 cd $DIR
    									 su $USER -c "$DIR/server_linux -PID=tss2.pid" &
    									 cd $WD
    							 else
    									 echo "server_linux is not executable..."
    									 exit 4
    							 fi
    					    else
    							 echo "Could not find server_linux..."
    							 exit 5
    					    fi
    				fi
    		;;
    	stop)
    				if [ -e $DIR/tss2.pid ]; then
    					 echo -n "Stopping the TeamSpeak 2 server..."
    					 if ( kill -TERM `cat $DIR/tss2.pid` ); then
    							 for c in $(seq 1 300); do
    									 if [ -e $DIR/tss2.pid ]; then
    											 echo -n "."
    											 sleep 1
    									 fi
    							 done
    					    fi
    					 if [ -e $DIR/tss2.pid ]; then
    							 echo "server does not shutdown cleanly..."
    							 kill -KILL `cat $DIR/tss2.pid`
    							 rm $DIR/tss2.pid
    							 sleep 5
    					    else
    							 echo "done"
    					    fi
    				else
    					 echo "tss2.pid does not exist...";
    					 echo "Is your TeamSpeak 2 server already stopped?"
    					 #exit 7
    				fi
    		;;
    		restart)
    				$0 stop && $0 start || exit 1
    		;;
    		status)
    				if [ -e $DIR/tss2.pid ]; then
    					 echo "The TeamSpeak 2 server is running."
    					 exit 0
    				else
    					 echo "The TeamSpeak 2 server is stopped."
    					 exit 3
    				fi
    		;;
    		passwords)
    				if [ -e $DIR/server.log ]; then
    					 date=$(cat $DIR/server.log | grep "admin account info: username: admin" | tail -n 1 | sed "s/^\([0-9]\+-[0-9]\+-[0-9]\+ [0-9]\+:[0-9]\+:[0-9]\+\).*$/\1/")
    					 spass=$(cat $DIR/server.log | grep "superadmin account info: username: superadmin" | tail -n 1 | sed "s/^.*username: superadmin password: \([a-z0-9]\+\).*$/\1/")
    					 pass=$(cat $DIR/server.log | grep "admin account info: username: admin" | tail -n 1 | sed "s/^.*username: admin password: \([a-z0-9]\+\).*$/\1/")
    					 echo "Following passwords were generated on $date"
    					 echo "superadmin = \"$spass\""
    					 echo "admin	 = \"$pass\""
    				else
    					 echo "server.log not found..." 
    					 exit 1
    				fi
    		;;
    		*)
    			 echo "Usage: $0 {start|stop|restart|status|passwords}"
    				exit 2
    esac
    exit 0
    Damit sollte es unter SuSe Linux funktionieren...

  3. #3
    Join Date
    May 2005
    Location
    Stuttgart
    Posts
    7
    ja danke...

    ... aber was mach ich damit?

    (sorry, ist für mich absolutes neuland)

  4. #4
    Join Date
    Jan 2003
    Location
    Germany
    Posts
    4,140
    Startscripte kommen (je nach Distribution) nach /etc/init.d und die Start/Stop-Symlinks werden in /etc/rcX.d gesetzt.
    Wenn dir das nichts sagt solltest du dich mit der System 5 Initialisierung auseinandersetzen. (Google weiß es)

  5. #5
    Join Date
    May 2005
    Location
    Stuttgart
    Posts
    7
    ähm ok, ich denke ich habs kapiert. das script in init.d und einen link in die rc3.d.

    nur noch die frage, wie bekomm ich jetzt das script auf den server. hab ja nur kommandozeile.

    könnt ihr ein gutes buch über linux empfehlen um hier mal ein wenig tiefer einzusteigen?

  6. #6
    Join Date
    Oct 2003
    Location
    Germany
    Posts
    2,298
    Für Anfänger kann ich das Programm WinSCP empfehlen:

    http://winscp.net/eng/index.php

  7. #7
    Join Date
    Jan 2003
    Location
    Germany
    Posts
    4,140
    Das Linux-Buch von Kofler soll angeblich recht gut sein. Ein Kommilitone von mir schwört darauf.

    Es heißt "Linux: Konfiguration, Anwendung und sonstnochwas was ich vergessen habe"

  8. #8
    Join Date
    May 2005
    Location
    Stuttgart
    Posts
    7
    also wenn ich nun das script mit tssd start als root starte erhalte ich:

    h657826:/etc/init.d # ./tssd start
    !!!!!!!!!!!
    Starting the Teamspeak 2 Server...
    Could not find server_linux...

  9. #9
    Join Date
    Oct 2004
    Location
    Germany
    Posts
    1,301
    Quote Originally Posted by Wildsau
    also wenn ich nun das script mit tssd start als root starte erhalte ich:

    h657826:/etc/init.d # ./tssd start
    !!!!!!!!!!!
    Starting the Teamspeak 2 Server...
    Could not find server_linux...
    Richtiges TS-Verzeichnis angeben:

    Code:
    # CONFIG SECTION
    USER=teamspeak
    DIR=/ts2server
    # END OF CONFIG SECTION

  10. #10
    Join Date
    May 2005
    Location
    Stuttgart
    Posts
    7
    ok, habe ich geändert.

    Wenn ich nun das Script mit ./tssd start aufrufe, wird der TS Server gestartet.

    Um das ganze nun automatisch hinzubekommen, habe ich eine Datei (chmod 755) im Verzeichnis rc3.d angelegt:

    S99tssd liegt in rc3.d und enthält: ../tssd start

    Die Script Datei tssd liegt ein Verzeichnis höher in init.d.

    Nach einem Reboot startet der Server nicht. Wenn ich ./S99tssd aufrufe, erhalte ich:

    h657826:/etc/init.d/rc3.d # ./S99tssd
    tss2.pid already exists...
    Is your TeamSpeak 2 server already running?

  11. #11
    Join Date
    May 2005
    Location
    Stuttgart
    Posts
    7
    ok, kommando zurück.

    man sollte wissen, dass scripte aus rc3.d heraus bereits mit dem parameter start / stop versehen werden. War also doppelt parametriert, deshalb hats nicht getan.

    Mit einem symbolischen Link in rc3.d tuts.

  12. #12
    Join Date
    Oct 2003
    Location
    Germany
    Posts
    2,298
    Bei genauem Hinsehen wäre dir sicherlich aufgefallen, dass das Script die Parameter start, stop, restart, status und passwords versteht...

  13. #13
    Join Date
    Oct 2005
    Location
    Germany
    Posts
    4
    Ich hab das gleiche Problem wie mein Vorredner Wildsau aber leider noch keine Lösung gefunden. Linux startet also den Prozess nich automatisch und bei manuellen starten kommt dann:

    [root@148124 rc3.d]# ./S15tss start
    tss2.pid already exists...
    Is your TeamSpeak 2 server already running?

    den link habe ich mit "ln -s ../init.d/tssd S15tss" erstellt. Wo liegt mein Fehler??

    MfG
    Alex

  14. #14
    Join Date
    Oct 2004
    Location
    Germany
    Posts
    1,710
    Sieht so aus als wäre der Server doch gestartet, wenn nicht:
    die tss2.pid löschen, falls sie noch existiert und neu booten.

  15. #15
    Join Date
    Oct 2005
    Location
    Germany
    Posts
    4
    jetzt funzt es ... danke dir

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Router problems
    By bigteam0385 in forum [TeamSpeak 2] Server Support
    Replies: 4
    Last Post: 24-05-2011, 10:53
  2. Server stops responding
    By Xeroed in forum [TeamSpeak 2] Server Support
    Replies: 10
    Last Post: 27-09-2006, 04:08
  3. Administration page
    By bigteam0385 in forum [TeamSpeak 2] Server Support
    Replies: 5
    Last Post: 16-01-2006, 22:00
  4. Server
    By lars-andre-petersen in forum [TeamSpeak 2] Server Support
    Replies: 70
    Last Post: 26-09-2005, 11:54

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •