Install minecraft server

Datum: 29-10-2014

server,Linux,Ubuntu,Minecraft,Minecraft-server

Tutorial om een eigen Minecraft server te installeren onder Linux.
Stapsgewijs wordt hier beschreven hoe je een minecraft-server kan bouwen.
Het kan worden geïnstalleerd op een een lokale server of bijvoorbeeld via VPS Hosting (een Ubuntu server is op een VPS meestal met een paar klikken te installeren).

In deze beschrijving wordt gebruik gemaakt van:
- Minecraft-server versie 1.8.1
- Ubuntu Server 14.04.1 LTS.

Een eigen Minecraft server bouwen

  1. Basis configuratie server
  2. Java installeren
  3. Minecraft downloaden
  4. Minecraft installeren
  5. Akkoord gaan met de Minecraft voorwaarden
  6. Minecraft rechten op server instellen
  7. Opstart script maken
  8. Starten en stoppen Minecraft
  9. Log files

1. Basis configuratie server

Voor externe/VPS Hosting is na de installatie van Ubuntu Server 14.04.1 LTS gemakkelijk om vanaf je eigen computer de server direct te kunnen configuren. Hier is een SSH verbinding voor nodig.

Als dit het geval is en er nog geen ssh server is geïnstalleerd.

$ sudo apt-get update

Installeer ssh server met behulp van apt-get

$ sudo apt-get install openssh-server

Als de ssh server is geïnstalleerd kan je vanaf je locale computer via ssh connectie maken met de server. In dit geval via de terminal, maar er zijn ook genoeg andere programma's zoals Putty die hierin voorzien.

$ ssh [USERNAME]@[IP-ADRES OF HOSTNAME] dus iets van: $ ssh gebruikersnaam@mijn-minecraftserver.nl 

Als het kan verder over SSH i.p.v. de console in het beheer systeem.

2. Java installeren

Check of java geïnstalleerd is door het volgende commando

$ java -version

Bij iets lijkend op het volgende resultaat is het in orde en is java wel geïnstalleerd.

java version "1.7.0_65" OpenJDK Runtime Environment (IcedTea 2.5.3) (7u71-2.5.3-0ubuntu0.14.04.1) OpenJDK 64-Bit Server VM (build 24.65-b04, mixed mode) 

Bij iets lijkend op het onderstaande resultaat is java niet geïnstalleerd.

Het programma ‘java’ kan gevonden worden in de volgende pakketten: * default-jre * gcj-4.8-jre-headless * openjdk-7-jre-headless * gcj-4.6-jre-headless * openjdk-6-jre-headless Probeer: sudo apt-get install 

Als java niet geïnstalleerd is, installeer het dan met behulp van apt-get

$ sudo apt-get install default-jdk

Check na de installatie of java goed geïnstalleerd is (java -version).

3. Minecraft downloaden

Maak een nieuwe folder aan waar we de server in gaan installeren

$ mkdir ~/minecraft-server

Ga naar de, net aangemaakt, "minecraft-server" folder

$ cd minecraft-server

Download de laatste minecraft server met wget

$ wget -O minecraft_server.jar https://s3.amazonaws.com/Minecraft.Download/versions/1.8.1/minecraft_server.1.8.1.jar 

4. Minecraft installeren

Eerste maar eens testen of minecraft eigenlijk wel wil werken

$ java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui

Voor de eerste keer krijg je deze melding:

