Benutzer-Werkzeuge

Webseiten-Werkzeuge


allgemein:howto:minecraft

Tutorial zu Installation eines Minecraft-Servers auf einem Raspberry Pi 3

Das folgende Tutorial richtet sich an Kinder und ihre Eltern, die mit wenig Vorwissen einen heimischen Minecraft-Server aufsetzen möchten und auf diesem sogar Mods1) betreiben möchten.

Vorbereitung

Damit der Server jeder Zeit zur Verfügung steht, aber nicht eine Hochleistungrechner laufen soll, kann man dies mit einem Raspberry Pi 3 realisieren. Dieser ist verhältnismäßig leistungfähig, benötigt aber nur minimale Resourcen.

Folgende Dinge werden benötigt bzw. damit geht es am schnellsten.

  • Raspberry Pi 3 2)
  • USB-Tastatur
  • HDMI-Kabel
  • SD-Card (mind. 8GB)
  • LAN-Kabel
  • raspbian als Linux-Betriebssystem DOWNLOAD
  • Java als Umgebung für minecraft (ist in raspbian bereits enthalten)
  • minecraft-Server als eigentliche Server-Software (wird später direkt auf den Raspiberry Pi heruntergeladen)
  • forge-Server, wenn Mods gewünscht sind (wird ebenfalls später heruntergeladen)

Den Rapberry Pi 3 gibt es bei einschlägigen Händler auch als Starter-Bundels für ca. 70-80 €. Diese Pakete enthalten bis auf das HDMI-Kabel und die USB-Tastatur alles. Beides wird nur für die Erstinbetriebnahme benötigt, so dass man diese auch gut von einem bestehenden PC „ausborgen“ kann. Später erfolgt der Zugriff über die Ferne. Aber dazu später mehr.

Installation des Raspberry Pi

Zunächst muss der Raspberry selbst in Betrieb genommen werden. Hierzu lädt man sich von den Raspbian-Machern die neueste Version des Linux für Raspberry Pi herunter. Hier lädt man die Version RASPBIAN JESSIE LITE herunter, also ohne Oberfläche. Der Server kann ohnehin nur über die Kommandozeile gestartet werden, da ansonsten nicht gegnügend Arbeitsspeicher zur Verfügung steht. Aber dazu später mehr.

Hinweis: Alternativ kann auch Noobs verwendet werden, allerdings wollen wir uns auf das Minecraft-Server-Projekt konzentrieren.

Raspbian OS auf SD-Karte bringen

Nun muss das Image auf eine micro-SD-Karte gebracht werden. Dies kann mit der Software Win32diskimager durchgeführt werden. ACHTUNG: Bei der Wahl des Laufwerks sollte auf keinen Fall ein weiterer USB-Stick im PC stecken, damit dieser nicht aus Versehen gelöscht wird.

Das folgende Bild zeigt die drei Schritte zum Beschreiben der SD-Card mit Raspbian.

 Win32Diskimager

Raspberry Pi Grundeinrichtung

Nun kann das frisch installierte Betriebssystem gestartet werden. Wir belassen zu nächst die Grundeinstellungen. Sobald die Kommandozeile (shell genannt) erscheint, können wir uns mit folgenden Daten anmelden:

  • Benutzername: pi
  • Passwort: raspberry

Damit wir den Raspberry nicht dauerhaft mit einer eigenen Tastatur und einem Monitor betreiben müssen. Richten wir uns nun den Fernzugriff mittels ssh.3) In diesem Zusammenhang richten wir auch noch weitere Details ein.

Vorher müssen wir uns allerdings noch die IP-Adresse des Raspberry notieren, damit wir ihn später per ssh über das Netzwerk erreichen können.

ip -4 addr show eth0

Wir erhalten folgende Ausgabe:

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    inet 192.168.0.16/24 brd 192.168.0.255 scope global eth0
       valid_lft forever preferred_lft forever

Uns interessiert hier nur der Wert hinter inet. Dies ist die sogenannte IPv4-Adresse. Im Beispiel lautet diese 192.168.0.16. Der Wert /24 dahinter ist die Subnetz-Maske, die für uns hier nicht von Interese ist.

Die IP-Adresse notieren wir uns für später.

Nun geht es zur eigentlichen Grundkonfiguration.

Hierzu starten wir das Raspberry Pi Konfigurationssystem raspi-config mit folgendem Befehl:

