« 
 »

Tuto : Créer un serveur Minecraft sur un Raspberry Pi

Tuto : Créer un serveur Minecraft sur un Raspberry Pi

MAJ Juin 2016 : le Raspberry Pi 3 permet de faire tourner vraiment bien un serveur Minecraft, voici une démo avec un serveur tournant sur un Raspberry Pi 3 (Minecraft  1.9.4).


Salut à tous,

Aujourd’hui je vous propose un petit tutoriel qui vous permettra de monter un serveur Minecraft à moindre coût et que vous pourrez utiliser pour jouer jusqu’à 4 personnes simultanément avec des performances correctes.

 

Prérequis :

Avant de commencer voici ce dont vous aurez besoin :

  • Au moins un Raspberry Pi 2 (1Go de RAM) et idéalement un Raspberry Pi 3.
    Un Raspberry Pi modèle B ou B+ avec 512Mo de RAM tournera mais se ne sera pas très fluide (les modèles avec 256Mo n’ont vraiment pas assez de RAM pour faire tourner le serveur)
  • Un chargeur USB délivrant au moins 1A et un câble Micro USB (prévoyez idéalement 2,5 A pour un Raspberry Pi 3)
  • Un câble ethernet
  • Une carte SD rapide (si vous n’en avez pas encore regardez ici), d’au moins 8Go ou plus histoire d’avoir de la marge pour votre carte.

Nous allons ici utiliser l’installation officielle de Minecraft.

Note pour les Raspberry Pi B ou B+ (512Mo de RAM) :

Les performances du Raspberry Pi sont quand même limités surtout avec Java qui bouffe énormément de ressources, si Minecraft était écrit dans un autre langage on aurait moins de soucis ici.

La vitesse de la carte SD est importante ici, car la lecture de la map avec plusieurs joueurs risque de poser problème si le débit de lecture / écriture de la carte SD ne suit pas.

Il faudra bien sûr limiter le nombre d’utilisateurs, le jeux est parfaitement fluide à deux joueurs par contre comptez maximum 4 personnes car sinon le jeu devient vraiment lent.

Pour le Raspberry Pi 2 ou 3 je n’ai pas encore eu l’occasion de tester Minecraft dessus, mais avec la RAM doublée un processeur quadcore le jeu devrait vraiment être beaucoup plus fluide et permettre l’utilisation de certains pack de textures, plus de joueurs voir des mods.

 

Installer Raspbian :

Avant de commencer installez une distribution Rapsbian vierge sur votre carte SD (sans tâche de fond ou autre service d’installé).

Branchez le tout et connectez vous en SSH sur votre Raspberry Pi.

 

Overclocker un peu le Raspberry Pi :

Ceux qui ont un Raspberry Pi 2 ou 3 peuvent sauter cette étape.

Afin d’obtenir de meilleurs performances nous allons overclocker le Raspberry Pi, lancez pour cela la commande suivante :

sudo raspi-config

L’ampérage d’au moins 1A est important ici ,votre Raspberry va consommer un chouilla plus en étant overclocké.

Choisissez l’option 8 (Overclock) et prenez medium ce sera suffisant.

Optimisation de la RAM

Si vous voulez optimiser un peu plus le Raspberry, vous pouvez aller jusqu’à “Advanced” (numéro 9) et choisissez “Memory Split”.

Changez la valeur pour 16 au lieu de 64 (par défaut) comme ça on augmente la quantité de RAM utilisable pour le serveur au lieu de la réserver au GPU qui ne servira strictement à rien sur notre machine.

optimisation RAM Minecraft

Choisissiez “Finish” à l’écran d’accueil pour appliquer les modifications et redémarrer le Raspberry PI.

Pour étendre la partition principale et utiliser l’ensemble de l’espace de stockage disponible sur votre carte SD utilisez l’option numéro 1 : “Expand Filesystem”

redimensionner carte SD Minecraft

Tuto : Créer un serveur Minecraft sur un Raspberry Pi

 

Installation du serveur Minecraft :

Avant de commencer, on va mettre à jour la distribution pour cela lancez la commande suivante :

sudo apt-get update && sudo apt-get upgrade

 

On installe ensuite java :

sudo apt-get install oracle-java7-jdk

Vous êtes normalement dans votre dossier home, on va créer un dossier Minecraft. Vous pouvez très bien choisir n’importe quel autre emplacement ou encore créer le dossier dans srv/Minecraft si  vous le souhaitez.

sudo mkdir minecraft

On ouvre le dossier en question :

cd minecraft

On récupère la dernière version du serveur de Minecraft au format .jar.

