Dieser Artikel wurde archiviert, da er - oder Teile daraus - nur noch unter einer älteren Ubuntu-Version nutzbar ist. Diese Anleitung wird vom Wiki-Team weder auf Richtigkeit überprüft noch anderweitig gepflegt. Zusätzlich wurde der Artikel für weitere Änderungen gesperrt.
Es gibt mehrere Möglichkeiten, einen Minecraft-Server zu betrieben. In diesem Artikel wird die Einrichtung des Vanilla-Server und dessen Erweiterung zum Bukkit-Server beschrieben.
Für einen reinen Minecraft-Server mit 10 Slots wird ein Prozessor mit mindestens 1 GHz und 1 GiB RAM benötigt. Möchte man mehr Slots oder z.B. einen Webserver haben, sollte man bei 2 GiB anfangen.
Minecraft basiert auf Java. Wie man eine Laufzeitumgebung (JRE, ab Version 6) installiert, ist im Artikel Java/Installation beschrieben. Um den Server nur bei Bedarf zu starten, reicht das vollkommen. Es wird aber empfohlen, auch screen und wget zu installieren, um die neuste Serversoftware herunterzuladen und den Server aus der Ferne verwalten zu können [1]:
wget
screen
mit apturl
Paketliste zum Kopieren:
sudo apt-get install wget screen
sudo aptitude install wget screen
Zur besseren Handhabung des Servers gibt es ein fertiges Skript von Minecraftforum-Mitglied sandain , mit dem man den Server unter anderem aktualisieren kann. Dafür wird benötigt:
perl
mit apturl
Paketliste zum Kopieren:
sudo apt-get install perl
sudo aptitude install perl
Dann muss das Skript noch heruntergeladen werden [2]:
wget https://raw.github.com/sandain/MinecraftServerControlScript/master/minecraft_server
Fremdsoftware kann das System gefährden.
Das Skript benutzt aus Sicherheitsgründen den Benutzer minecraft
, der noch angelegt werden muss [3][4]:
sudo adduser minecraft
Jetzt das Skript nach /etc/init.d/ kopieren und ausführbar machen [5]:
sudo cp minecraft_server /etc/init.d/minecraft_server sudo chmod 755 /etc/init.d/minecraft_server sudo update-rc.d minecraft_server defaults
Weiter geht es im Abschnitt Linux Minecraft Server Control Script.
Der Vanilla-Server ist der von Mojang freigegebene Original-Minecraft-Server, mit dem man einfach nur Minecraft spielen kann, ohne Plugins oder Ähnlichem. Um den Server zu nutzen, muss der Server zuerst heruntergeladen werden.
wget https://s3.amazonaws.com/Minecraft.Download/versions/1.8.3/minecraft_server.1.8.3.jar
Die minecraft_server.jar kann an einem beliebigen Ort gespeichert werden und von dort mit dem Befehl:
java -Xmx 1024M -Xms 1024M -jar minecraft_server.jar -nogui
oder mit einem kurzen Shellskript:
1 2 | #!/bin/bash
java -Xmx 1024M -Xms 1024M -jar minecraft_server.jar -nogui
|
welches z.B. als minecraft_server.sh gespeichert wird, gestartet werden. Das Argument -nogui
sorgt dafür, dass das Swing-GUI, welches im Vanilla Server integriert ist, nicht geöffnet wird.
Der Bukkit Server ist eine Art Mod für den Minecraft Server, der es unter anderem ermöglicht, Plugins zu installieren. Um den Server zu nutzen, muss der Server von dl.bukkit.org herunter geladen werden. Die Datei craftbukkit.jar kann an einem beliebigen Ort gespeichert werden und von dort aus dem Terminal heraus mit
java -Xmx 1024M -Xms 1024M -jar craftbukkit.jar
oder mit einem kurzen Shellskript:
1 2 | #!/bin/bash
java -Xmx 1024M -Xms 1024M -jar craftbukkit.jar
|
welches z.B. als craftbukkit.sh gespeichert wird, gestartet werden. Der Bukkitserver beinhaltet keine Swing-GUI, weshalb kein -nogui
angehängt werden muss. Es gibt aber Plugins, die eine GUI oder ein Webinterface hinzufügen.
Um Plugins zu installieren, muss einfach das von z.B. DevBukkit heruntergeladene .jar-Datei Archiv in den Ordner plugins kopiert werden.
su minecraft cd ./plugins wget http://dev.bukkit.org/media/files/538/85/PermissionsBukkit-1.2.jar ## Download nicht mehr verfuegbar!
Diese Befehle würden PermissionsBukkit in den Standard-Pluginordner herunterladen. Beim nächsten Start des Servers oder bei einem Reload wird das Plugin automatisch geladen.
Plugin Liste | ||
Name | Autor | Beschreibung |
CommandBook | sk89q | Ein sehr verbreitetes Plugin, welches viele neue Befehle hinzufügt und alte verbessert. |
WorldEdit | sk89q | Ein ingame Map-Editor, wie z.B. MCEdit, mit vielen Zusatz-Features. |
WorldGuard | sk89q | Ein Sicherheits Plugin, welches man auf sogut wie jedem Server findet. Erlaubt es unter anderem Region zu definieren und Explosionen zu verhindern. |
CommandHelper | sk89q | Ein sehr praktisches Plugin mit einem repeat Befehl und der Möglichkeit mehrere Befehle zusammenzufassen |
CraftBook | sk89q | Ein sehr schönes Plugin mit ICs, Liftschildern, schaltbaren Areas und vielem mehr. |
Bukkitmanager | efreak1996 | Ein Plugin zum verwalten des Servers und seiner Plugins |
PermissionsEx | t3hk0d3 | Ein sehr häufig genutztes und mächtiges Permissions Plugin |
PermissionsBukkit | SpaceManiac | Ein sehr leichtes und kleines Permissions Plugin. |
SuperpermBridge | SpaceManiac | Eine Brücke zwischen verschiedenen Permissionssystemen und PermissionsBukkit |
iConomy | Nijikokun | Ein Geldplugin, welches von den meisten Plugins unterstützt wird. |
LWC | Hidendra | Ein Plugin, zum Abschliessen von Türen, Truhen und vielem mehr. |
Multiverse | MultiverseTeam | Ein Multiworld Plugin. |
Multiverse Portale , Schild Portale , Nether Portale | MultiverseTeam | Verschiedene Portalarten für Multiverse |
DynMap | mikeprimm, FrozenCow2 | Eine sehr beliebtes LiveMap plugin, welches auch Apache unterstützt |
Permissions(Rechte) sorgen bei den meisten großen Servern dafür, dass neue Spieler keinen Mist bauen können oder nur Admins cheaten können. In dieser kurzen Anleitung werden nur PermissionsEx, PermissionsBukkit und die SuperpermsBridge beschrieben, da sie die am meist genutzten Permissions Plugins sind
Im Root Ordner des Minecraft Servers befindet sich eine permissons.yml in der man mehrere Permissionseinträge bündeln kann. Beispiel:
admin: commandbook.*: true permissions.*: true vip: commandbook.give.*: true
Diese Permissionnodes sind aber nur dazu gedacht, große Sammlungen an Permissionnodes zu einer zusammenzufassen. Um die Permissionnodes zu verteilen, muss ein Permissions Plugin installiert werden.
PermissionsBukkit ist ein relativ kleines und komfortables Permissions Plugin, welches nur auf kleineren oder Homeservern verwendet werden sollte. Ab einer gewissen Größe und Anzahl an Plugins sollte man, z.B. auf PermissionsEx umsteigen. Wenn das Plugin installiert ist, findet man im Ordner /plugins/PermissionsBukkit/ eine Datei namens config.yml. Wenn man diese öffnet, sollte das Ganze in etwa so aussehen:
# PermissionsBukkit configuration file # # A permission node is a string like 'permissions.build', usually starting # with the name of the plugin. Refer to a plugin's documentation for what # permissions it cares about. Each node should be followed by true to grant # that permission or false to revoke it, as in 'permissions.build: true'. # Some plugins provide permission nodes that map to a group of permissions - # for example, PermissionsBukkit has 'permissions.*', which automatically # grants all admin permissions. You can also specify false for permissions # of this type. # # Users inherit permissions from the groups they are a part of. If a user is # not specified here, or does not have a 'groups' node, they will be in the # group 'default'. Permissions for individual users may also be specified by # using a 'permissions' node with a list of permission nodes, which will # override their group permissions. World permissions may be assigned to # users with a 'worlds:' entry. # # Groups can be assigned to players and all their permissions will also be # assigned to those players. Groups can also inherit permissions from other # groups. Like user permissions, groups may override the permissions of their # parent group(s). Unlike users, groups do NOT automatically inherit from # default. World permissions may be assigned to groups with a 'worlds:' entry. # # The cannot-build message is configurable. If it is left blank, no message # will be displayed to the player if PermissionsBukkit prevents them from # building, digging, or interacting with a block. Use '&' characters to # signify color codes. users: ConspiracyWizard: permissions: permissions.example: true groups: - admin groups: default: permissions: permissions.build: false admin: permissions: permissions.*: true inheritance: - user user: permissions: permissions.build: true worlds: creative: coolplugin.item: true inheritance: - default messages: build: '&cYou do not have permission to build here.'
Unter dem Eintrag user
werden später alle Nutzer inklusive ihrer Gruppen und evtl. Sonder-Permissions eingetragen. Das übernimmt PermissionsBukkit automatisch, sobald sich jemand neues einloggt.
Unter dem Eintrag group
werden alle Gruppen samt Permissionsnodes definiert
Unter dem Eintrag messages
können alternativ Nachrichten, für den Fall, dass man für etwas keine Berechtigung hat, definiert werden
Auf den meisten Servern gibt es folgende Gruppen:
Gruppen-Überblick | |
Gruppe | Bedeutung |
Gast | Die Standard-Gruppe. Hat meist nur Rechte zum Chatten und zum Spawnen. |
Member | Der normale Benutzer. Kann nichts besonderes, aber mehr als der Gast. |
VIP | Werden oft vom Member durch Spenden hochgestuft. Kann meist Cheaten. |
Supporter | Hilft den Gästen, Membern und VIP's. Kann manchmal auch Gäste freischalten. |
Admin | Ist der Mächtigste von Allen. Kann alles machem was er will. |
Eine config.yml mit diesen Gruppen könnte z.B. so aussehen:
user: Bämm2000: permissions: groups: - member knorckator50: permissions: groups: - admin groups: gast: permissions: permissions.build: false commandbook.spawn: true member: inheritance: - gast permissions: permissions.build:true commandbook.sethome: true commandbook.warp: true vip: inheritance: -member permissions: commandbook.give.*: true supporter: inheritance: -vip permissions: permissions.*: true admin: inheritance: -supporter permissions: commandbook.*: true worldedit.*: true worldguard.*: true commandhelper.*: true iConomy.*: true messages: build: '&cYou do not have permission to build here.'
Bei den Usern ist die Einrichtung sehr simpel gehalten:
users: ConspiracyWizard: permissions: permissions.example: true groups: - admin groups: admin: permissions: permissions.*: true inheritance: messages: build: '&cYou do not have permission to build here.'
Wie man sieht, ist der user teil dem groups teil sehr ähnlich. Statt einem Gruppennamen wird der Username angegeben und es gibt keine inheritance, stattdessen einen groups eintrag. Der Permissionseintrag ist dazu da, um jemandem, zusätzliche Rechte zu geben oder zu nehmen. Unter dem Groupseintrag trägt man die zugehörige Gruppe ein. Für weitere Informationen zu PermissionsBukkit und seiner Einrichtung: DevBukkit Thread
Es kann vorkommen, dass ein Plugin PermissionsBukkit nicht unterstützt, sondern z.B. Permissions 3.1.6. In diesem Fall hilft die SuperpermsBridge, indem sie diesen Plugins ein anderes Permissions vorgaukelt. Wenn PermissionsEx genutzt wird ist dies nicht nötig, da PermissionsEx die API von Permissions 2&3 unterstützt. Um nun diese Permission Nodes zu verteilen, muss man nicht z.B.
xauth.register: true
sondern
superpermbridge.xauth.register: true
eingeben. Weitere Informationen gibts es im DevBukkit Thread .
Zum Starten des Servers einfach
su minecraft /etc/init.d/minecraft_server start
eingeben. Alternativ siehe auch Init script for minecraft/bukkit servers .
Liste aller Argumente | |
Argumente | Bedeutung |
start WELT | Startet die angegebene Welt, bzw. alle Welten. |
stop WELT | Stopt die angegebene Welt, bzw. alle Welten. |
restart WELT | Startet die angegebene Welt, bzw. alle Welten neu. |
force-stop WELT | Erzwingt das Stoppen der angegebenen Welt, bzw. aller Welten. |
force-restart WELT | Erzwingt das Neustarten der angegebenen Welt, bzw. aller Welten. |
status WELT | Zeigt den Status der angegebenen Welt, bzw. aller Welten. |
send WELT BEFEHL | Sendet einen Befehl zur angegebenen Welt. |
backup WELT | Macht ein Backup der angegebenen Welt, bzw. aller Welten. |
screen WELT | Wechselt zur Konsole der angegebenen Welt. |
watch WELT | Zeigt die log File der angegebenen Welt. |
update server | Updatet die Serverjar's und die Plugins |
Um einen Bukkit-Server mit dem Skript zu nutzen, benötigt es einiger Änderungen an der Datei minecraft_server. Einfach nach dem Eintrag "Minecraft Server Options" suchen und die drei Zeilen:
SERVER_URL="http://www.minecraft.net/download/minecraft_server.jar" SERVER_JAR="minecraft_server.jar" SERVER_ARGS="nogui"
mit jeweils einem vorangestelltem #
deaktivieren und die drei Zeilen:
# SERVER_URL="http://ci.bukkit.org/job/dev-CraftBukkit/lastStableBuild/artifact/target/craftbukkit-1.0.1-R2-SNAPSHOT.jar" # SERVER_JAR="craftbukkit-1.0.1-R2-SNAPSHOT.jar" # SERVER_ARGS=""
einkommentieren (#
-Zeichen entfernen).
Die Serverbefehle sind Befehle, die in der Serverkonsole oder inGame mit OP-Rechten, eingegeben werden können.
Liste aller Befehle - Vanilla | |
Befehl | Bedeutung |
stop | Stoppt den Server. |
save-all | Speichert die Welt |
save-on | Aktiviert das Speichern von Weltänderungen |
save-off | Deaktiviert das Speichern von Weltänderungen |
say NACHRICHT | Gibt eine globale Nachricht aus |
tp P1 P2 | Teleportiert Spieler 1 zu Spieler 2 |
gamemode SPIELER GAMEMODE | Wechselt den Gamemode des Spielers (Creative|Survival) |
give SPIELER ID ANZAHL | Gibt dem Spieler ein oder mehr Items mit der angegebenen ID |
kick SPIELER | Kickt den Spieler SPIELER |
ban SPIELER | Bannt den Spieler SPIELER |
pardon SPIELER | Hebt den Bann eines Spielers wieder auf |
ban-ip IP | Bannt eine IP |
pardon-ip IP | Hebt den Bann einer IP wieder auf |
help | Zeigt eine Befehlsübersicht an. |
op SPIELER | Macht einen Spieler zum OP, mit allen Server Befehlen. |
deop SPIELER | Löscht den OP Status eines Spielers |
tell SPIELER NACHRICHT | Sendet dem gegebenen Spieler SPIELER eine Nachricht NACHRICHT . |
list | Listet alle Spieler auf. |
say NACHRICHT | Sendet allen Spielern eine Nachricht. |
time add|set WERT | Fügt der Systemzeit den Wert hinzu/Setzt die Systemzeit auf den Wert(0-24000). |
Der Bukkit Server besitzt außerdem noch die folgenden und durch Plugins hinzugefügte Befehle.
Liste aller Befehle - Bukkit | |
Befehl | Bedeutung |
plugins | Gibt eine Liste mit allen Plugins zurück |
reload | Lädt den Server und die Plugins neu |
In der server.properties kann man so gut wie alles beim Server einstellen.
level-name=world allow-nether=true view-distance=10 spawn-monsters=true online-mode=true gamemode=0 spawn-animals=true max-players=20 server-ip= pvp=true level-seed= server-port=25565 allow-flight=false white-list=false motd=A Minecraft Server
Bedeutung der Einträge | |
Eintrag | Bedeutung |
level-name | Gibt den Namen der Welt an. |
allow-nether | Erlaubt oder verbietet den Nether (Hölle) |
view-distance | Gibt die Sichtweite an (1-10) |
spawn-monsters | Erlaubt oder verbietet das Spawnen (kreieren) von Monstern |
online-mode | Schaltet den Onlinemode an oder aus. Wenn er an ist, wird auf den Minecraft-Servern überprüft, ob der Spieler registriert ist, ist dieser aus, findet keine Überprüfung statt. |
gamemode | Wechselt zwischen dem Standard Gamemode (Creative|Survival|Hardcore) |
spawn-animals | Erlaubt oder verbietet das Spawnen (kreieren) von Tieren |
max-players | Die maximale Spielerzahl |
server-ip | Lässt den Server nur auf die angegebene IP lauschen |
pvp | Erlaubt oder verbietet PvP (Player versus Player (Spieler gegen Spieler)) |
level-seed | Erlaubt das Angeben eines benutzerdefinierten Seeds (Startwert einer Welt) |
server-port | Gibt den Port an, auf dem der Server läuft (Standard: 25565) |
allow-flight | Erlaubt oder verbietet fliegen. Fly-mod wird benötigt |
white-list | In der Whitelist können Spieler eingetragen werden, die sich verbinden dürfen |
motd | Die Nachricht, die in der Serverliste angezeigt wird. Beispiel: Mein Minecraft-Server |
The Complete Guide to Running a Minecraft Server - Blogbeitrag, 04/2011
Minecraft Server erstellen auf einem Debian Server - Blogbeitrag, 01/2011
Minecraft Server mieten - kommerzieller Anbieter
Minecraft - Hauptartikel
Diese Revision wurde am 2. August 2015 15:26 von aasche erstellt.