Serveur Minecraft sous XBMC (XBMCBUNTU)

sudo apt-get remove Windows --force

Billet

Après avoir longtemps utilisé un vieux PC pour faire tourner un serveur Minecraft sous Debian, j'ai décidé de passer à une machine plus puissante et polyvalente. La machine en question a fait l'objet d'un premier billet ici: HTPC pas cher sous XBMC

Maintenant que la machine est stable sous XBMCBUNTU, je passe à la phase suivante, installation du serveur Minecraft (Craftbukkit).

J'ai bien conscience qu'il existe une multitude d'articles en ligne qui indiquent comment installer un serveur Minecraft sous linux. Mon billet reprend ces méthode en ajoutant l'intégration dans XBMC et en simplifiant les mises à jour via le partage du dossier sur le réseau.



Le travail suivant peut se faire via une liaison ssh avec XBMCBUNTU en utilisant PuTTY par exemple.

J'ai installé XBMCBUNTU avec le compte utilisateur dan. Partout ou vous rencontrer ce compte, il faudra y substituer le votre.

1 - Création d'un dossier minecraft partagé sur le réseau:

Création:

Dans le dossier utilisateur (pour moi /home/dan/):
mkdir Minecraft
Attribution des droits:
chmod 755 Minecraft

Partage:

Édition du fichier de configuration de SAMBA:
nano /etc/samba/smb.conf

Ajouter les lignes suivantes en adaptant le path à votre compte:

[Minecraft]
path = /home/dan/minecraft
comment = Serveur Minecraft
writeable = yes
browseable = yes
guest ok = yes

Relancer SAMBA:
/etc/init.d/samba restart

2 - Installation de Java:

apt-get install openjdk-6-jre

3 - Installation du serveur Minecraft (craftbukkit):

Téléchargement du serveur crafbukkit à l'adresse suivante : https://dl.bukkit.org/downloads/craftbukkit/
Au moment où je rédige ce billet, je choisi la version Beta Build : craftbukkit-1.7.2-R0.3

Copier le fichier dans le dossier partagé Minecraft sur XBMCBUNTU, puis le renommer en craftbukkit.jar. Démarrer le serveur:
java -Xmx2048M -Xms2048M -jar craftbukkit.jar nogui

A ce stade, on peut déjà tester le serveur et vérifier la présence de tous les fichiers de configuration généré dans le dossier partagé.

4 - Automatisation du démarrage du serveur:

Installer le multiplexeur screen:
sudo apt-get install screen

On peut tester le lancement en tâche de fond (sous screen)
cd /home/dan/Minecraft
sudo screen -dmS minecraft java -Xmx2048M -Xms2048M -jar craftbukkit.jar nogui

Pour la suite, j'ai récupéré et adapté le script gentiment donné par Skritz sur son site http://www.skritz.com

Créer un lanceur minecraft dans /etc/init.d
sudo nano /etc/init.d/minecraft

Copier les lignes suivantes en adaptant à votre compte: (le script est également disponible ici : minecraft)

#!/bin/bash

# -------------------------------------------------
# PARTIE A EDITER :
# -------------------------------------------------
SCREEN="minecraft"  # nom utilisé pour le screen
NAME="Minecraft"  # nom du serveur, uniquement pour l'affichage des messages
COMMAND="java -Xmx2048M -Xms2048M -jar craftbukkit.jar nogui"  # commande de lancement du serveur
cd /home/dan/Minecraft/  # emplacement du serveur
# ------------------------------------------------

running(){
 if ! screen -list | grep -q "$SCREEN"
 then
  return 1
 else
  return 0
 fi
}

case "$1" in
 start)
  if ( running )
  then
echo "Server [$NAME] is already running"
  else
echo "Starting server [$NAME]"
   screen -dmS $SCREEN $COMMAND
  fi
  ;;
 status)
    if ( running )
    then
echo "Running"
    else
echo "Not running"
    fi
  ;;
 screen)
   screen -r $SCREEN
 ;;
 reload)
   screen -S $SCREEN -p 0 -X stuff "`printf "reload\r"`"
 ;;
 stop)
  if ( running )
  then
screen -S $SCREEN -p 0 -X stuff "`printf "stop\r"`"
   echo "Stopping server [$NAME]"
  else
echo "Server [$NAME] is not running"
  fi
 ;;
*)

 echo "Usage : {start|stop|status|screen|reload}"
 exit 1
 ;;
esac

exit 0


Modifier les permissions du lanceur minecraft:
sudo chmod 755 /etc/init.d/minecraft

Ajouter le lanceur minecraft au démarrage du système:
sudo update-rc.d minecraft defaults

Vous pouvez rebooter le serveur pour vérifier que le serveur minecraft a été lancé.

Ajouter un commentaire

Les commentaires peuvent être formatés en utilisant une syntaxe wiki simplifiée.

La discussion continue ailleurs

URL de rétrolien : https://objnux.fr/index.php?trackback/57