sudo wget -O minecraft-server.jar http://s3.amazonaws.com/MinecraftDownload/launcher/minecraft_server.jar

On attribue les bons droits au fichier jar

sudo chmod +x minecraft-server.jar

Afin que le serveur continue de tourner lorsque l’on quitte notre connexion SSH, il va falloir installer “Screen” et se créer un petit fichier de script (un fichier .sh) pour éviter de taper une grosse commande à chaque fois que l’on veut lancer le serveur.

sudo vi Minecraft.sh

On insère le code suivant dans ce fichier (remplacez minecraft_server.1.8.1.jar par le nom de votre fichier .jar) :

Tuto serveur Minecraft Place4geek

On remarquera que l’on affecte ici 300 Mo de RAM pour le serveur, on peut adapter cette quantité en fonction de la capacité du Rasbperry Pi, sur un Raspberry Pi 2 on peut mettre beaucoup plus.

Pour un Raspberry Pi 2 ou 3 vous pouvez mettre les valeurs suivantes :  -Xms512M -Xmx1008M à la place de -Xms300M

 

On sauvegarde notre fichier et on donne les bons droits à notre script :

sudo chmod 555 Minecraft.sh

Le script est prêt, il ne nous reste plus qu’à le lancer en tâche de fond, de cette manière lorsque l’on ferme notre session SSH le serveur continuera de tourner.

sudo apt-get install screen

Il ne reste plus qu’à lancer votre script :

./Minecraft.sh

Le serveur se lance, cela va prendre un bon moment au tout premier lancement car le jeux va générer la carte et différents fichiers de configurations que vous pourrez éditer par la suite.

Minecraft console

Pour quitter l’écran du serveur et revenir à la console du terminal utilisez les touches CTRL a + d.

Pour revenir sur l’écran du serveur à tout moment, utilisez la commande suivante :

screen -raAd minecraft

Voilà votre serveur Minecraft est lancé et sera toujours là même si vous fermez votre connexion SSH.

Petit bonus pour ceux qui veulent un petit script de sauvegarde voici ce que vous pouvez faire avec un fichier “save_minecraft.sh” par exemple.

Tuto serveur Minecraft Place4geek

Pensez à adapter le chemin “/home/minecraft” de ce script en fonction de là où sont vos fichiers et n’oubliez pas de faire un :

sudo chmod 555 save_minecraft.sh

Une fois le script lancé avec la commande :

./save_minecraft.sh

Vous aurez une archive tar.gz avec une sauvegarde complète de votre serveur.

Tuto : Créer un serveur Minecraft sur un Raspberry Pi

Enfin pour ceux qui veulent que leur serveur soit accessible depuis l’extérieur (en dehors du réseau local), n’oubliez pas d’ouvrir le port 25565 (par défaut) de votre BOX et faites une redirection du port 25565 vers l’IP de votre Raspberry Pi.

N’hésitez pas à laisser un commentaire pour toutes questions 🙂

Amusez-vous bien !

 

D’autres articles qui pourraient vous intéresser sur le Raspberry Pi:

A propos de l'auteur :

Passionné par l’univers du Web, les Nouvelles Technologies et le High-Tech, je partage sur Place4Geek mes découvertes et le meilleur de l’actualité geek, du net, des jeux… Vous pouvez me contacter personnellement sur contact[.at]place4geek.com ou par message privé sur Twitter.

