Forum Clubic

Lancer un serveur Teamspeak au démarrage sur debian4

Gros newb’ en linux, je cherche comment lancer le serveur Teamspeak que je viens d’installer sur mon vieux P2 400 avec 256Mo de ram, sous Debian 4.
La commande sera:

/usr/local/bin/tss2_rc2/teamspeak2-server_startscript start

Mais je sais pas trop ou la mettre…
Si quelqu’un peu me filer un coup de main, merci.
Edité le 25/12/2007 à 17:35

Il faut modifier les scripts rc

tu as un tuto ici : www.debian-fr.org…

il suffit de placer cette ligne dans le fichier /etc/rc.local avant “exit 0”

Ca ne marche pas… il n’arrive pas à trouver le fichier “server_linux” de teamspeak, mais quant je le lance juste après ca fonctionne…

Un peu de mal à comprendre là…
Edité le 02/12/2007 à 20:09

parce que le script de demarrage de teamspeak a ete ecrit comme un cochon (ca arrive tres souvent avec les logiciels proprio).

Le probleme est tres surement du au fait qu’il se base sur le PATH pour appeller des executables alors qu’a ce stade du demarrage de linux, le PATH n’est pas completement rempli
Cherche sur le net, il doit bien exister un petit gars qui a reecrit proprement les scripts de demarrage de teamspeack specifiquement pour debian 4…

ça depends de la configuration de ton serveur, tu y a surement mis des chemins en relatif par rapport à ton dossier personnel

Le pb est il résolu ? (si oui le dire dans le titre :wink: pour que tout le monde en profite :)).

Résolu aujourd’hui!!!

J’ai créé un fichier " teamspeak.sh " dans /etc/init.d avec ca dedans:


#! /bin/bash
# Copyright (c) 2004 TeamSpeak team   All rights reserved.
#
#Lance TeamSpeak au moment du boot
#
#


# START OF CONFIG SECTION
# WARNING ! For security reasons we advise: DO NOT RUN THE SERVER AS ROOT


USER=Nom de l'utilisateur ayant droit
DIR=Chemin absolu du répertoire teamspeak


# END OF CONFIG SECTION

# See how we were called.
case "$1" in
        start)
                if [ -e $DIR/tsserver2.pid ]; then
                        echo "tsserver2.pid already exists...server already started ?";
                        echo "If you are sure the server is not running, delete tsserver2.pid"
                        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 Voice server..."
                        if [ -e $DIR/server_linux ]; then
                                if [ ! -x $DIR/server_linux ]; then
                                        echo "server_linux is not executable; 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=tsserver2.pid" &
                                        cd $WD
                                else
                                        echo "server_linux is not executable; fix this."
                                        exit 4
                                fi
                        else
                                echo "Couldnt find server_linux."
                                exit 5
                        fi
                fi
        ;;
    stop)
                if [ -e $DIR/tsserver2.pid ]; then
                        echo -n "Stopping the TeamSpeak Voice server..."
                        if ( kill -TERM `cat $DIR/tsserver2.pid` ); then
                                for c in $(seq 1 300); do
                                        if [ -e $DIR/tsserver2.pid ]; then
                                                echo -n "."
                                                sleep 1
                                        fi
                                done
                        fi
                        if [ -e $DIR/tsserver2.pid ]; then
                                echo "server does not shutdown cleanly - killing"
                                kill -KILL `cat $DIR/tsserver2.pid`
                                rm $DIR/tsserver2.pid
                                sleep 5
                        else
                                echo "done"
                        fi
                else
                        echo "tsserver2.pid is missing; is the server stopped already?"
                        #exit 7 - Should not be here as doesn't allow restart if server is already stopped.
                fi
        ;;
        restart)
                $0 stop && $0 start || exit 1
        ;;
        status)
                if [ -e $DIR/tsserver2.pid ]; then
                        echo "The TeamSpeak Voice server is running."
                        exit 0
                else
                        echo "The TeamSpeak Voice 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; maybe the server has not been started yet?"
                        exit 1
                fi
        ;;
        *)
                echo "Usage: $0 {start|stop|restart|status|passwords}"
                exit 2
esac
exit 0

Juste après un

update-rc.d teamspeak.sh defaults 99 

Et ca démarre au boot serveur :super:
Edité le 25/12/2007 à 17:32