2 votes

Configurer un serveur Bukkit pour un usage personnel sur Linux, ne s'installe pas correctement, je ne sais pas pourquoi

J'ai essayé de mettre en place un serveur bukkit pour le faire tourner en local, afin que je sois le seul à y jouer.

J'ai eu de l'aide de quelqu'un sur un autre forum pour commencer, en disant grosso modo : "Téléchargez le dernier bukkit.jar depuis ici, créez un dossier et placez-le dedans avec un fichier start.sh qui le lance (comme ceci) et il va se peupler automatiquement du contenu du dossier dans lequel vous l'avez mis." La seule différence dans le start.sh que j'ai créé était que j'ai listé le chemin complet vers le répertoire, et j'ai réduit la taille de la ram à 1G. Ça n'a pas fonctionné, le répertoire n'était pas du tout peuplé. Alors j'ai essayé de charger le vanilla minecraft_server.jar, ça n'a pas fonctionné non plus.

On m'a dit que ça pourrait être un problème de permission mais tout me semble correct. Vous pouvez voir ci-dessous le chemin vers craftbukkit.jar, ainsi que les autorisations à partir de là. Je serais reconnaissant pour toute aide, car je suis vraiment très nouveau dans la configuration de serveur.

ra@ra-desktop:~$ ls -al ~/.minecraft | grep Bukkit && ls -al ~/.minecraft/Bukkit 
drwxr-xr-x  2 ra ra    4096 2013-07-31 22:00 Bukkit
total 20896
drwxr-xr-x  2 ra ra     4096 2013-07-31 22:00 .
drwxr-xr-x 23 ra ra     4096 2013-07-31 00:54 ..
-rwxr-xr-x  1 ra ra 15249389 2013-07-30 08:54 craftbukkit-1.6.2.jar
-rwxr--r--  1 ra ra  6134331 2013-07-31 22:00 minecraft_server.1.6.2.jar
-rwxr-xr-x  1 ra ra       91 2013-07-31 22:00 start.sh

Mon start.sh ressemble maintenant à ceci :

#!/bin/sh
 BINDIR=$(dirname "$(readlink -fn "$0")")
 cd "$BINDIR"
 java -Xmx1024M -jar craftbukkit-1.6.2.jar -o true

Cependant, voici la sortie, lorsqu'elle est lancée depuis /home/ra/.minecraft/Bukkit :

ra@ra-desktop:~/.minecraft/Bukkit$ bash start.sh
start.sh: line 2: /home/ra/.minecraft/Bukkit: est un répertoire
03:43:47 [INFO] Démarrage de la version du serveur Minecraft 1.6.2
03:43:47 [INFO] Chargement des propriétés
03:43:47 [INFO] Type de jeu par défaut : SURVIE
03:43:47 [INFO] Génération de la paire de clés
03:43:47 [INFO] Démarrage du serveur Minecraft sur *:25565
03:43:47 [INFO] Ce serveur utilise la version CraftBukkit git-Bukkit-1.5.2-R1.0-35-g4176258-b2823jnks (MC: 1.6.2) (Implémentation de la version de l'API 1.6.2-R0.1-SNAPSHOT)
03:43:47 [INFO] Préparation du niveau "PlaisirEnEnfer"
03:43:48 [INFO] Préparation de la région de démarrage pour le niveau 0 (Graine : 8440585574752452648)
...

... et voici la sortie exécutée depuis n'importe quel autre répertoire :

ra@ra-desktop:~/[littéralement-n'importe-où]$ bash ~/.minecraft/Bukkit/start.sh
/home/ra/.minecraft/Bukkit/start.sh: line 2: /home/ra/.minecraft/Bukkit: est un répertoire
03:51:44 [INFO] Démarrage de la version du serveur Minecraft 1.6.2
03:51:44 [INFO] Chargement des propriétés
03:51:44 [WARNING] server.properties n'existe pas
03:51:44 [INFO] Génération d'un nouveau fichier de propriétés
03:51:44 [INFO] Type de jeu par défaut : SURVIE
03:51:44 [INFO] Génération de la paire de clés
03:51:44 [INFO] Démarrage du serveur Minecraft sur *:25565
03:51:45 [INFO] Ce serveur utilise la version CraftBukkit git-Bukkit-1.5.2-R1.0-35-g4176258-b2823jnks (MC: 1.6.2) (Implémentation de la version de l'API 1.6.2-R0.1-SNAPSHOT)
...

Ne devrait-il pas y avoir une population dans le répertoire Bukkit ?

1voto

Master-Guy Points 609

Selon la sortie du journal, il semble au moins essayer de générer les fichiers correctement. Se pourrait-il qu'il crée les fichiers dans un emplacement différent ? Essayez ceci pour le découvrir :

    cd /
    find . -name "*FunInTheHELL*" -print

En fonction de la taille de votre disque dur, la commande pourrait prendre un certain temps pour terminer.

1voto

SevenSidedDie Points 32991

Il y a une erreur dans votre expression BINDIR : vous utilisez readlink de manière incorrecte. Depuis la page man pour readlink :

Si l'argument donné n'est pas un lien symbolique, readlink n'affichera rien et sortira avec une erreur.

Donc ce que vous envoyez à dirname est une chaîne vide, ce qui fait que BINDIR est défini sur une chaîne vide, ce qui fait que cd change pour votre répertoire personnel. Vous pouvez confirmer cela en commentant la ligne java et en ajoutant une ligne lisant pwd juste avant.

Changez cela en :

#!/bin/sh
 BINDIR=$(dirname "$0")
 cd "$BINDIR"
 pwd
 java -Xmx1024M -jar craftbukkit-1.6.2.jar -o true

… et cela devrait fonctionner. Leçon : ne décommentez pas la ligne "d'exécution" d'un script tant que vous n'avez pas confirmé que vos cd fonctionnent correctement !

AlleGamers.com

AlleGamers est une communauté de gamers qui cherche à élargir la connaissance des jeux vidéo.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X