sudo raspi-config

Hinweis: Das vorangestellt sudo ist wichtig, da wir nur als Administrator grundlegende Einstellungen vornehmen drüfen. Per sudo4) wird dies gewährleistet. Ggf. fragt das Betriebssystem nun nach einem Passwort. Hier wird das Passwort des sudo-berechtigten Benutzers (pi) erwartet. Also im Ausgangszustand pi.

Es erscheint folgender Dialog:

raspi-config Hauptmenü

Hier werden nun folgende Konfigurationen vorgenommen (Kurze Liste):

  • 1 Expand Filesystem → Dateisystem auf die SD-Card erweitern (muss, da sonst zu wenig Speicher verfügbar)
  • 2 Change User Password → Administrator Passwort neu vergeben (optional wegen Sicherheit; gut merken!)
  • 3 Boot Options → B2 Console Autologin → Autologin aktivieren (optional)
  • 5 Internationalisation Options → Zeitzone und Sprache einstellen (optional)
  • 9 Advanced Options → A3 Memory Split → 16 → Mehr Arbeitsspeicher zur Verfügung stellen (muss, da sonst zu wenig RAM)
  • 9 Advanced Options → A4 SSH → ssh-Server aktivieren
  • Neustart

1 Expand Filesystem (MUSS)

Damit der Raspberry auf die SD-Card zugreifen kann, muss dies in dem Untermenü aktiviert werden. Dieser Schritt muss erfolgen, da ansonsten nicht genug Platz für den Minecraft-Server vorhanden ist. Falls die SD-Card bereits eingebunden ist, dann teilt die Software das mit.

2 Change User Passwort (optional)

Dieser Punkt kann entfallen, wenn das System ausschließlich im lokalen Netz benutzt wird. Sollen später noch Fremde über das Internet zugreifen, dann sollte das Passwort auf jeden Fall geändert werden.

3 Boot Options (optional)

Hier kann man unter Punkt B2 Console Autologin einstellen, dass der Raspberry direkt den Benutzer pi anmeldet. Dieser Punkt ist reiner Komfort, der allerdings auch ein Sicherheitsrisiko darstellt, da so jeder als Administrator arbeiten kann, der Zugriff auf die Tastatur des Raspberry hat.

5 Internationalisation Options (optional)

Hier können z.B. deutsche Tastatur und Zeitzone eingerichtet werden. Dies ist nicht zwingend erfordlich hilft aber bei den Eingaben, da der Raspberry ansonsten von einer englischen Tastatur ausgeht.

9 Advanced Options (MUSS)

In den erweiterten Einstellung 9 Advanced Options befindet sich der Unterpunkt A4 SSH. Dort lässt sich der sogenannte ssh-server aktivieren. Danach kann man sich z.B. über einen Windows-Rechner direkt mit dem Raspberry verbinden.

Weiterhin sollte im Punkt A3 Memory Split der Grafikkartenspeicher (GPU-RAM) auf 16MB begrenzt werden, damit dem Hauptprozessor 5) mehr Arbeitsspeicher (RAM) zur Verfügung steht. Hintergrund: Der Raspberry arbeitet mit sogenanntem Shared Memory für GPU 6) und CPU. Da der Minecraft-Server sehr viel RAM benöitgt, kann über diese Einstellung noch etwas mehr bereitgestellt werden.

rapsi-config Erweiterte Einstellungen

Reboot

Nachdem alle Einstellungen vorgenommen wurden, beendet man raspi-config und führt einen Neustart (reboot) aus.

Fernzugriff auf Raspberry

Durch den oben aktivierten ssh-Server sind wir nun in der Lage von einem anderen Rechner aus auf den Raspberry zu zugreifen. Hierzu werden für die unterschiedlichen Betriebssysteme eigene Tools benötigt:

  • ssh-Kommandozeilenbefehl (Linux, MacOS)
  • putty-Programm (Windows) DOWNLOAD

Für Windows würde putty.exe ausreichen. Da wir aber auch Dateien auf den Raspberry mittels pscp.exe kopieren möchten sollte das "komplett Paket" heruntergeladen werden.

Der Dialog von putty sieht wie folgt aus.

 putty-Dialog

