Difference between revisions of "Minetest in der Schule/RaspberryPi-Server anlegen und einrichten"

From Minetest Wiki
Jump to navigation Jump to search
(Use better German language. HANDS ARE TYPING WORDS)
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
== Server auf dem RaspberryPi installieren und starten ==
 
== Server auf dem RaspberryPi installieren und starten ==
 +
Prinzipiell ist das Herunterladen und Compilieren bereits in der README auf GitHub erklärt. https://github.com/minetest/minetest/blob/master/README.md
 +
Nachfolgend ist aber nochmals aufgeführt, wie man dies unter Raspbian (Jessie) durchführen kann.
 +
 +
=== Abhängigkeiten ===
 +
Zunächst sind die Abhängigkeiten zum Compilieren wie folgt zu installieren:
 +
 +
sudo apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
  
 
=== Herunterladen ===
 
=== Herunterladen ===
  
 +
Den Minetest Quellcode kann man auf verschiedene Arten herunterladen. Nachfolgend wird die Methode über git erklärt.
 +
In diesem Fall wird mittels der git Option "<code>--branch stable-0.4</code>" der Quellcode von der Version "0.4.x stable" ohne Versionsgeschichte ("<code>--depth 1</code>") heruntergeladen.
 +
 +
Den eigentlichen Minetest Quellcode abrufen:
 +
 +
git clone --branch stable-0.4 --depth 1 https://github.com/minetest/minetest.git
 +
 +
In das erstellte Verzeichnis wechseln:
 +
 +
cd minetest/
 +
 +
Dasselbe für das standardmässig mitgelieferte "Minetest Game":
 +
 +
git clone --branch stable-0.4 --depth 1 https://github.com/minetest/minetest_game.git games/minetest_game
  
 
=== Kompilieren ===
 
=== Kompilieren ===
  
=== Starten ===
+
Anschließend festlegen was gebaut werden soll. In diesem Fall mit dem Minetest Server als Release-Version:
 
 
== Ein erster Besuch ==
 
Wenn der Server ohne Fehler gestartet ist kann man einen ersten Besuch abstatten. Auch wenn man nun eine Welt erstellt hat, so geht es erst einmal nur um das Testen und die Einstellungen. Die endgültige Welt kann man von einer Einzelspieler-Welt kopieren, in der man einige Strukturen vorbereitet.
 
  
Um die Adresse des RasPis im lokalen Netz zu finden kann man in einer Konsole folgendes eingeben:
+
cmake . -DRUN_IN_PLACE=TRUE -DBUILD_SERVER=TRUE -DCMAKE_BUILD_TYPE="Release"
* <code>...</code>
 
  
Und dann kann man sich zum Testen, vielleicht von seinem eigenen Rechner, auf dem RasPi-Server anmelden.
+
Das ganze dann schließlich kompilieren, was einige Zeit in Anspruch nimmt. Die Option "-j 4" legt fest, dass auf vier Prozessorkernen gleichzeitig kompiliert wird, was für den Raspberry 2 oder 3 Sinn ergibt:
  
=== Rechte vergeben ===
+
make -j 4
Im Gegensatz zur Singleplayer-Welt, auf der man sich selber alle Rechte geben kann, muss man bei einem Server das über einen Eintrag in der der Datei ''"auth.txt"'' vornehmen, die im Verzeichnis der erstellten Welt zu finden sein sollte, wenn sich mindestens ein Spieler angemeldet hat.
 
  
Das Format für jede Zeile - also für jeden Spieler - ist das folgende:
+
Sollte alles fehlerfrei durchgelaufen sein, befindet sich der fertig compilierte Minetest Server und Client im Unterverzeichnis bin.
* <code>name:hashed_password:privs</code>
 
  
Das könnte zum Beispiel so aussehen:
+
=== Starten ===
* <code>celeron55:CcCUjNUDVJxmXmTHj+7WKHvA9Ds:interact,shout </code>
 
