Raspberry Pi: Minecraft Server Bukkit/Spigot installieren
Minecraft ist seit Jahren ein beliebtes Kreativspiel und wenn man gemeinsam mit Freunden spielen möchte wird man schnell darauf kommen, dass der Bukkit/Spigot Server die sinnvollste Umsetzung ist. Neben dieser gibt es den offiziellen Minecraft Server (Vanilla) und die C++ Implementierung MCServer, welche performanter ist, jedoch nicht alle Spielmechaniken umgesetzt hat. SpigotMC ist ein Fork des CraftBukkit Projektes, welches inzwischen den Vanilla Server patcht. Die Umsetzung spart einiges an Ressourcen ein und läuft daher, trotz der Umsetzung in Java, auf dem Raspberry Pi. Richtig rund läuft der Server auf dem Raspberry Pi 2 Model B (oder neueren Modellen). Bei älteren Modellen stößt man häufiger an die Grenzen der Hardware, jedoch kann man den Minecraft Server auch auf dieser Hardware installieren. Wie man Spigot auf dem Raspberry Pi installiert und so konfiguriert, dass man richtig spielen kann, beschreibe ich im folgenden Tutorial.
Voraussetzung: Raspbian oder vergleichbare Distribution installiert
Empfohlen: Raspberry Pi 2 Model B
Zunächst sollten wir den Raspberry Pi übertakten (Overclocking). In der aktuellen Version von Raspbian ist dies über den folgenden Befehl ohne Garantieverlust möglich. Nach der Eingabe des Befehls wählen wir im Menü den Punkt Overclock an. Für den Raspberry Pi 2 Model B stellen wir die Übertaktung auf Pi2. Für ältere Modelle verwenden wir die Einstellung High. Daraufhin müssen wir den Raspberry Pi neustarten.
sudo raspi-config
Außerdem ist es sinnvoll den SWAP zu erweitern. Dabei ist eine Einstellung von 1024 MB empfehlenswert. Wie das geht, beschrieb ich in dem Artikel SWAP erweitern.
Des Weiteren benötigen wir die Programme screen und git, die wir mittels des Paketmangers APT installieren können.
sudo apt-get install git screen
Wir erstellen nun einen neuen Benutzer namens minecraft, in dem wir den Bukkit/Spigot Minecraft Server später starten werden und wechseln anschließen in diesen. Dabei vergeben wir für den Benutzer ein möglichst sicheres Passwort, das wir ggf. später benötigen werden.
sudo adduser minecraft
sudo su - minecraft
Nachdem wir die nötige Struktur hergestellt haben, können wir an den Spigot Server selbst gehen. Diesen kann man nicht fertig herunterladen, sondern wir müssen diesen mittels des Build Tools selbst patchen. Dieses laden wir daher zunächst herunter und führen den Prozess anschließend aus. Das Erzeugen des Builds kann einige Zeit in Anspruch nehmen.
Falls du keinen Raspberry Pi 2 Model B oder neuer verwendest und somit weniger als 1GB RAM zur Verfügung steht, wird das Erzeugen eines Builds wahrscheinlich nicht funktionieren. In diesem Fall muss dies auf einem anderen Rechner ausgeführt werden und anschließend alle Dateien auf den Raspberry Pi (bspw. mittels SFTP/FileZilla) in den Ordner /home/minecraft übertragen werden.
wget https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar
java -Xmx1G -jar BuildTools.jar
Nachdem wir nun einen aktuellen Build des Spigot Servers als spigot-1.8.jar (ggf. bei neuer Version abweichend und in Script anzupassen) haben, erstellen wir ein kleines Run-Script, da beim Aufruf von Spigot auf dem Raspberry Pi einige Parameter zur Optimierung der Java-Instanz verwendet werden sollten. In dem Editor nano kann man mittels STRG + X, Y und Enter speichern.
Bei älteren Modellen als dem Raspberry Pi 2 Model B muss der Parameter -Xmx1024M durch -Xmx512M ersetzt werden, da wir Java max. 512 MB RAM zuweisen sollten.
nano run.sh
#!/bin/sh BINDIR=$(dirname "$(readlink -fn "$0")") cd "$BINDIR" java -Xmx1024M -XX:ParallelGCThreads=8 -Xincgc -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSIncrementalPacing -XX:+AggressiveOpts -XX:+CMSParallelRemarkEnabled -XX:+DisableExplicitGC -XX:MaxGCPauseMillis=500 -XX:SurvivorRatio=16 -XX:TargetSurvivorRatio=90 -XX:+UseAdaptiveGCBoundary -XX:-UseGCOverheadLimit -Xnoclassgc -XX:UseSSE=3 -XX:LargePageSizeInBytes=4m -jar spigot-1.8.jar nogui
Damit wir das Run-Script auch ausführen können, geben wir dieser Datei entsprechende Rechte.
chmod +x run.sh
Jetzt könnten wir den Bukkit/Spigot Server erstmalig starten. Wenn man bereits eine Welt hat auf der man weiterspielen möchte, sollte man diese in den Ordner world/ in /home/minecraft/ hochladen. Dazu kann man sich wieder SFTP/FileZilla zu Nutze machen. Man sollte sich mit dem Benutzer minecraft und dem zuvor definierten Passwort anmelden.
./run.sh
Mit der Meldung, dass man der EULA zustimmen muss, wird sich der Server automatisch beenden. Hierzu editieren wir die generierte eula.txt und ersetzen in dieser, nachdem wir die EULA gelesen haben und dieser zustimmen möchten, die erste Zeile durch zweitere.
nano eula.txt
eula=false
ersetzen durch
eula=true
Nun können wir den Server erneut starten. Nach etwa fünf Minuten wird in der Konsole die Ausgabe [INFORMATION] Done (Xs)! For help, type „help“ or „?“ erscheinen, welche signalisiert, dass der Server bereit sei. Dies dauert so lange, da der Server ggf. den Ansatz einer Welt generiert. Jedoch sollten wir den Server mittels des Kommandos stop
wieder beenden um die Bukkit/Spigot Einstellungen zu optimieren.
./run.sh
Damit der Server performanter läuft, müssen wir die Configs von Minecraft noch leicht modifizieren. Ich habe beim Schreiben dieses Tutorials etwas gespielt und eine Config zusammengestellt bei der die Einschränkungen meines Erachtens nach in einem guten Verhältnis zu den Möglichkeiten stehen.
Gerne dürft ihr die Config modifizieren und, wenn eure besser ist, diese mit einer kurzen Beschreibung in den Kommentaren posten!
Download: https://jankarres.de/wp-content/uploads/spigot_config_2015_02.tar.gz
Der Minecraft Server kann nun erneut gestartet werden. Nachdem die Meldung [INFORMATION] Done (Xs)! For help, type „help“ or „?“ erscheint, kann man auf den Server im Spiel connecten.
Möchte man den Minecraft Server beim Starten des Raspberry Pis gleich mit starten, so kann man am Ende der Datei rc.local, jedoch vor exit 0, hierfür die folgende Zeile einfügen. Dazu sollten wir uns wieder in dem Benutzer pi befinden, da wir sudo-Rechte benötigen.
sudo nano /etc/rc.local
su minecraft -c 'cd /home/minecraft && screen -dmS minecraft ./run.sh'
Jetzt kann das Zocken auf dem Raspberry Pi losgehen! Wenn Freunde von außerhalb des eigenen Netzwerkes auch auf dem Server mitspielen können sollen, muss zunächst eine Portfreigabe erstellt und anschließend (nicht zwingend, aber empfehlenswert) eine DynDNS Domain eingerichtet werden.
Zugriff außerhalb des eigenen Netzwerks
Portfreigabe im Router
Soll der soeben installierte Dienst auch außerhalb des eigenen Netzwerkes verfügbar sein, so müssen folgende Ports im Router freigegeben werden. Wie man freigibt, beschrieb ich in dem Artikel Portforwarding bei Fritz!Box und Speedport.
Dieses Tutorial wurde am 08. März 2015 überarbeitet.
115 Kommentare. Hinterlasse eine Antwort
Das Thema würde mich auch interessieren.
Nur wie viele Leute schafft der Raspberry? Wir sind meistens so 3-4. Geht er da nicht schon in die Knie? Auf dem PI liegt auch meine ganze Musik die ich per MPD abspiele. Habe Angst das der PI dann zu stark ausgelastet ist mit dem Minecraft server 🙂
Wie sind deine Erfahrungen da?
Wie in Step 12 beschrieben schafft meine Config, wenn nur der Minecraft Server auf dem Raspberry Pi läuft, momentan zwei Spieler. Aber vielleicht bekommst du sie ja so hin gebogen, dass auf 4 Spieler gehen. Falls ja, gerne hier posten 😉
Eine gute Methode ist in der server.properties die view-distance runterzusetzen, da der Server dann weniger Chunks sendet oder was ich mache ist den BananaPi nutzen, der ist etwas teurer, hält aber MINDESTENS 4 Spieler laggfrei, mehr hab ich noch nicht zusammengekriegt.
Ich habe einen bananapi und möchte wirklich gerne den server installieren. Ist dafür openjdk-7 ok oder muss es oracle java sein?
Und noch wichtiger: woher bekomme ich im Moment spigot? Hat jemand eine vertrauenswürdige dl Möglichkeit?
Danke!
Zu 1: OpenJDK sollte auch funktionieren, wenn auch etwas weniger performant.
Zu 2: Der Artikel wird in ein paar Wochen überarbeitet. Gibt inzwischen eine Möglichkeit wie es wieder geht 😉
Oracle Java macht wesentlich weniger Probleme.
Hab Spigot für MC 1.8.1 die Tage erst auf dem Pi 2 installiert.
Im großen und ganzen musst nur machen was unter http://www.spigotmc.org/wiki/buildtools/ steht.
Hier mal meine Notizen dazu. Ggf hilfts dir was:
################################
### MC SERVER (Spigot) ###
#http://www.spigotmc.org/wiki/buildtools/
mkdir ~/minecraftServer
cd minecraftServer
mkdir server
mkdir material
cd material
# oracle-java8-jdk ist/sollte vorinstalliert und funzt wesentlich problemloser… daher…
sudo apt-get install git
wget -O BuildTools.jar https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar
git config –global –unset core.autocrlf
java -jar BuildTools.jar
#5. Wait as it builds your jars. In a few minutes you should have freshly compiled jars!
#6. You can find CraftBukkit in CraftBukkit/target, you can find Spigot in Spigot/Spigot-Server/target/spigot-1.8-R0.1-snapshot.jar
#7. Enjoy your new server!
#8. Need help getting started running the server? Look here: Getting Started [http://www.spigotmc.org/wiki/spigot-installation/]
cp minecraftServer/material/Spigot/Spigot-Server/target/spigot-1.8-R0.1-SNAPSHOT.jar ~/minecraftServer/server/
#http://www.stuffaboutcode.com/2015/02/raspberry-pi-2-minecraft-server.html
cd ~/minecraftServer/server
nano start.sh
# => #!/bin/bash
# => java -Xmx1024M -Xms512M -jar minecraft_server.1.8.1.jar nogui
chmod +x start.sh
./start.sh
# => Loading libraries, please wait…
# GEDULD!
# You should receive a message asking you to accept the EULA.
nano eula.txt
# Change:
eula=false
# To:
eula=true
./start.sh
### Autostart via Crontab
crontab -e
#=> add:
@reboot screen -d -m -S minecraftserver /home/jafix/minecraftServer/server2/start.sh
Hey Cool! Danke für dein Tutorial. Hat mir echt geholfen, aber für die Installation brauchte ich etwas länger. Der Artikel hier hat mir geholfen: http://www.kammerath.net/raspberry-pi-als-server.html — bin noch Linux-Neuling 😉 Vg, Holger
Tolle Sache. Hab ein Pi mit leider nur 256 MB. meine Erfahrungen bisher sind:
Mehrere Spieler sind an sich gar nicht das Problem. Problematisch ist immer das nachladen neuer Umgebungen. Will heisen, wenn alle Spieler in unterschiedliche Richtungen ausschwärmen geht die performance in die Knie.
Also immer schön zusammen bleiben 🙂
Ich habe auch nur den mit 256 MB RAM. Das habe ich auch schon bemerkt, wobei das Problem nur manchmal auftritt. Wann ist mir jedoch bislang ein Rätzel…
Ich habe den Pi mit 512 MB Ram und der Server startet („done“) in 111 Sekunden. Nun habe ich aber das Problem, dass ich auch nach mehreren Versuchen nie joinen kann. Minecraft zeigt mir den Server gleich rot an mit Communication Error und wenn ich doppelklicke, kommt bei mir „Verbindung unterbrochen – Internal exception: java.net.SocketException: Connection reset“. Der Pi zeigt an: „/10.0.0.4:52960 lost connection“. Kann mir da jemand helfen?
Damit keine neuen Chunks nachgeladen werden müssen, kann man ein Plugin namens NoNewChunks verwenden, da Spigot ja auch die Bukkit Plugins unterstützt.
Hast du die „spezielle“ Config eingebunden und erst danach den Minecraft Server gestartet? Falls ja, hast du schon mal versucht den Minecraft Server neuzustarten? Gabs bei mir auch schon mal, war aber nach einem Neustart bei mir gelöst.
Ja, ich habe das öfter gemacht und jeweils 5 minuten gewartet.
Mhhh… der Raspberry Pi ist übertaktet, wie in Step 1 erklärt?
jap, ist auf high gestellt.
Eigenartig. Weis nun auf Anhieb auch keine Lösung für das Problem. Sorry.
Ich habe durch Zufall herausgefunden, dass ein Spigot-Server auch auf meinem Laptop nicht funktioniert. Auch da kann ich weder mit dem Computer, auf dem der Server läuft, noch mit einem anderen joinen und habe die selben Fehlermeldungen und Probleme. Liegt das vielleicht an der Version oder so?
Hallo, ich würde gerne wissen wie ich mit dann via SSH in die Screen Session einklinken kann. Da nach einem Neustart, beim Verbinden die Session nicht geöffnet wird. Danke für deine Hilfe.
Mittels
screen -ls
kann man alle Screen Instanzen auflisten lassen, wobei jede eine Nummer trägt. Mittels screen -r 0000 klinkt man sich ein (0000 durch Screen Instanz Nummer ersetzen).Der Download: https://jankarres.de/wp-content/uploads/2013/04/spigot_config_2013_04_06.tar.gz funktioniert leider nicht mehr.
Gerade ausprobiert. Funktioniert einwandfrei!
hmmm, chrome will es nicht, aber wget nimmt es wohl… was ein Mist. Entschuldige bitte! 🙂
Huhu!
Was ich nicht verstehe, wie logge ich mich denn dann in den Server ein?
PS
Bitte nicht hauen, die Frage ist ernst gemeint.
In Minecraft? Minecraft öffnen => Einloggen => Multiplayer => IP des Raspberry Pis eintragen => Spielen 😀
Damit wget beim herunterladen keinen Fehler wegen fehlender Zertifikate meldet, so aufrufen:
sudo wget –no-check-certificate http://www.java.net/download/jdk8/archive/b103/binaries/jdk-8-ea-b103-linux-arm-vfp-hflt-14_aug_2013.tar.gz
Danke Jan, da scheint Oracle ein SSL-Zertifikat hinzugefügt zu haben. Habe den Artikel ergänzt und gleich den Link zur neuen Version von Java gesetzt.
Hey… Kleiner Fehler. Beim Java Teil müsste es statt „sudo wget –no-check-certificate …“
richtig „sudo wget –no-check-certificate “ heißen… 🙂
Thanks, verbessert.
Danke fürs Tutorial, bin totaler Neuling was Linux angeht, deshalb bin ich schon ziemlich froh drüber. 😉 War schon auf dem Server, laufe da aber durch Tiere durch und erhalte keine Rohstoffe beim Abbauen…. liegt das an der Config? Habe die noch nicht angepasst, da ich ehrlich gesagt keine Ahnung habe wie ich da vorgehen muss… daher: Wie bekomme ich denn deine Config auf den Server? Wäre super, wenn du das noch erklären könntest 🙂
Ohne angepasste Config treten die von dir genannten Fehler auf, da der CPU des Raspberry Pi überlastet ist. Du bekommst sie, wenn nicht über die Konsole, über einen sogenannten SFTP-Client auf den Raspberry Pi. Für Windows kann ich WinSCP empfehlen. Des Weiteren solltest du, damit es rund läuft, den Raspberry Pi übertakten (Link).
Okay, vielen Dank! Die Config ist drin, der Raspberry Pi (Modell B mit 512mb RAM) ist übertaktet, hängt per LAN an meiner Fritzbox und lässt sich über PuTTY und WinSCP steuern . Ports sind weitergeleitet, die DYNDNS ist eingerichtet und ich komme grundsätzlich schon mal von meinem Laptop aus über WLAN auf den Minecraft-Server.
Die Performance ist aber grausam… die Anmeldung klappt nur manchmal und wenn, dann stehe ich häufig nur im „Schwarzen“… wenn es denn mal klappt und ich richtig in meiner Welt bin, dann dauert es, bis ich etwas abbauen kann, oft springt mein Charakter an andere Orte, wenn ich etwas abgebaut habe, kommt es häufig vor, dass die Stücke wieder erscheinen und ich erst beim erneuten Abbau die Rohstoffe bekomme etc.
Woran könnte das liegen?
Klingt so als sei der Raspberry Pi noch immer überfordert. Wie hoch hast du denn übertaktet? Prinzipiell kann ich dir sagen: Man kann spielen, aber solche Fehler werden ab und zu vorkommen, da der Raspberry Pi einfach nicht wirklich genug Leistung hat. Viel ausprobieren zum Optimieren ist das einzige was wirklich hilft.
Die ganze Java installiererei ist nun wesentlich einfacher.
EInfach „sudo apt-get update && sudo apt-get install oracle-java7-jdk“ und los gehts.
Siehe dazu: http://www.raspberrypi.org/archives/4920
Habe ich das vergangene Wochenende auch mitbekommen, jedoch noch keine Zeit gefunden dazu was zu schreiben. Aber schon zu sehen, dass es auch Leser gibt, die einen immer wieder auf Verbesserung aufmerksam machen 🙂
Das Tutorial wurde am 05. Oktober 2013 überarbeitet.
Hallo Jan,
hast du auch schon einen Minecraft-Server auf dem Cubieboard 2 zum Laufen bekommen? Würdest du dafür auch ein Tutorial schreiben?
Sollte genau so wie auf dem Raspberry Pi gehen, daher schau dir mal dieses Tutorial ab Step 3 an. Sofern die Installation von Java nach dieser Anleitung nicht funktioniert versuche es mittels des Kommandos
sudo apt-get install openjdk-7-jdk
.Java-Installation hat auf dem Cubieboard2 mit deinem Befehl super geklappt. Spigot-Server bringt aber nach dem Aufruf von ./start.sh keine Rückmeldung. World ist installier. Hast du eine Idee?
In wiefern keine Rückmeldung? Keine Ausgabe in der Konsole oder Ingame? Falls es eine Konsolenausgabe gibt sind in dieser Fehler enthalten?
Keine Ausgabe in der Konsole. Nach dem Start von ./start.sh passiert nichts mehr 🙁
Dann läuft da etwas schief. Wie siehts aus, wenn du im Ordner von Spigot folgenden Befehl ausführst:
java -Xmx512M -jar spigot.jar nogui
Nach Eingabe des Befehls passiert wieder nichts 🙁
java -version
java version „1.7.0_25“
OpenJDK Runtime Environment (IcedTea 2.3.10) (7u25-2.3.10-1~deb7u1)
OpenJDK Zero VM (build 22.0-b10, mixed mode)
Habs bei mir soeben auch noch einmal ausprobiert. Ohne Probleme. Jedoch weiß ich nicht wie ich dir ohne Ausgaben weiter helfen kann…
Habe Cubian auf dem Cubieboard2 installiert. Hast du es mit Cubieez getestet?
Unter Cubieez habe ich das gleich Problem, der Spigot-Server startet nicht, sehr seltsam!
Ist mein Cubieboard2 defekt?
Kann man nicht wirklich von ausgehen. Eher an einem Anwendungsfehler. Jedoch kann ich dir ohne jegliche Ausgabe leider nicht wirklich weiterhelfen.
Habe eine super Alternative gefunden. Kein Java-, sondern ein C++ Server.
http://mc-server.org
Source-Code auf dem Cubieboard2 compiliered, gestartet und dann über einen vollfunktionsfähigen und schnellen MC-Server gefreut.
Laut Projekt auf Github gibts in der Implementierung jedoch einige Bugs, die das Spiel direkt betreffen. Jedoch sieht das im Gegensatz zu vor einem Jahr echt deutlich besser aus. Werde ich mir auf jeden Fall mal wieder ansehen. Danke Oliver!
[…] Quelle: jankarres.de […]
tolle sache aber wenn ich den server starten will zeigt er mir das hier an:Warning, your max perm gen size is not set or less than 128mb. It is recommended you restart Java with the following argument: -XX:MaxPermSize=128M
Please see http://www.spigotmc.org/wiki/changing-permgen-size/ for more details and more in-depth instructions.
[12:27:54 INFO]: Starting minecraft server version 1.7.10
[12:27:54 WARN]: To start the server with more ram, launch it as „java -Xmx1024M -Xms1024M -jar minecraft_server.jar“
[12:27:54 INFO]: Loading properties
[12:27:54 INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
[12:27:55 INFO]: Stopping server
[12:27:55 INFO]: Stopping server
Die Warnung kannst du getrost ignorieren. Die eula für Server scheint neu zu sein. Eine gute Anleitung findest du im Q&A Bereich von Akliz (Englisch).
Spigot war ja ne gute und bessere alternative zu Bukkit nur mussten sie das Projekt jetzt wegen der EULA beenden/einfrieren, man kann auf der Spigot Webseite keine spigot.jar mehr downloaden…. .Sie werde das Projekt auch wohl nicht mehr aufnehmen können, was für Minecraft-Server auf Raspberry pi Basic schade ist, vor allem ist die letzte 100% satbile Version von bukkit 1.6.4 währden bei Spigot selbst die 1.7.10 fast 100% stabil lief. PS: so weit ich das versandenen habe dürfen nur noch Bukkit und Mojang Minecraft Server-Versionen programmieren (kann mich aber auch irren)
Ich finde es vor allem schlecht, dass es nun keine Serveralternative mehr gibt, die Plugins unterstützt… 🙁
Die Community welche Mojang damals so stark (finanziell) unterstützt hat so mit den Füßen zu treten finde ich nicht ok…
Den letzten Build (#1649) und ein paar davor findet man (noch) unter http://dl.ix.gy/spigot/
MD5 Werte mit den offiziellen Angaben der Spigotseite vergleichen damit Ihr euch nix einfangt!!!
also so weit ich das jetzt bei genauerem Lesen verstanden habe gibt es das „Eigentliche“ Craftbukkit Team nicht mehr. Was ich auch verstehen kann da Bukkit wohl schon vor 2 jahren von Mojang gekauft wurde ohne das die eigendlichen Dev’s des Bukkit Team’s das wusten. Mojang hat wohl passen zur neuen 1.8 einfach gesagt das sie nun nach ihren Vorlagen Arbeiten sollen. Da sie die letzten 2 Jahren so zu sagen hindergangen wurden haben fast alle Dev’s sich von Bukkit verabschiedet. Spigot scheind aber bezüglich der Eula nicht aufzugeben und haben nun so gar „patches“ für die #1649 heraus gebracht, wo mit man wenigstens einige bugs beheben kann ohne eine „Volle-Server-Version“ zum Download an bieten zu müssen. Ich hoffe das Spigot erfolg hat und bald wieder seine Versionen zum downloaden anbieten kann 🙂 .
PS: sollte ich mich in paar Punkten irren, dann korrigiert sie bitte mit einer Antwort
Hey Jan,
Ich will hier nur kurz sagen, dass man immernoch einen MC-Server mit Spigot aufm Raspi betreiben kann. Man muss lediglich die neueste BuildTools.jar von der Spigot-Seite runterladen, auf Windows mit Git Bash ausführen und dann die Dateien auf den Raspi ziehen. Dann braucht man nur noch JDK8(/7) und man muss noch die server-Properties entsprechend herunterschrauben. Anschließend kann man die spigot-Jar mit dem Terminal „java – Xms256M -Xmx496M – jar spigot.jar“ starten. Wer mag, kann sich noch Screens installieren undso den Server in nem Terminal-Screen laufen lassen. Bei mir hat das so geklappt, aber wie gesagt:man benötigt Git Bash zum Ausführen der Jar, denn der Pi hat nicht genug Leistung für die ganze Installation. Aber der Server läuft akzeptabel.
LG
Wird im nächsten Update des Artikels entsprechend überarbeitet sein 😉
hello..
also ich hab das jetzt soweit durch gespielt; läuft besser als ein vanilla server.. allerdings baut sich die welt im creativ modus um mich herum nur sehr sehr langsam auf.. kann man das irgendwie beschleunigen?
Das ist nunmal beim Pi so 🙂 Er hat nicht die Leistung die man von einem richtigen Server kennt. Du kannst vllt ein bisschen mit der Config rumspielen und vllt ein paar Lagreduzierende Plugins(bspw Clearlag) installieren um mehr Leistung zu bekommen. Allerdings glaube ich, dass man dadurch nicht viel mehr Leistung bekommt. Mit nem RasPi2 kann man da vermutlich weitaus mehr rausholen.
Lg
kurze historie: ich hab nen raspberry pi 2, auf pi2 übertaktet, und eben einen ganz normalen vanilla server installiert. lief gut, allerdings kamen im log oft „can´t keep up“ meldungen.. auch tnt explosionen waren eher eine dia-show.
nun hab ich den versuch mit der anleitung hier gemacht.
und wie gesagt, er läuft zwar performanter (tnt explosionen etc), aber eben die chunks in unmittelbarer nähe werden sehr sehr oft nachgeladen.
ich dreh mich in eine richtung, seh erstmal schwarz, nach und nach lädt die welt.
dreh ich mich um ist es auch so. dreh ich mich wieder in die ausgangsstellung, lädt er wieder alles neu..
war mit vanilla eben nicht so..
und hier die frage, kann man das einstellen, dass er mehr von der welt lädt und auch behält?
Heyho,
ich hab das jetzt mal ausprobiert. Hat nicht funktioniert über das Internet. Ich habe da mal was von iptables gehört, und dass habe ich dann mal gegoogelt, bin aber wirklich nirgendwo durchgestiegen 🙁 könnt ihr das noch ergänzen, so dass die „Firewall“ des RasPis das auch alles zulässt?
LG
Der Raspberry Pi hat, sofern nicht separat installiert, keine Firewall. Du musst die benötigten Ports (siehe Ende des Artikels) jedoch in deinem Router freigeben.
Heyhey 🙂
Das habe ich soweit alles gemacht, sowohl mit TCP als auch mit UDP. Zusätzlich habe ich noch diesen noip-Client am laufen, der automatisch die IP aktualisiert, damit man nicht immer die IP erfragen muss, wenn man von außerhalb joinen möchte. Allerdings funktioniert es weder mit der noip-IP noch mit der öffentlichen IP meines Wlan Routers (das ist so einer von Kabel Deutschland, genaugenommen von CBN Inc. -> er trägt den einprägsamen Namen CH6640E)
LG
Überprüfe bitte mal ob du einen DS-Lite Anschluss hast (bspw. bei WasIstMeineIP.de). Das würde bedeutet, dass du nur noch eine IPv6-Adresse hast (keine „normale“ IPv4-Adresse). Bei Kabel Deutschland gibt es das inzwischen häufiger, insbesondere bei Neukunden. Falls das der Fall ist musst du nicht eingehend mit der Thematik beschäftigen, denn das wird dann alles andere als einfach.
Hi 🙂
vielen Dank für die schnelle Antwort, aber bis jetzt ist keine IPv6 Adresse sondern nur eine IPv4 vorhanden.
LG
Okay, dann tippe ich, dass irgendetwas an der Portweiterleitung im Router nicht korrekt gesetzt ist. Das solltest du dir noch einmal genau ansehen.
Von Zeit zu Zeit erscheint einfach die Fehlermeldung „Internal Exception: java.io.IOException: Eine vorhandene Verbundung wurde vom Remotehost geschlossen.“ Nach diesem Error ist der Raspberry Pi auch nicht mehr per SSH bzw. Remotdesktopverbindung zu erreichen. Woran könnte das liegen, und wie kann man es verhindern?
LG
Ich würde auf eine Überlastung des CPUs tippen. Hast du denn wie beschrieben deinen Raspberry Pi übertaktet?
Ja habe ich, mit der vorgefertigten Möglichkeit für einen Raspi2, es ist aber nicht weiter schlimm, da es nur zu beginn eines server setups auftritt und mit der zeit immer seltener auftritt, von ein paar mal stündlich zu beginn bis kaum mehr bzw. maximal einmal am Tag nach ca. einer Woche
Danke! 🙂 Du bist der hammer! Wofür stehen die Parameter? Also die mit -XX: und so.
Die einzelnen Parameter googelst du am besten mal, denn das sind diverse, die verschiedene technische Parameter steuern.
Mit Java 8 (Oracle) bekomme ich die Warnung: „Java Hotspot(TM) Client VM warning: Using incremental CMS is deprecated and will likely be removed in a future release“.
Soll einfach der Parameter entfernt werden?
Ich habe jeden Step abgearbeitet, doch als ich den Server ausführen wollte, bekam ich die Meldung „Error: Unable to access jarfile spigot-1.8.jar
An was kann das liegen?
Ist inzwischen 1.8.3 also einfach das shell Script anpassen
Ja ich hatte auch spigot-1.8.3.jar geschrieben, aber da kam der gleiche Fehler 🙁
Hi zusammen komme bei Punkt 6 nicht mehr weiter
Nano run.sh dann füge ich den Skript rein und speichere es
Danach chmod +x run.sh ( keine Änderung )
./ run.sh kommt die Fehlermeldung error: unable to access jarfile spigot 1.8.jar
Bitte um Hilfe 🙁
Siehe Kommentar von Steven. Ist im Artikel auch so erläutert 😉
Bei mir funktioniert das Ausführen der BuildTools.jar nicht.
Am Raspberry Pi kommt folgende Fehlermeldung:
Exception in thread „main“ org.eclipse.jgit.api.errors.JGitInternalException: Invalid ref origin/master specified
at org.eclipse.jgit.api.ResetCommand.call(ResetCommand.java:160)
at org.spigotmc.builder.Builder.pull(Builder.java:460)
at org.spigotmc.builder.Builder.main(Builder.java:226)
Am PC funktioniert es auch nicht.(Es kommt auch eine Fehlermeldung)
Ich bedanke mich im voraus für eine Antwort.
Hallo,
laut http://www.spigotmc.org/wiki/buildtools/ liegt es daran, dass du keine Schreib-/Leserechte für den Ordner hast. Stelle sicher, dass du diese Rechte hast (hier für Ordner spigot)
sudo chmod 600 spigot -R
Habe das ganze Jetzt auch auf meinem RaspberryPi 2 Installiert.
Das läuft auch schon ziemlich gut. Das Teleportieren zwischen Nether und Oberelt dauert aber noch ziemlich lange, kann ich aber mit Leben.
Bei deinen Config-Dateien konnte ich so gut wie keinen unterschied zur Originaldatei feststellen? hast du wirklich nur so wenig Geändert? Ich hab zumindest noch die view-distance auf 9 stellt (vorerst).
Zusätzlich hab ich auf meinem Pi (Aufgrund des reinen Server Betriebes ohne Monitor/Fernseher) noch sämtliche grafischen Oberflächen und deren zugehörige Programme entfernt. Sowie auch den X-Server. Vielleicht bringt das ja auch noch ein kleines bisschen.
Super Tutorial übrigens!
mfg Michi
Es sind Details geändert. Jedoch habe ich versucht einen guten Kompromiss zwischen Abstrich der Performance und Features zu finden.
Danke für das Tutorial, doch wenn ich ./run.sh eingebe steht da immer:
Error: Unable to access jarfile spigot-1.8.jar.
Könnt Ihr mir helfen?
Entweder hat die Datei spigot-1.8.jar die falschen Rechte oder existiert nicht. Führe doch mal bitte anstatt ./run.sh folgendes Kommando aus und schau ob die spigot-1.8.jar in der Dateienliste aufgeführt wird.
ls -l
Also ich habe das gleiche Problem, aber die spigot-1.8.jar wird nicht aufgeführt!
Es befinden sich nur folgende Dateien im Ordner!
apache-maven-3.2.5 BuildTools.jar BuildTools.log.txt CraftBukkit Spigot
BuildData BuildTools.jar.1 Bukkit run.sh work
Okay, da scheint sich etwas geändert zu haben. Werde das Tutorial sobald wie möglich überarbeiten.
Hallo bei mir wird spigot-1.8 o.ä. auch nicht aufgelistet… Hast du das Tutorial schon überarbeitet oder ist es noch das selbe Problem? Danke im Vorraus.
Also es scheint das gleiche Problem zu sein, da die Anleitung seit dem 8.März.2015 nicht überarbeitet wurde!
Hy, habe das Problem gelöst. Momentan ist die aktuellste Version 1.9.jar. Wurde bei mir unter ls -l angezeigt . . . in shell script geändert . . . geht!
Danke für das Tutorial !
Sehr schöne Anleitung, alles strikt danach gemacht, läuft. Dankeschön! Hab nur in den Serverproperties die Sichtweite auf 8 runter, jetzt läufts ruckelfrei im Standardtakt.
Zwecks Komfort würde ich allerdings gerne noch ein Webinterface ähnlich dem vom MCServer nachrüsten – kannst du dafür bitte auch eine Anleitung schreiben? Hab gesehen dass es von Spigot wohl eins gibt, steige aber durch seine Anleitung nicht wirklich durch
Hey Jan!
Bis jetzt war ich nur stiller Leser deiner Artikel. Vielen Dank für die ausführlichen Anleitungen!
Zum anderen wollte ich fragen, ob du nicht Lust hättest, einen Artikel über die Orange Pis zu schreiben.
Der „Orange Pi PC“
http://www.orangepi.org/orangepipc/
ist noch recht frisch auf dem Markt, besitzt einen 1,6 GHz Prozessor und kostet deutlich weniger als der RasPi
(ca. 18€ aus China http://www.aliexpress.com/item/Orange-Pi-PC-set-1-Orange-Pi-PC-USB-to-DC-4-0MM-1-7MM-power/32451459094.html?spm=2114.01020208.3.2.QqRjFp&ws_ab_test=201556_3,201527_2_71_72_73_74_75,0_0 etwas mehr direkt aus Deutschland http://kolbers.de/page/2).
Ich hoffe, dass meiner diese Woche noch ankommt, finde ihn für den Einsatz als Minecraft-Server sehr interessant! 🙂
Hallo, Könnte mir jemand sagen, wie ich in welcher Datei mir OP Rechte geben kann? Danke schonmal im vorraus!
Hallo,
ich habe gestern mit dieser Anleitung versucht den Server aufzusetzen. Leider kommt wenn ich die run.* starte eine Fehlermeldung dass die u.g. -XX befehle nicht bekannt sind.
Es gibt ja mittlerweile die Version 1.8.8, dann es daran liegen?
-XX:TargetSurvivorRatio=90
-XX:+UseAdaptiveGCBoundary
-XX:-UseGCOverheadLimit
-Xnoclassgc -XX:UseSSE=3
-XX:LargePageSizeInBytes=4m
Hat sich erledigt, nach einem Update von raspbian auf Raspbian Jessie war dass alles kein problem mehr.
Das Update hat Java 1.8. dabei und die G++ ist auch auf 4.9.
Nur die SWAP datei zerhaut es mir wenn ich versuche sie zu ändern (Irgentwelcher probleme beim lesen des Headers).
Dafür ist das Übertackten jetzt in der GUI mit drin.
Bei Step 8 heißt der Ordner für die Welt world/ nicht word/
Hallo Jan Karres,
ich habe mit Hilfe deines Tutorials Mincraft Server 1.8.8. auf dem Pi 2 Rev.B unter Debian Jessie aufgesetzt bekommen. Soweit läuft der Server grundsätzlich. Ich habe aber ein paar Probleme, die ich nicht gelöst bekomme. Ich muss dazu sagen, dass ich zwar von Hardware und Netzwerk Ahnung habe, von Linux nur rudimentär…
1. Wenn ich mir die Bildschirmausgaben nach dem Start von run.sh ansehe, fällt auf, dass der „CD“ Befehl aus der run.sh Datei nicht korrekt ausgeführt wird. Muss da eventuell in Zeile 2 des Scripts an Stelle für „Dirname“ ein reelles Verzeichnis angegeben werden? Habe das Script 1:1 übernommen.
2. die Dateil rc.lokal hat keinen Inhalt (kein Exit Eintrag). Die Eingabe der Daten aus Step 12 zeigt keine Wirkung. Der PI fährt mit Benutzer PI hoch und bleibt dann in der Konsole stehen. Aufrauf des Servers erfolgt dann manuell.
3. Wie wende deine Downloaddatei mit den Konfiguratioen an. Ich erkenne, dass es eine gepackte Datei ist, die man runterladen und entpacken muss. Wie lautet da die Befehlsfolge und an welcher Stelle muss das ausgeführt werden.
Ansonsten beide Daumen hoch für die gute und verständliche Anleitung von Dir….
Gruß Kai aus Dortmund
Du hast aber schon local mit C geschrieben?
Ich habe ein Problem bei Step 8 „Unable to acces jar file“ Hilfe ich versteh Garnichts mehr.
Du musst den genauen Namen des Pakets benutzen. Wenn es z. B. „spigot-1.9.jar“ heißt darfst du nicht „spigot-1.8.jar“ oder „spigot.jar“ öffnen wollen.
Möchte jemand mal die Performance des Mineraft-Servers auf einem Raspberry Pi 3 testen?
Oder könntest du das machen, Jan? Der Artikel über die allgemeine Performace war auch schon sehr interessant! 🙂
Ich würde das gerne machen aber siehe mein Problem:
Hey, ich hätte da mal eine Frage, ich habe einen pi 3 und habe dort mit Noobs Raspian raufgespielt und nun, wenn ich den pi übertakten will kommt eine Fehlermeldung. Gibt es noch eine Möglichkeit den pi zu übertakten wenn man mit Noobs Raspian installiert hat?
LG
Fehlermeldung: This pi cannot be overclocked
DRAGONFROG GAMER says:
17. Mai 2016 um 13:59
Und ich habe noch ein Problem wenn ich den Server nun erstmalig starten will kommt diese Fehlermeldung :
Error: Unable to access jarfile spigot-1.8.jar
Bitte um Hilfe
LG
Habe das zweite Problem gelöst habe nun aber ein neues :
Immer wenn ich mich in Minecraft mich mit dem pi verbinden will kommt eine Fehlermeldung das ich keine Verbindung zum Server habe (habe mit wasistmeineip.de die ip adresse herausgefunden). Ich möchte nicht das das der Server online im internet ist sondern nur lokalen netz verfügbar ist.Muss man die ip vom pi einfach eingeben oder etwas anderes ?
LG
Zu deinem Overclocking-Problem muss ich dich wohl leider für’s erste enttäuschen: Der RPi3 unterstützt wohl aktuell noch nicht offiziell Overclocking. Über die Boot Konfiguration kannst du aber trotzdem ein bisschen an den Takten herumschrauben: http://www.jackenhack.com/raspberry-pi-3-overclocking/
Zu deinem jetzigen Problem: So lange du deinen Minecraft Port nicht über deinen Router freigegeben hast, kommst du auch nicht über das Internet auf deinen Server. Du kannst die aber lokale IP des RPi eingeben und dich darüber verbinden. Die findest du entweder auch über deinen Router oder über ifconfig im RPi heraus.
Das sind aber alles „Probleme“ die mit 10 Minuten Googlen gelöst werden können 😀
Ja, danke für den Tipp werde ich heute ausprobieren und hoffe auf gelingen! 😉😊
Hier noch ein anderer Link zum Thema Overclocking mit dem RPi 3:
https://www.raspberrypi.org/forums/viewtopic.php?f=66&t=138123
Hi folks,
hi folks
I have just installed cuberite onto my rasberry , everything wirked OK.. I can connect to the webadmin UI but I cannot connect to it from my iPad
any idea?
the server is accessible on the network , the port 25565 too
Hey, ich hätte da mal eine Frage, ich habe einen pi 3 und habe dort mit Noobs Raspian raufgespielt und nun, wenn ich den pi übertakten will kommt eine Fehlermeldung. Gibt es noch eine Möglichkeit den pi zu übertakten wenn man mit Noobs Raspian installiert hat?
LG
Fehlermeldung: This pi cannot be overclocked
Und ich habe noch ein Problem wenn ich den Server nun erstmalig starten will kommt diese Fehlermeldung :
Error: Unable to access jarfile spigot-1.8.jar
Bitte um Hilfe
LG
Vielen Dank für den interessanten Artikel. Ich habe noch gar nicht dran gedacht den Rasperry Pi für einen Server herzunehmen.
Echt klasse! Ist die einzige Anleitung, die das ganz gut erklärt! Kann man das auch für andere Linux Systeme (Ubuntu Server) nutzen? Denke ja, da die Befehle ja nur leicht angepasst werden müssten oder?
Hallo zusammen,
habe gestern vergeblich versucht nach der Anleitung den Server aufzusetzen.
Nach der Eingabe von java -jar BuildTool.jar hat er nun über 8 Std. den Prozess am Laufen. Liegt es u.U. an dem fehlenden Parameter -Xmx1G? Oder hat noch jemand schon mal solch einen Fehler gehabt und die Lösung gefunden?
Vielen Dank schon mal im Voraus für Eure Antworten.
hab am Wochenende erst meinen Pi2B mit Raspbian Jessie frisch aufgesetzt und bin streng nach Anleitung vorgegangen: Kein Problem festgestellt, Build war nach ca 30 Minuten durch (allerdings gehen Downloads bei mir dank 50Mbit-Leitung sehr schnell).
Meldet der Prozess einen Fehler? Wenn ja, welchen?
Danke für das Tutorial. War bis jetzt immer noch das einfachste, das ich gefunden habe. ^^
Server funktioniert einwandfrei [1.11.2]!
Leider können noch keine Freunde drauf joinen, habe aber bereits die Ports freigegeben.
Ich habe eigentlich nur deine speziellen ‚.yml’s ausgelassen, 12 (optional) und die DynDNS ausgelassen.
Hättest du vielleicht noch eine Idee?
Hallo Jan,
danke für das tolle Tutorial 🙂
Nachdem ein Owncloud Server mit einer Anleitung von Dir auf einem RPi bei mir seit rd. 3 Jahren problemfrei läuft habe ich mich heute an diesem Minecraft Tutorial versucht, und es auf meinem Bananapi zum Laufen gebracht. Mein Sohn meckert jetzt aber, dass die Minecraft Version auf dem Server zu neu ist – er würde gerne mit einer älteren spielen. Meine Frage wäre nun: Gibt es eine Möglichkeit auf 1.8.9 downzugraden, ohne dass ich die ganze Installation nochmal machen muss?
Gruß + Danke, Dnaiel
Error: Unable to access jarfile spigot-1.9.4.jar
Welches ist denn die neue Version? Bekomme unter Step 8 nämlich auch immer den selben Fehler, egal mit welcher Version.
Hab es hinbekommen… kann gelöscht werden
[…] Raspberry Pi: Minecraft Server Bukkit/Spigot installieren › Jan Karres – 20. Apr. 2013. Raspberry Pi: Minecraft Server Bukkit/Spigot installieren. 20 Apr. 20. SpigotMC ist ein Fork des CraftBukkit Projektes, welches inzwischen den Vanilla Server patcht.. Error: Unable to access jarfile spigot-1.8.jar. Könnt Ihr. […]
[…] Raspberry Pi: Minecraft Server Bukkit/Spigot installieren › Jan Karres – 20. Apr. 2013. Raspberry Pi: Minecraft Server Bukkit/Spigot installieren. 20 Apr. 20. SpigotMC ist ein Fork des CraftBukkit Projektes, welches inzwischen den Vanilla Server patcht.. Error: Unable to access jarfile spigot-1.8.jar. Könnt Ihr. […]