Als erstes geben wir den Nutzer und die IP-Adresse ein. Hier: pi@192.168.0.16 Die IP-Adresse haben wir uns weiter oben ja bereits notiert. Nun können wir diesen Werten einen klingenden Namen geben, so dass wir die Konfiguration später wieder finden. z.B. raspi user pi Anschließend speichern wird die Konfiguration mit Save.

Es öffnet sich nach einem Klick auf Open ein schwarzes Fenster, in dem die shell des Raspberry angezeigt wird. Jeder Befehl, der dort eingegeben wird, wird auf dem Raspberry ausgeführt. Also Vorsicht mit sudo-Befehlen!

Wir sollten uns zur Sicherheit einen eigenen Benutzer für unseren minecraft-Server einrichten. Dies geschieht mit folgendem Befehl:

sudo adduser mc

Man wird nun nach einem Passwort für den neuen Benutzer gefragt. Dieses sollte möglichst ein anderes sein, als das des Hauptnutzers pi. Das Passwort muss nochmals wiederholt werden. Die anschließenden Fragen können einfach mit Enter übersprungen werden. Am Ende wird gefragt, ob alles korrekt ist. Hinweis: In der englischen Version muss mit y geantwortet werden. Ist die Tastatur nicht umgestellt worden, so muss man hier die z-Taste drücken.

Nun melden wir uns mit exit ab und starten eine neue ssh-Verbindung mit putty. Damit wir nicht ständig alle Werte in putty neu eingeben müssen, speichern wird mit Save die IP-Adresse wie folgt:

mc@192.168.0.16

Die neue Konfiguration nutzen wir, um uns erneut, nun als Benutzer mc, mit dem Raspberry zu verbinden. Wir werden aufgefordert unser Passwort einzugeben. Hier gibt man das Passwort, dass wir bei adduser mc verwendet haben ein.

Wenn alles richtig war können wir nun mittels pwd7) überprüfen, ob wir im richtigen Pfad des Dateiverzeichnissen ist.

Befehl: pwd

Ausgabe: /home/mc

Der Server besteht später aus vielen Dateien und Unterordnern. Damit wir unseren Server nicht im ganzen sogenannten Home-Ordner verteilen, erstellen wir zunächst einen eigenen Ordner für den Forge-Server. Den Namen wählen wir entsprechend der Version die wir verwenden wollen. Hier: 1.7.10

mkdir forge-1.7.10

Mit

cd forge-1.7.10

wechseln wir in diesen neuen Ordner.

TIPP: Die Tabulator-Taste ist unser bester Freund unter Linux. Sie ergänzt Dateinamen und Ordnernamen automatisch. Im Zweifelsfall einfach zweimal kurz hintereinander tippen und man erhält mögliche Eingaben als Vorschau.

Nun sind wir bereit den eigentlichen Server zu installieren.

Herunterladen des Forge-Servers

Weg 1: Kopieren des Forge-Servers von einem Windows-PC

Hierzu benötigen wir pscp.exe (s. Fernzugriff auf Raspberry) und den forge-installer (Download-Seite) ACHTUNG: Auch wenn dieser Weg etwas umständlich erscheint, so sollte er immer zu erst ausprobiert werden. Die Entwickler sind so in der Lage durch Werbung einen Teil ihrer Kosten und Aufwände entschädigt zu bekommen!

Folgendes wird für das Kopierskript vorausgesetzt:

Variable Bedeutung Beispiel
mod_file Pfad zur heruntergeladener forge-installer-Datei „D:\downloads\forge-1.7.10-10.13.4.1558-1.7.10-installer.jar
mc_raspi Pfad zu den Mods auf dem Raspberry-Server “/home/mc/forge-1.7.10/„
raspi_ip IP-Adresse des Raspberry 192.168.0.16
mc_user

Die Variablen sind ggf. anzupassen, wenn man andere Pfade verwendet. Das folgende Skript kann per Klick auf copyforge2raspi.bat heruntergeladen werden.

copyforge2raspi.bat
@echo off
set mod_file="D:\downloads\forge-1.7.10-10.13.4.1558-1.7.10-installer.jar"
 
set mc_raspi="/home/mc/"
set raspi_ip="192.168.0.16"
set mc_user="mc"
 
d:\apps\putty\pscp.exe %mod_file% %mc_user%@%raspi_ip%:%mc_raspi%

