Stichwort “Eierlegende Wollmilchsau” – der v-Server.
Ein Blog, zwei Blogs, viele Blocks.

Neben diesem und einem weiteren Blog, der noch aussteht (ja, es darf gespannt sein), läuft auf unserem Server nun auch Minecraft. Also viele Blögge ähh Blöcke. Eigentlich nur Blöcke. Wie Lego-Land Billund, bloß besser. Darum hier eine kurz Anleitung, wie man es denn besser macht.

Einrichten eines Servers für Minecraft unter Ubuntu 10.04

Zu beachten sind eigentlich nur zwei Punkte: Wie läuft es stabil und wie kann ich den MC-Server gut administrieren. Für stabil genügt es zunächst den richtigen Start-Befehl auszuführen und einfach im offenen Terminal zu arbeiten.

root@host:~#java -Xms1024M -Xmx1024M -jar minecraft_server.jar nogui

Sobald sich jedoch Verzögerungen im ssh-Zugang ergeben, kann die Steuerung des MC-Servers ins Stocken geraten und das ist, wenn man z.B. nicht den save-all Befehl schicken kann, sehr ärgerlich. Die Verwendung des screen Befehls ermöglicht die Java-Anwendung in einer eigenen Sitzung zu starten, die man loslösen (detach) kann und ssh beenden. Innerhalb dieser screen session läuft der MC-Server stabil, bietet jedoch nur dem Benutzer, der die Anwendung gestartet hat Zugriffsrechte – außer man aktiviert den Multiuser-Mode.

Um das ganze etwas handlicher und zugänglich für alle Benutzer zu gestalten, empfiehlt sich jedoch der Einsatz eines init-Skripts. Im Skript findet ebenfalls screen Einsatz, jedoch läuft es unter einem eigenständigen Benutzer. Diese Sitzung ist dann indirekt als root über das init-Skript für alle Benutzer steuerbar.
Das Skript kann man selber schreiben oder ein vorgefertigtes Skript aus dem MC-Wiki nehmen. Dies beinhaltet alle nötigen Funktionen: Start, stop, update, backup, status, restart. Ich habe das ganze noch um saveall und makeop ergänzt. Die modifizierte Version 1 findet sich im Anhang: Minecraft init script.

Neben den Schritten aus der hilfreichen Beschreibung im MC-Wiki zur Installation, ist noch ein Benutzer, z.B. minecraft:games, mit einer /bin/sh Shell anzulegen. Und natürlich die minecraft_server.jar in einen sinnvolle Ort zu kopieren, z.B. /usr/local/games.

Nach der Vollendung ist dann der MC-Server über

root@host:~#/etc/init.d/minecraft start

zu aktivieren. Nach dem Start kann über

root@host:~#/etc/init.d/minecraft makeop insertscaryuser

ein OP dem Server zugewiesen werden, der dann über say [T] per /server command den MC-Server aus dem Spiel heraus steuern kann.

Ach und… man sollte die Serverauslastung ein wenig im Auge behalten. 😉

The Swiss army v-Server.
On blog, two blogs, more blocks.

Is it a phenomenon in Germany only? Or does everybody suddenly forgot the ability of good computer graphics? Never mind, here is a short description how set up a Minecraft server on a dedicated or vServer. Beside a blog and with a second blog in progress. Blocks?

Set up a Minecraft server on Ubuntu 10.04

Three points: how does it run, how does it run stable and how to keep the control. How do run is quite simple, as it’s a stupid java-app:

root@host:~#java -Xms1024M -Xmx1024M -jar minecraft_server.jar nogui

However, there is no chance to close the ssh connection to your server now, because the server board needs an output. This means, [Ctrl+Z] brings the app to background, but it stops immediately.
Hm, then we use screen, which starts up a bash session for each process. This session can be detached, sent to background and reattached later on. The only problem is, that the session belongs to the user, who started it. The enhanced solution is to use an init.d script, which starts a screen session on an extra user and can be controlled be other users via root.

A good init script and description how to install can be found in the MC-Wiki. I made a modified version and extented the functions start, stop, update, backup, status and restart by saveall and makeop. It is clickable in the attachment:Minecraft init script.

Beside the steps mentioned in the MC-Wiki, you should create an extra user, e.g. minecraft:games, with a /bin/sh shell. And of course copy minecraft_server.jar at a useful place, e.g. /usr/local/games.

Installed everything correctly you can fire up the MC server

root@host:~#/etc/init.d/minecraft start

Furthermore, the server is now controllable by this script, for instance

root@host:~#/etc/init.d/minecraft makeop insertscaryuser

This adds an OP to the server, who can control it from now on with say [T] and  /server command.

And… watch out, minecraft may rise your server load. 😉

 

PS: This is my first real article in English – feel free to comment. 🙂

Tagged with:
 

Comments are closed.