Setting up a server/Debian/fr
Contents |
Mettre en place un serveur sous Debian
Liens
- Paquet Debian pour le serveur: [packages.debian.org/search?keywords=minetest-server minetest-server]
- Page Man de minetestserver: manpages.debian.org/cgi-bin/man.cgi?query=minetestserver&apropos=0&sektion=0&manpath=Debian+testing+jessie&format=html&locale=en
- Minetest.conf: wiki.minetest.com/wiki/Minetest.conf et [github.com/minetest/minetest/blob/master/minetest.conf.example minetest.conf.example]
Procédure
L'installation proprement dite
Installez le paquet minetest-server
# aptitude install minetest-server
Configuration succinte du serveur
Editez un fichier de configuration, qui ne contiendra pour le moment que le strict minimum. Pour cela, on utilisera le modèle de fichier [github.com/minetest/minetest/blob/master/minetest.conf.example minetest.conf.example].
Copiez ce fichier, renommez-le en minetest.conf, déplacez-le dans le répertoire où vous souhaitez entreposer les données utiles au serveur.
Pour avoir un fichier de config moins chargé et plus clair, vous pouvez si vous le souhaitez retirer les paramètres liés uniquement à la partie «cliente» (paramètres d'affichage).
Adaptez-le, en précisant un nom d'admin.
# Name of player; on a server this is the main admin name = votrepseudo
Il s'agit du pseudo sous lequel vous effectuerez votre 1ère connexion au serveur.
Vous trouverez également une ligne indiquant le port utilisé:
# Network port to listen (UDP) port = 30000
Laissez le port indiqué s'il vous convient, mais surtout, pensez à effectuer une redirection de ce port UDP sur votre routeur, ainsi qu'à autoriser ce port dans votre firewall si vous en utilisez un.
Création d'un script de lancement du serveur
Assurez-vous d'avoir le paquet "screen" installé. Celui-ci est très utile et vous permettra notamment de pouvoir vous délogger de votre session SSH sans pour autant que cela ne ferme le serveur minetest en cours d'exécution.
# aptitude install screen
Contenu du fichier start-minetest.sh :
#/bin/sh screen -A -m -d -S MINETEST_screen /usr/games/minetestserver --config /chemin/vers/votre/configuration/minetest/minetest.conf </code>
1er lancement
Démarrez votre serveur:
$ ./start-minetest.sh
Vous devriez pouvoir vérifier que celui-ci tourne si la session screen est active:
$ screen -ls
There are screens on: 14228.MINETEST_screen (10/06/2014 04:08:03 PM) (Detached)
Essayez alors depuis votre poste utilisateur de vous connecter à votre serveur.
Connexion au serveur
Connectez-vous avec le pseudo que vous avez indiqué dans votre fichier de config, avec un mot de passe de votre choix. La création de comptes sur le serveur est automatisée dès que vous vous connectez avec un nouveau pseudo et un mot de passe.
Si vous avez indiqué la bonne adresse de connexion, et que le port est joignable, cela devrait fonctionner !
Vous pouvez alors vous accorder les privilèges, dans la console (F10):
/grant votrepseudo all
Vous pourrez alors vous faciliter un peu la vie sur le serveur.
Annexe 1: un script pour fermer le serveur
Exemple de fichier stop-minetest.sh:
#!/bin/sh tmpfile=`mktemp` ps x | grep SCREEN | grep MINETEST |grep -v "grep" | while read pid tty stat time command do server_name=`echo $command | cut -d " " -f 6` echo $server_name:$pid >> $tmpfile done for i in `cat $tmpfile` do server_name=`echo $i | cut -d ":" -f 1` pid=`echo $i | cut -d ":" -f 2` read -p "Fermer le serveur \"$server_name\" ? (PID: $pid) ['o' or 'y' pour oui] " answer case $answer in o|O|y|Y ) kill $pid && echo "$server_name tué !" ;; *) esac done