Um es auszuführen, wird unter Windows ein Kommandozeile (Eingabeaufforderung) benötigt. Diese lässt sich durch Win+R und anschließende Eingabe von cmd bei Öffnen: starten. Nun muss das Skript starten. Dies geschieht über D:\Downloads\copyforge2raspi.bat, wobei D:\Downloads der Ordner ist, in dem copyforge2raspi.bat heruntergeladen wurde. Ggf. ist dieser erste also anzupassen.

Weg 2: Herunterladen des Forge-Servers direkt auf den Raspberry

Hierzu müssen wir zunächst eine ssh-Verbindung mit dem Raspberry aufbauen (s. Fernzugriff auf Raspberry )

Mit dem folgenden Befehl wird der Forge-Server Installer auf den Raspberry in den aktuellen Ordner heruntergeladen:

wget http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.7.10-10.13.4.1558-1.7.10/forge-1.7.10-10.13.4.1558-1.7.10-installer.jar .

ACHTUNG: Dieser Weg sollte aus Fairness den Entwicklner gegenüber NICHT benutzt werden, da diese auf diesem Weg keine Einnahmen durch Werbung generieren können. In der Entwicklung genauso wie in dieser Seite steckt viel Zeit und Arbeit, die hononiert werden sollte. Also bitte möglichst Weg 1 nutzen.

Installation des Forge-Servers auf dem Raspberry

Anschließend muss der heruntergeladene forge-installer noch ausgeführt werden. Auf einer grafischen Oberfläche (z.B. LXDesktop) kann man ihn einfach starten. Auf der Kommandozeile, also per ssh, geht dies leider nicht. Der folgende Befehl führt den Installer daher OHNE grafischen Dialog aus und lädt die benötigten Dateien aus dem Internet direkt in den Ordner nach, in dem der Installer liegt.

cd forge-1.7.10
java -jar forge-1.7.10-10.13.4.1558-1.7.10-installer.jar --installServer

Nachdem alles heruntergeladen wurde, kann der Installer gefahrlos gelöscht werden.

rm forge-1.7.10-10.13.4.1558-1.7.10-installer.jar

Erster Start des Forge-Servers

Zusammenfassung:

  • java -Xms512M -Xmx1008M -jar /home/mc/forge-1.7.10/forge-1.7.10-10.13.4.1558-1.7.10-universal.jar → Aufruf des Minecraft-Servers

Ausführlich: Der Start erfolgt mit folgendem Befehl:

java -Xms512M -Xmx1008M -jar /home/mc/forge-1.7.10/forge-1.7.10-10.13.4.1558-1.7.10-universal.jar nogui

TIPP: Da die Befehlszeile sehr lang ist, kann man dies auch in ein kleines shell-Skript packen und diesem einen kurzen Namen geben.

Eine solche Datei kann man mit dem folgenden Befehl anlegen:

nano start_minecraft.sh

In der Datei muss folgendes stehen, damit es funktioniert.

start_minecraft.sh
#!/bin/bash
cd ~/forge-1.7.10
java -jar  -Xms512M -Xmx1008M forge-1.7.10-10.13.4.1558-1.7.10-universal.jar nogui  && break

Damit die Datei als Starter benutzt werden kann, muss sie ausführbar gemacht werden. Dieser Schritt muss nur einmal gemacht werden.

chmod +x start_minecraft.sh

Anschließend kann der Server immer wieder mit dem folgenden Befehl gestartet werden.

./start_minecraft.sh

Der erste Start schlägt auf jeden Fall fehl, da die EULA noch nicht akzeptiert wurde. Um die EULA zu akzeptieren, öffnet man die Datei eula.txt und ändert false in true um.

nano eula.txt

Mit STRG+O kann man die Datei speichern und mit STRG+X kann der Editor geschlossen werden.

Nun kann der Server erneut gestartet werden. Der folgende Start dauert relativ lange, da der Server nun alle Elemente erstmalig einrichten muss. Weitere Starts gehen etwas schneller von statten.

ACHTUNG: Der Server wird bei dieser Methode automatisch beendet, so bald die ssh-Verbindung geschlossen wird. Im nächsten Abschnitt wird daher erläutert, wie man den Minecraft-Server aus ohne ssh-Verbindung betreiben kann.

HINWEIS: Es kann bei neueren Installation (z.B. auf Raspi 4) zu einem Fehler kommen. Die Java-Version muss mit der vom Forge-Server geforderten übereinstimmen.

Man kann mit dem folgenden Befehl die Java Version ermitteln. Je nach Version mit einem - oder zwei .