::Das bedeutet, das der Spieler, der sich mit dem Namen celeron55 angemeldet hat, die Privilegien "interact" und "shout" hat. Er kann also mit anderen Spielern chatten und hat die Erlaubnis zum Bauen, Abbauen und Benutzen von Blöcken.
 
  
Wichtig für einen Admin, der sich im Spiel um die anderen Spieler und deren Rechte kümmern soll sind dann vermutlich die Moderatoren-Rechte, die im Wiki auf der Seite mit der [[Privileges/de#Eingebaute_Privilegien|Übersicht der Privilegien]] zu finden ist. Zum Anfang sollte reichen ...
+
Nach Betreten des Verzeichnisses "<code>bin/</code>" kann der Server wie folgt gestartet werden:
* <code>interact,shout,privs</code>
 
... und dann kann man sich selber über den Textbefehl im Spiel ...
 
* <code>/grant <Spielername> all</code>
 
... alle fehlenden Rechte geben.
 
  
{{redbox|'''HINWEIS:''' Obwohl es in der Dokumentation nicht erwähnt wird, steht in der Datei ''"auth.txt"'' ganz am Ende der Zeile zu den Spielern hinter den Rechten noch eine Doppelpunkt mit einer Zahl. Die weiteren Privilegien müssen '''vor diesem Doppelpunkt''' ergänzt werden.}}
+
./minetestserver
  
 +
== Ein erster Besuch ==
 +
Wenn der Server ohne Fehler gestartet ist, kann man einen ersten Besuch abstatten. Auch wenn man nun eine Welt erstellt hat, so geht es erst einmal nur um das Testen und die Einstellungen. Bei Bedarf kann auch eine Einzelspieler-Welt mit einigen vorbereiteten Strukturen kopiert und auf dem Server verwendet werden.
  
Bei weiteren Spielern hat nun der Moderator die Möglichkeit ihnen per Textbefehl die Rechte zu vergeben und man muss nicht in der Datei editieren.
+
Um die Adresse des RPIs im lokalen Netz zu finden, kann man in einer Konsole folgendes eingeben:
  
 +
ifconfig
  
{{redbox|'''WICHTIG:''' Privilegien können auch weggenommen werden, aber es gibt <u>ein Spieler</u>, dem man nicht die Rechte wegnehmen kann, was ja auch gut ist, denn dem Admin sollten die Rechte nicht entzogen werden können.
+
Nach dem ersten Besuch können die Einstellungen vorgenommen werden, die bei allen Welten gleich sein sollten. Mehr dazu auf der Seite [[Minetest_in_der_Schule/Einstellungen_am_Server_vornehmen_und_Einrichten|Einstellungen am Server vornehmen und Einrichten]].
  
Der Spielername, bei dem das der Fall  ist, wird im Minetest-Verzeichnis in der Datei <code>minetest.conf</code> unter "Name" angegeben. Als Server-Admin sollte man auf jeden Fall zusehen, dass der Name dort steht und nur vertrauenswürdige Personen sollten an diese Datei herankommen.}}
+
[[Category:German]]
 +
[[Category:Minetest as Educational Tool]]

Latest revision as of 18:24, 28 January 2018

Server auf dem RaspberryPi installieren und starten

Prinzipiell ist das Herunterladen und Compilieren bereits in der README auf GitHub erklärt. https://github.com/minetest/minetest/blob/master/README.md Nachfolgend ist aber nochmals aufgeführt, wie man dies unter Raspbian (Jessie) durchführen kann.

Abhängigkeiten

Zunächst sind die Abhängigkeiten zum Compilieren wie folgt zu installieren:

sudo apt-get install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev

Herunterladen

Den Minetest Quellcode kann man auf verschiedene Arten herunterladen. Nachfolgend wird die Methode über git erklärt. In diesem Fall wird mittels der git Option "--branch stable-0.4" der Quellcode von der Version "0.4.x stable" ohne Versionsgeschichte ("--depth 1") heruntergeladen.

Den eigentlichen Minetest Quellcode abrufen:

git clone --branch stable-0.4 --depth 1 https://github.com/minetest/minetest.git

In das erstellte Verzeichnis wechseln:

cd minetest/

Dasselbe für das standardmässig mitgelieferte "Minetest Game":

git clone --branch stable-0.4 --depth 1 https://github.com/minetest/minetest_game.git games/minetest_game

Kompilieren

Anschließend festlegen was gebaut werden soll. In diesem Fall mit dem Minetest Server als Release-Version:

cmake . -DRUN_IN_PLACE=TRUE -DBUILD_SERVER=TRUE -DCMAKE_BUILD_TYPE="Release"

Das ganze dann schließlich kompilieren, was einige Zeit in Anspruch nimmt. Die Option "-j 4" legt fest, dass auf vier Prozessorkernen gleichzeitig kompiliert wird, was für den Raspberry 2 oder 3 Sinn ergibt:

make -j 4

Sollte alles fehlerfrei durchgelaufen sein, befindet sich der fertig compilierte Minetest Server und Client im Unterverzeichnis bin.

Starten

Nach Betreten des Verzeichnisses "bin/" kann der Server wie folgt gestartet werden:

./minetestserver

Ein erster Besuch

Wenn der Server ohne Fehler gestartet ist, kann man einen ersten Besuch abstatten. Auch wenn man nun eine Welt erstellt hat, so geht es erst einmal nur um das Testen und die Einstellungen. Bei Bedarf kann auch eine Einzelspieler-Welt mit einigen vorbereiteten Strukturen kopiert und auf dem Server verwendet werden.

Um die Adresse des RPIs im lokalen Netz zu finden, kann man in einer Konsole folgendes eingeben:

ifconfig

Nach dem ersten Besuch können die Einstellungen vorgenommen werden, die bei allen Welten gleich sein sollten. Mehr dazu auf der Seite Einstellungen am Server vornehmen und Einrichten.