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

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:

Admin

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, du Raspberry Pi, de la domotique et bien d'autres !

Articles Similaires

Test du logiciel Movavi Video Converter

Test du logiciel Movavi Video Converter

Nouveau : Le Raspberry Pi 3 A+ est disponible

Nouveau : Le Raspberry Pi 3 A+ est disponible

Le Raspberry Pi 3 Modele B+ est disponible !

Le Raspberry Pi 3 Modele B+ est disponible !

Le Raspberry Pi Zero W est disponible !

Le Raspberry Pi Zero W est disponible !

52 Comments

  1. 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.

  2. 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. 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.

  4. 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

  5. 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.

    • 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.

        • 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.

          • 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 🙂

  6. 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 ?

  7. Bonjour,

    j’ai suivi le tuto à la lettre mais malgré le nouveau lien https://s3.amazonaws.com/Minecraft.Download/launcher/Minecraft.jar
    j’ai aussi le message d’erreur:

    pi@raspberrypi ~/minecraft $ wget https://s3.amazonaws.com/Minecraft.Download/launcher/Minecraft.jar
    –2015-02-13 11:59:54– https://s3.amazonaws.com/Minecraft.Download/launcher/Minecraft.jar
    Resolving s3.amazonaws.com (s3.amazonaws.com)… 54.231.34.104
    Connecting to s3.amazonaws.com (s3.amazonaws.com)|54.231.34.104|:443… connected.
    HTTP request sent, awaiting response… 200 OK
    Length: 280212 (274K) [application/java-archive]
    Minecraft.jar: Permission denied

    merci pour une aide éventuelle

    • 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

  8. 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 –

  9. 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.

    • 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

    • 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 🙂

  10. 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

  11. 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

  12. Salut,
    il y a pas longtemps, j’ai eu un RSB Pi 3 et j’ai de suite pensé à créer mon srv minecraft…
    J’ai suivi les instructions mais mon RSB ne trouve pas la commande “screen” 🙁

    Svp vous auriez pas une solution à mon pb ??

    Merci de vos réponses

  13. bonjour,
    après avoir lancer le script Minecraft.sh j’ais cette erreur:
    2018-07-14 19:59:12 [SEVERE] Could not save crash report to ./crash-reports/crash-2018-07-14_19.59.12-server.txt
    java.io.FileNotFoundException: ./crash-reports/crash-2018-07-14_19.59.12-server.txt (Aucun fichier ou dossier de ce type)
    at java.io.FileOutputStream.open0(Native Method)
    at java.io.FileOutputStream.open(FileOutputStream.java:270)
    at java.io.FileOutputStream.(FileOutputStream.java:213)
    at java.io.FileOutputStream.(FileOutputStream.java:162)
    at java.io.FileWriter.(FileWriter.java:90)
    at b.a(SourceFile:287)
    at net.minecraft.server.MinecraftServer.run(SourceFile:355)
    at gp.run(SourceFile:573)
    2018-07-14 19:59:12 [SEVERE] We were unable to save this crash report to disk.

  14. bonjour,
    super tuto.

    y a un truc que je pige pas dans le fichier .sh
    A chaque fois que je dois relancer le script, ca bug.
    J’utilise putty. Je me demande si Screen est comptatible a 100%
    quand je quitte putty, je n’arrive pas à rejoindre le screen.
    Pourriez-vous donner plus de détails sur l’utilisation?

    • Bonjour,

      Pour retrouver l’instance screen de Minecraft une fois qu’il est lancé il faut faire un

      sudo screen -ls

      et ensuite un

      sudo screen -r (numéro de l’instance pour se rattacher dessus).

  15. Bonjours
    j’aimerai aussi réaliser un serveur comme vous le présenter mais j’aimerai savoir si il est possible de le faire avec la dernière version du jeux et quelle sont les modification a apporté pour que cela fonctionne
    merci pour les information

  16. Bonjour,

    Votre projet de serveur Minecraft m’intéresse beaucoup. J’ai suivi à la lettre ( avec les modifications propres à mon installation) vos instructions, mais quand je rentre la commande ./Minecraft.sh le message screen is terminating apparait et rien ne se passe.

    J’ai essayé de placer le fichier à différents niveaux dans les répertoires, mais j’arrive au même résultat.

    J’ai un Raspberry Pi 3 B+ avec la plus récente version de Raspbian (version la plus légère possible pour laisser un maximum de place au serveur).

    J’ai fait plein de recherches pour trouver des solutions, mais je n’y arrive pas. Est-ce que vous pouvez m’aider?

    Merci

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Articles Phares

Derniers Commentaires