java --version ODER java -version

AUSGABE:
openjdk 11.0.6 2020-01-14
OpenJDK Runtime Environment (build 11.0.6+10-post-Raspbian-1deb10u1)
OpenJDK Server VM (build 11.0.6+10-post-Raspbian-1deb10u1, mixed mode)

Ggf. muss dann die richtige Version nachinstalliert werden. Hier z.B. die JRE-8

sudo apt-get install openjdk-8-jre

Nun muss noch die neuinstallierte Version als Default Version ausgewählt werden.

sudo update-alternatives --config java

AUSGABE:
Es gibt 2 Auswahlmöglichkeiten für die Alternative java (welche /usr/bin/java bereitstellen).

  Auswahl      Pfad                                            Priorität Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-11-openjdk-armhf/bin/java      1111      automatischer Modus
* 1            /usr/lib/jvm/java-11-openjdk-armhf/bin/java      1111      manueller Modus
  2            /usr/lib/jvm/java-8-openjdk-armhf/jre/bin/java   1081      manueller Modus

Drücken Sie die Eingabetaste, um die aktuelle Wahl[*] beizubehalten,
oder geben Sie die Auswahlnummer ein: 

Hier muss dann 2 ausgewählt werden, damit die neuinstallierte JRE-8 aktiv wird.

Minecraft-Server OHNE aktive ssh-Verbindung betreiben

Nachteil der oben beschriebenen Lösung ist es, dass der Server geschlossen wird, sobald die ssh-Verbindung zum Raspberry getrennt wird. Möchte man den Server dauerhaft starten und am besten automatisch neustarten, falls er mal abgestürzt ist, dann kann man dazu folgendes Script erstellen.

start_minecraft.sh
#!/bin/bash
if  ! pidof SCREEN  &&  ! pidof java  then
then
    echo Starten neuen Minecraft-Server!
    cd /home/mc/forge-1.7.10
    screen -S minecraft -d -m java -jar  -Xms512M -Xmx1008M forge-1.7.10-10.13.4.1558-1.7.10-universal.jar nogui
    echo    screen -S minecraft -d -m java -jar  -Xms512M -Xmx1008M forge-1.7.10-10.13.4.1558-1.7.10-universal.jar nogui
else
   echo Minecraft-Seauft schon
   echo screen -r minecraft
fi

(Das Skript stammt im Original von http://lemire.me/blog/2016/04/02/setting-up-a-robust-minecraft-server-on-a-raspberry-pi/ und wurde leicht modifiziert)

Um das Skript auf den Raspberry zu bringen kann man Copy&Paste verwenden. Einfach den Inhalt des obigen grauen Kastens markieren und mit STRG+C in die Zwischenablage kopieren. Nun kann man im ssh-Fenster den Editor nano start_minecraft.sh öffnen und eine neue Datei start_minecraft.sh erzeugen. Im erscheinenden Fenster kann man nun per Klick auf die rechte-Maustaste den Inhalt der Zwischenablage hineinkopieren.

Nun kann man die Datei mit STRG+O8) speichern und mit STRG+X den Editor wieder schließen. Als letzten Schritt muss nun noch folgende Befehle ausgeführt werden, damit das Skript ausführbar wird (chmod +x start_minecraft.sh) und gestartet wird (./start_minecraft &).

chmod +x start_minecraft.sh
./start_minecraft.sh &

Das Skript ausführlich erklärt:

Innerhalb der if-Anweisung wird abgefragt, ob bereits ein Minecraft-Server läuft. Ist dies nicht der Fall (s. !) dann wird in den Installationsordner (hier: /home/mc/forge-1.7.10) gewechselt und in der screen-Zeile ein neuer Server gestartet, der unabhängig von der ssh-Verbindung läuft.

Ggf. muss der screen-Befehl noch nachinstalliert werden. Dies geschieht mit folgendem Befehl: (Hinweis: Nur der Benutzer pi kann den sudo-Befehl ausführen.)

su pi
sudo apt-get install -y screen

ACHTUNG: Es sollte immer nur EIN Server laufen, d.h. man sollte sich vor dem Start einen neuen Servers vergewissern, dass nicht bereits ein anderer Server läuft. Es kann sonst schnell zu Resourcenenpässen bei RAM und CPU kommen.

Status des gestarteten Minecraft-Servers überprüfen