44 commentaires sur Tuto : Créer un serveur Minecraft sur un Raspberry Pi
    • Sheet0s
    • Super faut que j’essaye ça, je joue avec mon frère tout le temps et on fait tourner le serveur sur ma machine, j’avoue que décharger ça sur un Raspberry c’est vraiment une bonne idée.

  1. Pingback: Plus de 70 idées de projets pour votre Raspberry Pi - Place4geek

  2. Pingback: Tuto : Installer Retropie l’émulateur multi-consoles sur votre Raspberry Pi - Place4geek

    • Matvlas
    • Merci pour l’article je suis en train de reinstaller tout rasbian
      enfin on peut avoir un serveur minecraft GRATUIT 🙂

    • Scooby
    • Bonjour ! je suis en train de suivre ce tutoriel et j’ai a faire a plusieurs problème.
      Tout d’abord, lors de la commande : “sudo apt-get installer oracle-java7-jdk”
      j’ai du remplacer “installer” par “install” pour que ça puisse fonctionner.

      Et la ou je bloque c’est au niveau du telechargement du minecraft.jar

      la commande wget avec le lien du tuto ou avec le nouveau présent sur le site:
      https://s3.amazonaws.com/Minecraft.Download/versions/1.8.1/minecraft_server.1.8.1.jar

      la commande me retourne: “Cannot write to `minecraft_server.1.8.1.jar’ (Permission denied).”

      par contre elle arrive tres bien a ce connecter au serveur.

      54.231.65.32|:80… connected.
      HTTP request sent, awaiting response… 200 OK

      avez vous des suggestions ?

      Merci d’avance !!

  3. Pingback: Le Raspberry Pi 2 est arrivé : 6 fois plus puissant que son prédécesseur et compatible Windows 10 - Place4geek

    • Ghostr
    • Bonjour,
      Débutant dans le terminal linux, j’ai un peu de mal lorsqu’il faut ajouter ce code-ci “#!/bin/sh BINDIR=$(dirname “$(readlink -fn “$0″)”) cd “$BINDIR” screen -s minecraft java -Xms300M -jar minecraft_serveur.1.8.1.jar -o false” dans le fichier “Minecraft.sh”. Quand j’ai réussi à le faire, j’exécute le fichier on me dit de le rpi ne trouve pas le chemin “bin/sh” .
      Est ce qu’il faut adapter le code en fonction du dossier dans lequel on se trouve ?
      Merci d’avance pour vos réponses.

    • bauer_disyer
    • Bonjour,

      Lorsque je tape ./Minecraft.sh rien se passe…
      Voici l’intérieur du .sh : #!/bin/sh BINDIR=$(dirname “$(readlink -fn “$0″)”) cd “$BINDIR” screen -s minecraft java -Xms300M -jar Minecraft.jar -o false

      J’ai remplacer ton “minecraft_serveur.1.8.jar” par “Minecraft.jar” à cause de la nouvelle MAJ.

      Aurais tu une idée du pourquoi rien ne se passe du coup quand je tape “./Minecraft.jar” ?

      merci de ton aide.

      Bien cordialement

    • bauer_disyer
    • Re,

      j’ai avancé un peu. Mon problème venait surement du fait que dans le fichier Minecraft.sh j’avais des lignes vierges au dessus de la ligne de code.

      Cependant, maintenant voici un nouveau message d’erreur : /bin/sh: 0: Can’t open BINDIR=$(dirname “$(readlink -fn “$0″)”) cd “$BINDIR” screen -s minecraft java -Xms300M -jar Minecraft.ja

      As-tu une idée de pourquoi, comment ? As-tu une solution ?

      Je te remercie.

      • Admin
      • Salut j’ai modifié le tuto avec quelques captures d’écran et simplifié le script ça sera beaucoup plus clair. Si tu as des questions n’hésite pas.

          • Admin
          • Salut est tu sûr du nom de ton fichier .jar dans la ligne de commande ?

            Il te faut l’adapter en fonction du tien. Idem vérifie que tu es dans le même dossier que ton fichier .JAR ou adapte le chemin vers le fichier minecraft.xxx.jar dans la ligne de commande.

            => Je reproduit ton problème si je ne suis pas dans le bon dossier ou si le nom du fichier .jar est incorrect.

            • bauer_disyer
            • Salut,

              Merci de tes réponses. Hier soir j’ai réussi à avancer.
              En fait, tu as raison, le .jar n’était pas le bon.
              Minecraft. jar c’est le launcher (pas le serveur)
              minecradt_server.1.8.1.jar c’est le serveur (donc ce qu’on cherche ici)

              Après avoir fait cette correction, j’ai rencontré des problèmes.
              J’ai fini par comprendre que c’était lié à des permissions sur Screen.

              Une fois cela réglé, le fichier Minecraft.sh se lance (enfin :)), mais après quelques minutes et après avoir atteint 99% au ‘Preparing spawn area’ un nouveau message d’erreur apparaît…
              ‘Can’t keep up! …’ Je comprends que c’est lié au manque de RAM…
              J’ai bien suivi tes conseils en début de tuto, pourtant…

              J’utilise un Raspberry Pi B+, j’ai donc 512Mo.
              As-tu une idée pour résoudre ce problème ?

              Je te remercie 🙂

    • Admin
    • J’ai ce message d’avertissement de temps en temps mais cela n’empêche pas le jeu de fonctionner correctement. Tu as pu te connecter ?

      • neoselen
      • merci bcp pour le lien, j’en cherchais un comme ça, pour mettre ça sur le script de boot de mon serveur (comme un Raspberry Pi se redémarre peu quand tout va bien, bah suffit d’entrer en jeu, faire un /stop et le serveur se met à jour)
        il me manquait ce type de lien “magique” :p

    • neoselen
    • salut les gens, je suis à la recherche du st Graal, à savoir…
      Mon serveur minecraft fonctionne. ça reste à peu près fluide, c’est pas trop trop moche.
      or, là où je cherche mon st Graal, c’est quand je m’aperçoit qu’à cheval, ça court 3 cubes, ça se pause, ça continue à accélérer, après 3 cubes ça se pause encore…
      Et la même chose avec la redstone, parfois même pire… une fois, 1 min s’est écoulée entre le passage d’un objet dans un hopper vers un coffre.
      sachant que je suis rompu aux techniques d’installation:
      _ alim Temium 2.3A (et donc 5V, forcément)
      _ ventialeur 12 ultra quiet XM1 de chez NoiseBlocker
      _ boitier oneNineDesign un peu découpé à l’intérieur pour placer les heatsink à coller, et le capot troué aussi pour que le ventilateur aspire la chaleur
      _ dd de raspbian vers la microSD (64Go,SanDisk EVO, UHS-1), la version 2015-05-05
      _ lancement avec java jre, paramètres de ram, intervalle 500 à 900, via une commande dans le /etc/rc.local qui lance le script situé dans /home/pi (histoire d’économiser au CPU le lancement d’une session utilisateur)
      _ des liens symboliques à la racine qui pointent vers le /home/pi (oui, rc.local a pour répertoire la racine du système de fichiers
      _ le governor réglé à ondemand

      par ailleurs, les petits réglages côté :
      arm_freq réglé à 1100MHz
      le core à 500
      sd_ram à 500
      over volt réglé à 8
      (le paramétrage c’est réellement $voltage_additionnel = $nombre * 0.025)
      et le startx non lancé.

      et malgré tout, pas moyen de se balader à cheval, seul connecté, sans que ça lag …
      ceci dit, ça n’empêche pas d’être connecté à deux, mais ça fait lagger le cassage et le placement de blocs carrément …
      snif, j’ai tant envie que minecraft tourne 24h/24, comme ça mes 2 potes et moi, on fera des pti allers-et-retours à l’envie, et pas en mode “tu peux démarrer le serveur stp? ah zut t pas chez toi avant 2 semaines…”. Et puis, parce que c’est tellement beau quand ça ronronne tout doucement la nuit, avec quelques clignotements, quand on sait que le monde qu’on a créé tourne 24h/24 …
      Et ce pb me torture depuis bientôt 2 semaines.

      des suggestions ?

      ps: j’ai tenté le build de spigot, mais ça m’a pas aidé. quand je le lance, parfois je suis déco, mais à aucun moment spigot (malgré ce qui fut dit sur le site officiel) n’accepte de lire les fichiers du serveur dont je copie tous azimuts, tellement j’ai pas envie que les 3580 jours minecraftiens ne soient perdus par un ratage éhonté, ou plus simplement, un overclock trop sauvage qui explose une partie des fichiers du système…
      et j’ai tenté de rechercher si oracle, dans sa bonté magnanime avait créé une édition d’un jre mais en OS pas juste en surcouche applicative pour le raspberry pi 2. je ne l’ai pas trouvé.

      – signé un accro de minecraft pi –

    • corentin
    • bonjour.
      je voudrais avoir ou on a l’ip du serveur.
      car je vais faire sa sur mon future raspberry pi 3 B.
      merci d’avance.

      • Admin
      • L’ip du serveur en local c’est ” ifconfig ” en ligne de commande.
        Si tu veux le publier en ligne c’est l’ip de ta box avec redirection de port activée vers l’ip de ton raspberry

  4. Pingback: Sélection de Tuto Raspberry Pi – AVEKBRIO

      • Admin
      • Bonjour,

        Il faut soit vous rajouter à la main dans le fichier ops.txt sur le serveur, soit taper la commande “/op ” directement depuis le jeu si vous avez les droits admin :p

        Bon courage 🙂

    • pratique
    • bonjour j’ai essayer de prendre un nouveau lien pour le telechargement mais il ne fonctione pas non plus peux-tu m’aider pour résoudre mon problème

      merci d’avance

    • Colonel en Ornithorynque
    • Bonjour ou Bonsoir , Est-ce qu’une connection Vdsl ou Adsl peut suffire pour que le ping du serveur ne soit pas trop élever ?
      Mon Ping : 16ms
      Mon débit descendant 25.45 Mbps
      Mon débit ascendant : 2.14 Mbps

Laisser un commentaire

*

Suivez nous sur Twitter Devenez fan de Place4Geek Suivez nous sur Google+ Abonnez-vous à la chaîne Place4Geek Abonnez-vous à notre flux RSS