[18:02:35] [Server thread/INFO]: Starting minecraft server version 1.8.1 [18:02:35] [Server thread/INFO]: Loading properties [18:02:35] [Server thread/WARN]: server.properties does not exist [18:02:35] [Server thread/INFO]: Generating new properties file [18:02:35] [Server thread/WARN]: Failed to load eula.txt [18:02:35] [Server thread/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info. [18:02:35] [Server thread/INFO]: Stopping server [18:02:35] [Server Shutdown Thread/INFO]: Stopping server 

5. Akkoord gaan met de Minecraft voorwaarden

Regel 6: "You need to agree to the EULA in order to run the server. Go to eula.txt for more info."

het eula.txt bestand bevat het volgende:

#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). #Mon Jan 12 18:02:35 CET 2015 eula=false 

Gewijzigd moet worden: "eula=false" in "eula=true"

Gebruik hiervoor je vertrouwde editor, hier gaan we het doen met de Vi editor, voer het volgende in:

$ vi eula.txt

Ga met de cursor naar "eula=false";

Met de cursor op de juiste positie, druk op de toets i (dit zet de editor in insert stand).

Wijzig de false in true.

#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). #Mon Jan 12 18:02:35 CET 2015 eula=false ~ ~ ~ ~ "eula.txt" 3L, 181C

Om dit op te slaan druk je achtereenvolgens op:

  1. Escape (Esc)
  2. : (dubbele punt)
  3. w
  4. q

De ingevoerde opdracht staat onderin het scherm. Dit ziet er ongeveer zo uit

#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). #Mon Jan 12 18:02:35 CET 2015 eula=true ~ ~ ~ ~ :qw

Druk op "Enter" en het bestand is gewijzigd en opgeslagen.

Lees hier meer over VI commando's.

 

Minecraft nu maar eens gaan starten

$ java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui

De settings "-Xmx1024M -Xms1024M" worden onder punt 7 nader beschreven.

Als alles goed is geeft de bovenstaande opdracht ongeveer het volgende resultaat:

[09:14:45] [Server thread/INFO]: Starting minecraft server version 1.8.1 [09:14:45] [Server thread/INFO]: Loading properties [09:14:45] [Server thread/INFO]: Default game type: SURVIVAL [09:14:45] [Server thread/INFO]: Generating keypair [09:14:45] [Server thread/INFO]: Starting Minecraft server on *:25565 [09:14:45] [Server thread/INFO]: Using epoll channel type [09:14:45] [Server thread/INFO]: Preparing level "world" [09:14:45] [Server thread/INFO]: Preparing start region for level 0 [09:14:46] [Server thread/INFO]: Preparing spawn area: 16% [09:14:47] [Server thread/INFO]: Preparing spawn area: 37% [09:14:48] [Server thread/INFO]: Preparing spawn area: 61% [09:14:49] [Server thread/INFO]: Preparing spawn area: 83% [09:14:50] [Server thread/INFO]: Done (5,137s)! For help, type "help" or "?" 

Dit ziet er goed uit, weer afbreken met Ctrl + Z
Om het Java process af te breken:

$ killall -9 java

Om Minecraft gemakkelijker te starten en te stoppen wordt onder punt 7 beschreven.

6. Minecraft rechten op server instellen

Om minecraft niet als root te laten draaien, moet er het volgende gebeuren:

  • 6.1. minecraft groep aanmaken
  • 6.2. minecraft user aanmaken
  • 6.3. minecraft user eigennaar maken van de minecraft-bestanden

6.1. Groep aanmaken met de naam "minecraft"

$ sudo addgroup --system minecraft

6.2. Gebruiker aanmaken en deze aan de zojuist aangemaakte "minecraft" groep toevoegen

$ sudo adduser --system --no-create-home --home ~/minecraft-server --ingroup minecraft minecraft

6.3. minecraft user eigennaar maken van de minecraft-bestanden

$ sudo chown -R minecraft ~/minecraft-server

7. Opstart script maken

Op minecraft.gamepedia.com staat een goed beschreven hoe een startup-script voor een minecraft server te maken.

Eerste het configuratie bestand aanmaken

$ sudo touch /etc/init/minecraft-server.conf

Het onderstaande "start & stop" minecraft-script moet in dit bestand (minecraft-server.conf) gekopieerd worden. Maar eerst moet er aan het script nog wat aangepast worden.

[MINECRAFT-INSTALLATIE-FOLDER] moet vervangen worden voor het juiste pad.
Als het goed is sta je nu in de installatie folder, gebruik het volgende commando om het absolute pad te verkrijgen

$ pwd /home/gebruikersnaam/minecraft-server-folder <- Gebruik dit pad 

Pas het pad in de onderstaande code aan.


In de laatste script regel wordt mincraft gestart. De volgende instellingen zijn voor het beheren van het gebruik van het ram-geheugen. Het volgende heb ik ingesteld op een minecraft-server met 2Gb ram-geheugen:

Minimum te gebruiken geheugen (1 Gb) -> '-Xms1024M' Maximum te gebruiken geheugen (1,5 Gb) -> '-Xmx1536M'

"start & stop" minecraft-script:

# description "start and stop the minecraft-server" start on runlevel [2345] stop on runlevel [^2345] console log chdir [MINECRAFT-INSTALLATIE-FOLDER] setuid minecraft setgid minecraft respawn respawn limit 20 5 exec java -Xms1024M -Xmx1536M -jar minecraft_server.jar nogui

Voor meer informatie: minecraft.gamepedia.com

Kopieer het aangepast minecraft-script naar het clipboard

Open het aangemaakte bestand met de Vi editor:

$ sudo vi /etc/init/minecraft-server.conf

Druk op i

Druk (tegelijk) op Ctrl + Shift + V (in terminal emulator is ook de rechter muisknop -> plakken te gebruiken)

Druk op achtereenvolgens op:

  1. Escape (Esc)
  2. : (dubbele punt)
  3. w
  4. q
  5. Enter

8. Starten en stoppen Minecraft

Omdat eerder (punt 5) de minecraft server getest staan waarschijnlijk niet alle rechten goed. Om problemen te voorkomen maken we de gebruiker "minecraft" eigennaar van alle bestanden in de minecraft-server folder.

Eerst even checken of je in de juiste folder staat.

$ pwd /home/gebruikersnaam/minecraft-server-folder 

Als dit oke is, maak dan de gebruiker "minecraft" eigenaar van alle bestanden in deze folder:

$ sudo chown -R minecraft *

Server starten:

$ sudo start minecraft-server

Server stoppen:

$ sudo stop minecraft-server

Bij een herstart van de Linux-server wordt de minecraft server die hierop draait automatisch gestart.

9. Log files

Als de server gestart wordt met het script staan de log files niet meer in de folder van de minecraft-server

Om de log-files te bekijken:

$ sudo cat /var/log/upstart/minecraft-server.log

Om de log-files 'live' te volgen als de server draait:

$ sudo tail -f -n15 /var/log/upstart/minecraft-server.log

Door -n15 volg je de laatste 15 regels