Zusammenfassung:

  • screen -ls minecraft → Status überprüfen
  • screen -r minecraft → Server in den Vordergrund holen (attach)
  • STRG+a d → Server in den Hintergrund bringen (detach)
  • ps aux | grep forge → Prozess-Status anzeigen lassen (inkl. CPU/RAM-Last)
  • htop → Taskmanager für Kommandozeile

Ausführlich: Möchte man nun überprüfen, ob der Server tatsächlich läuft, kann man dies über folgenden Befehl tun:

screen -ls minecraft

Ausgabe:

There is a screen on:
        916.minecraft  (12.11.2016 22:36:56)   (Detached)
1 Socket in /var/run/screen/S-mc.

Die Zeile 916.minecraft … (Detached) besagt, dass der Prozess mit dem Namen minecraft unter der Prozess-Nummer (id) 916 läuft. Detached bezieht sich auf den Status bezüglich screen. Möchte man den Minecraft-Server wieder über die Kommandozeile steuern, so kann man den Server wieder in den Vordergrund holen.

screen -r minecraft

Nun sieht man die letzten Ausgaben des Minecraft-Servers und man kann dem Minecraft-Server beliebige Befehle geben. (s. unten Wichtige Befehle ????)

In diesem Zustand kann der Minecraft-Server auch wieder gestopt werden. Dies geschieht per stop während man mit dem Minecraft-Server wieder verbunden ist.

Benötigt man den Minecraft-Server nicht mehr, dann kann man diesen über den folgende Befehl wieder in den Hintergrund schicken. Der Server läuft dann im Hintergrund weiter, er wird lediglich detached also abgekoppelt von der aktuellen Kommandozeile.

STRG+a d

Eine weitere Möglichkeit den Status des Minecraft-Servers abzufragen, ist die Prozessliste. Diese lässt sich über den folgenden Befehl abrufen:

ps aux | grep forge

Ausgabe:

mc  1019  0.0  0.2   5336  2244 ?        Ss   23:16   0:00 SCREEN -S minecraft -d -m java -jar -Xms512M -Xmx1008M forge-1.7.10-10.13.4.1558-1.7.10-universal.jar nogui
mc  1020 23.8 36.7 1184560 362444 pts/0  Ssl+ 23:16   1:06 java -jar -Xms512M -Xmx1008M forge-1.7.10-10.13.4.1558-1.7.10-universal.jar nogui

Die erste Zeile ist der screen-Prozess mit der Id 1019, der lediglich zur Verwaltung benötigt wird. Die zweite Zeile steht für den eigentlichen Server mit der Id 1020.

Die beiden Zahlen 23.8 und 36.7 sind von Interesse, denn sie stehen für die CPU-Last bzw die RAM-Resourcen in %, die der Server gerade benötigt. Während der Startphase kann die CPU-Last durchaus höher sein.

Eine weiter Möglichkeit die Prozesse zu beobachten ist der htop-Befehl. Dies ist eine Art Taskmanager für die Kommandozeile. Er muss allerdings erst noch installiert über den pi-User werden.

su pi
sudo apt-get install htop
exit
htop

Minecraft-Server automatisch bei Systemstart starten

Zusammenfassung:

  • /bin/su mc -c “/home/mc/start_minecraft.sh„ → in /etc/rc.local vor exit 0 eintragen

Ausführlich: Damit der Server bei einem Neustart des Raspberry nicht von Hand neugestartet werden muss, kann folgender Befehl verwendet werden. Dieser muss in der Datei /etc/rc.local eingetragen werden:

WICHTIG: Die Zeile muss VOR der exit 0 eingetragen werden.

/bin/su mc -c "/home/mc/start_minecraft.sh"

Anschließend führt man einen Neustart aus. (s. nächster Abschnitt)

Neustart des Raspberry

Zusammenfassung:

  • systemctl reboot -i → Benutzer auswählen und Neustarten

Einen Neustart des Raspberry kann man über den folgenden Befehl ausführen:

 systemctl reboot -i

Anschließend wird man nach einem sudo-Benutzer gefragt. Hier sollte man pi wählen und das dazugehörende Passwort eingeben. Danach führt der Raspberry einen Neustart durch.

Wichtige Parameter für die Konfiguration des Servers

Inhalt der server.properties, über die der Server konfiguriert wird.

