Vor längere Zeit habe ich ja bereits ein Tutorial geschrieben, wie man einen Minecraft Server unter Ubuntu 12.10 installiert. Da diesen Monat die neue LTS Version von Ubuntu rausgekommen ist, will ich hier nun ein aktuelles Tutorial dazu schreiben.
Schritt 1: System vorbereiten
Zuerst brauchen wir eine Ubuntu Desktop oder Server Installation. Diese wird dann erstmal mit dem folgenden Befehl auf den aktuellen Stand gebracht:
1 | apt-get dist-upgrade |
Schritt 2: Java installieren
Damit wir den Minecraft Server installieren können, brauchen wir als aller erstes Java. Dafür fügen wir als erste ein Java Repository auf unserem Server hinzu.
1 | sudo add-apt-repository ppa:openjdk-r/ppa |
Die Ausgabe sollte dann ungefähr so aussehen:
1 2 3 4 5 6 7 8 9 10 11 12 | sudo add-apt-repository ppa:openjdk-r/ppa Mehr Informationen: https://launchpad.net/~openjdk-r/+archive/ubuntu/ppa Drücken Sie [ENTER], um fortzufahren oder Strg-c, um das Hinzufügen abzubrechen gpg: Schlüsselbund `/tmp/tmp1e_xz03v/secring.gpg' erstellt gpg: Schlüsselbund `/tmp/tmp1e_xz03v/pubring.gpg' erstellt gpg: Schlüssel 86F44E2A von hkp-Server keyserver.ubuntu.com anfordern gpg: /tmp/tmp1e_xz03v/trustdb.gpg: trust-db erzeugt gpg: Schlüssel 86F44E2A: Öffentlicher Schlüssel "Launchpad OpenJDK builds (all archs)" importiert gpg: Anzahl insgesamt bearbeiteter Schlüssel: 1 gpg: importiert: 1 (RSA: 1) |
Jetzt laden wir einmal die Ressourcen für den Paketmanager neu.
1 | apt-get update |
Jetzt können wir Java installieren.
1 | sudo apt-get install openjdk-8-jdk |
Nach der Installation lassen wir uns noch die Java Version anzeigen.
1 | java -version |
Die Ausgabe dazu sieht wie folgt aus.
1 2 3 4 | java -version openjdk version "1.8.0_03-Ubuntu" OpenJDK Runtime Environment (build 1.8.0_03-Ubuntu-8u77-b03-3ubuntu3-b03) OpenJDK 64-Bit Server VM (build 25.03-b03, mixed mode) |
Schritt 3: Verzeichnis und User
Um eine saubere und einigermaßen sichere Installation durchzuführen, legen wir für Minecraft einen neuen User mit eigenem Homeverzeichnis an.
Zuerst den Ordner, da wir diesen beim Anlegen des Users übergeben.
1 | mkdir /home/minecraft/ |
Und nun den User. In unserem Fall geben wir dem User noch eine Shell mit. Wenn ihr ein bisschen mehr Erfahrung mit Linux habt, könnte ihr dies auch zu Gunsten der Sicherheit weglassen.
1 | useradd -g users minecraft -d /home/minecraft/ -s /bin/bash |
Nun sorgen wir erstmal dafür, dass der User auch Zugriff auf sein eigenes Verzeichnis bekommt.
1 | chown minecraft /home/minecraft |
Bevor wir jetzt mit der eigentlichen Installation beginnen, bekommt der User minecraft noch ein Passwort gesetzt.
1 | passwd minecraft |
Schritt 4: Minecraft Installation
Als erste wechseln wir zu dem soeben angelegten Minecraft User.
1 | su - minecraft |
Mit diesem laden wir den Bukkit Server für Minecraft herunter.
1 | wget http://sh.st/st/40260a458161ce19c15c6bc46ebe3bd6/http://tcpr.ca/files/craftbukkit/craftbukkit-latest.jar |
Nach dem Download benennen wir die Datei noch um.
1 | mv craftbukkit-latest.jar minecraft_server.jar |
Jetzt brauchen wir noch ein kleines Start Skript. Dafür legen wir zuerst eine Datei.
1 | touch start.sh |
Das Skript wird nun mit dem folgenden Inhalt ausgestattet.
1 2 3 | #!/bin/bash cd /home/minecraft/ screen -A -m -d -S minecraft_server java -Xmx2G -Xms512M -jar minecraft_server.jar |
Anschließend müssen wir die Rechte auf dem Script noch ändern.
1 | chmod 744 start.sh |
In dem wir nun das Skript ausführen, starten wir den Server.
1 | ./start.sh |
In unserem Ordner wurden nun ein paar Dateien hinzugefügt, aber wir sehen keine Screen Session mit dem Namen minecraft_server.
1 2 3 4 | screen -ls There is a screen on: 9311.pts-0.UbuntuServer (26.04.2016 19:54:51) (Detached) 1 Socket in /var/run/screen/S-root. |
Dies liegt daran, dass wir zuerst noch die Eula akzeptieren müssen. Dafür öffnen wir die Datei eula.txt mit einem Editor und ändern eula=false zu eula=true.
1 2 3 4 5 6 7 8 | #By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). #Tue Apr 26 19:54:51 CEST 2016 #Vorher eula=false #Nachher eula=true |
Nun führen wir das Script erneut aus. Jetzt sehen wir auch eine Screen Session mit dem Namen minecraft_server.
1 2 3 4 | screen -ls There is a screen on: 9381.minecraft_server (26.04.2016 19:58:49) (Detached) 1 Socket in /var/run/screen/S-minecraft. |
Wir können uns nun mit unserem Minecraft Client auf dem Server Verbinden. Dafür einfach die IP Adresse des Server und Port 25555 verwenden.
Super Tutorial, mal schauen ob der Server auch auf nem Raspberry Pi 2 ohne Probleme läuft :P
Denke schon. Darfst halt keine Desktop Variante verwenden =p
Ebenfalls Danke für die Anleitung.
Kleine Anmerkung: Der Port ist Defaultmäßig 25565 (also mit 6 an 4. Stelle)
Heyy an sich is die Anleitung nicht schlecht aber der erste schritt klappt auf meinem vServer nicht. Der rest haut so weit hin. Würde mich über Hilfe freuen bin meist auf meinem TS System51.de
Zwischen Samstag und Sonntag von 14-20 Uhr
Hi,
auf dem vServer kann es auch sein, dass ein dist-upgrade verboten ist, es sei den es ist ein root-Server.
Gruß
Christian
Hey,
eine sehr gelungene Anleitung, die einzige Frage die ich noch habe: Wie kann ich mir OP Rechte auf dem Server vergeben, habe bereits versucht meinen Nutzer in der OPS.json einzutragen was leider ergebnislos war.
Moin,
also bei mir gibts eine ops.txt in den ich einfach den Username eintrage. Ob das ganze greift kannst du dir im Spiel mit dem Befehl /oplist anzeigen lassen.
Hast du vllt ein Typo in der ops.json? Kannst du mir die mal schicken oder hier posten?
Gruß
Christian
Hallo,
ich bin zwar etwas spät dran allerdings kannst du dir in der (screen) Konsole mit dem Befehl „op Benutzername“ OP Rechte geben. (Benutzername durch den Minecraft-Namen ersetzen)
Welche Minecraft Versionen unterstützt das Ding?
die Server ip ist bei mir leer und wo muss ich im Minecraft Klient einen Port eingeben?
Du vergibtst dir OP rechte über die Konsole, also den screen mit op DEINNAME
nach eingabe von ./start.sh
kommt als antwort ./start.sh: Zeile 3: screen: Befehl nicht gefunden
Hi Sebastian,
d.h. es muss noch das Programm screen installiert werden. Dafür kannst du einfach den Befehl
apt-get install screen
verwenden. Anschließend solltest du das Skript ausführen können.
Gruß
Christian
ich hänge beim start und bekomme als fehler immer screen nicht gefunden wie könnte man das lösen
Top Anleitung, alles geklappt. Wir bekomme ich das in der Autostart. Habe schon einiges geschaut und auch mit der rc.local gespielt aber es klappt irgendwie nicht. Bin auch nicht der mega Linux Freak.
Chris
Hi Chris,
welche Version von Ubuntu verwendest du den? In den aktuelleren Varianten wird die rc.local eigentlich nicht mehr verwendet sondern eher systemd.
Wenn ich es die nächsten Zeit schaffe, werde ich auch mal ein aktuelleres Tutorial schreiben.
Gruß
Christian
Hallo!
kann mir einer sagen wie ich den Server wieder stoppen kann?
VG Michael
Hey, ich habe ein paar probleme mit deiner anleitung und ich weiß nicht wieso… Nr.1 bei mir ist dieser Ordner kein orner sondern eine datei. Nr2. ich habe kein Text dokument mit eula.txt könntest du mir da bitte helfen?
MFG Friedel