motd=WELCOME TO MY SERVER
view-distance: 5
Variable Bedeutung Beispiel
motd Beschreibung des Servers, die im Client erscheint WELCOME TO MY SERVER

Befehle für die Minecraft-Server Konsole

????? Hier sollen noch ein paar Konsolen Kommandos, mit denen man den Server steuern kann hinein.

Mods auf dem Minecraft-Server installieren

Richtig spanned wird ein Minecraft-Server für viele erst durch sogenannte Mods (Modifications, also Erweiterungen). Bei den folgenden Windows-Befehlen wird vorausgesetzt, dass die Mod im Ordner D:\downloads liegt und pscp.exe im Ordner D:\Apps\putty\pscp.exe. Die Mod, die installiert werden soll, wird in Anführungszeichen hinter mod_file eingetragen. Im Anschluss wird man nach dem Passwort der mc-Benutzers auf dem Raspberry gefragt und es werden die Mod auf dem lokalen Rechner ebenfalls in den Minecraft-Installationsordner kopiert.

WICHTIG: Es dürfen keine Leerzeichen vor bzw. hinter den =-Zeichen sein, sonst wird die Variable nicht erkannt. Die folgende Batch-Datei kann als Ausgangspunkt auf einem Windows-PC benutzt werden. Die Variablen sind auf das eigene System logischerweise anzupassen.

copymod2raspi.bat
REM Diese Datei wird auf dem Windows-PC ausgeführt!
@echo off
set mod_file="D:\downloads\Thaumcraft-1.7.10-4.2.3.5.jar"
 
set mc_local="%APPDATA%\.minecraft\mods"
set mc_raspi="/home/mc/forge-1.7.10/mods/"
 
d:\apps\putty\pscp.exe %mod_file% minecraft@192.168.0.16:%mc_raspi%
copy %mod_file% %mc_local%
Variable Bedeutung Beispiel
mod_file Pfad zur heruntergeladenen Mod-Datei „D:\downloads\Thaumcraft-1.7.10-4.2.3.5.jar“ “%APPDATA%\.minecraft\mods„
mc_local Pfad zur Windows-Minecraft-Installation “/home/mc/forge-1.7.10/mods/„
mc_raspi Pfad zu den Mods auf dem Raspberry-Server
minecraft Benutzer auf dem Raspberry-Server, unter dem der Minecraft-Server läuft s.o.
192.168.0.16 IP-Adresse des Raspberry-Servers; muss angepasst werden

Einstellungen des Servers (Feinschliff)

Im Installationsordner (/home/mc/forge-1.7.10) liegt die Datei server.properties im folgenden werden einige interssante Einstellungen erläutert. Eine vollständige Liste findet man HIER.

Name Beschreibung Standardwert
enable-query Ist der Wert auf true gesetzt, so kann man über ein PHP-Script von außen Informationen über den Server abfragen. z.B. Welche Spieler online sind. false
enable-rcon Remote-Connection zu lassen, um von außen den Server zu Steuern. Nicht zu verwechseln mit op9) false
#Minecraft server properties
#Tue Nov 15 17:06:17 CET 2016
generator-settings= # Flachland Welten beeinflussen
op-permission-level=1 # kann nur Spawn aendern
allow-nether=true # Nethter erlauben
level-name=world # Speicherort
enable-query=false # PHP-Abfrage
allow-flight=true # Fliegen erlauben, damit nicht gekickt wird
announce-player-achievements=true # Chat-Nachricht bei Erfolg
server-port=25565 # UDP-TCP Port Default Port 25565
level-type=DEFAULT # Welttyp
enable-rcon=false # Fernzugriff auf den Server nicht zu lasssen
force-gamemode=false # Beitritt wie bei disconnect
level-seed= # Startwert für die Welt
server-ip= # Bestimmte IP-Adresse
max-build-height=256 # maximale Hoehe der Welt
spawn-npcs=true # Dorfbewohner spawn
white-list=false # Nur bekannte Spieler koennen joinen
spawn-animals=true # Tiere spawn
snooper-enabled=false # anonyme Daten nicht senden
hardcore=false # Kein Hardcore
online-mode=true # Authentifikation gegen mc-server
resource-pack= # weitere Resource-Pakte mit z.b. Sounds, Texten
pvp=true # Jeder gegen Jeden
difficulty=1 #
enable-command-block=false # ermoeglicht cheats, deaktivieren
player-idle-timeout=30 # Minuten, nach denen ein inaktiver Spieler gekickt wird. default 0 aus
gamemode=0 # 0=Ueberleben 1=Kreativ 2=Abenteuer 3=Zuschauer
max-players=10 # maximale Spieleranzahl default 20
spawn-monsters=true # Monster spawn
view-distance=5 # Sichtweite in chunks bei Performance Problemen reduzieren  default 10
generate-structures=true # Spawn von Gebaeuden Doerfern
motd=** Mein MC Server**** # Eintrag in Client-Serverliste

Offen

D:/apps/putty/pscp MOD.zip mc@192.168.0.16:/home/mc/forge-1.7.10/mods/

Passwort für mc eingeben.

Befehlsaufbau:

Bestandteil Bedeutung
D:/apps/putty/pscp Pfad zum pscp-Befehl
MOD.zip Mod-Datei, die installiert werden soll
mc Benutzer auf (@) dem Raspberry
192.168.0.16 IP-Adresse des Raspberry (s. ip -4 addr show eth0)
:/home/mc/forge-1.7.10/mods/ Zielordner für die Mods auf dem Raspberry
  • erste cli Befehle auf Server bzw Client

Weitere Befehle mit Powershell

 powershell Set-ExecutionPolicy Unrestricted

Dazwischen kann ein Powershell-Script ausgeführt werden.

 powershell Set-ExecutionPolicy Restricted
1)
Mods: Modifikationen, die fast endlose Möglichkeiten bieten
2)
am besten die dritte Version, da dieser schneller ist und mehr Arbeitspeicher besitzt
3)
ssh: secure sh*ell; stellt sicheren Zugriff auf entfernte Systeme her
4)
sudo: SuperUser DO; führe als Superuser/Administrator den folgenden Befehl aus
5)
CPU: Central Processing Unit
6)
graphics processing unit
7)
gibt den aktuellen Pfad aus
8)
wird im nano-Editor als ^O Speichern angezeigt
9)
Operator

Anregungen bitte hierher!

test79.235.33.32, 05.11.2019 16:19

Hallo, ich habe den raspberry pi 4 und bin mit deiner anleitung echt gut gefahren, einige dinge wie ram us habe ich geändert. nun zu meinem problem.

ab dem schritt mit mods installieren komme ich absolut nicht weiter.

mein datei pfad zu den downloads ist: C:\Users\Linde\Downloads

und zu putty ist: C:\Program Files\PuTTYpscp.exe

mit @echo off habe ich schon ein problem: er kann den befehl nicht finden. mit echo off scheint es zu funktionieren dann erscheint diese im anschluss:

mc@raspberrypi:~ $ @echo off -bash: @echo: command not found

mc@raspberrypi:~ $ echo off

off

mc@raspberrypi:~ $ set mod_file=„C:\Users\Linde\Downloads\SPOILER_BerryBushes-1.0.1“

mc@raspberrypi:~ $ set mc_local=„%APPDATA%\.minecraft\mods“

mc@raspberrypi:~ $ set mc_raspi=„/home/mc/forge-1.14.4/mods/“

mc@raspberrypi:~ $ C:\Program Files\PuTTY\pscp.exe %mod_file% minecraft@192.168.x.xx:%mc_raspi%

-bash: C:Program: command not found

kannst du mir helfen?

Liebe Grüße und bis dahin ein sehr schönes tutorial!!

richard, 16.11.2019 15:17, 16.11.2019 15:24

Freut mich, wenn die Anleitung nutzbringend ist. Du hast glaube ich einen Denkfehler. Ich nehme an, du meinst diese Datei: „copymod2raspi.bat“

Es handelt sich um eine Windows-Batch-Datei, sprich unter Linux funktioniert die nicht. Die Idee ist es mit dieser Datei die Mods vom Windows-PC auf den raspi zu kopieren.

Ich habe das jetzt im HowTo-Text ergänzt.

Alternativ kannst du auch per wget die mods direkt auf den rapsi laden. Das machst du dann indem du dich per putty.exe auf den raspi verbindest und dann per wget die mod aus dem Internet lädst.

Das HowTo wird zum Ende hin etwas knapp. Leider hat mein Sohn und ich ein wenig die „Lust“ verloren.

Ich hoffe trotzdem, dass es weiterhilft.

allgemein/howto/minecraft.txt · Zuletzt geändert: 04.03.2023 17:19 von richard

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki