
Nachdem ich nun auch dem MineCraft-Fieber verfallen bin, habe ich mich dran gemacht und einen Server aufgesetzt.
Da es sich hierbei um eine Java-Geschichte handelt und das starten mittels ’screen‘ manchmal mehr als nervig ist, habe ich mir ein sehr einfaches start-stop-Script gebaut, welches ich hier vorstellen möchte :)
Schwupps, da ist’s auch schon…
Wir legen folgende Datei an und ändern die Pfade entsprechend:
sudo vi /etc/init.d/minecraft
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
#! /bin/bash # #Script for easy starting and stopping a minecraft-server #Just replace the path on Line 10 with your path to the minecraft_server.jar #You might need to adjust the minRAM and maxRAM too. # #https://www.janbpunkt.de # #Insert path to server.jar here DIR=/home/minecraft #Insert max. RAM you want Minecraft to use MAX=4096M #Insert min. RAM you want Minecraft to use MIN=1024M echo "" echo "" case "$1" in start) #check if there is a screen called "minecraft" is_it_running=$(screen -ls | grep minecraft) if [ "$is_it_running" != "" ] then echo "*** There is already a screen called 'minecraft' running. Aborting!" else echo "*** Starting minecraft-Server on screen 'minecraft'" cd $DIR screen -L -A -m -d -S minecraft java -Xms$MIN -Xmx$MAX -jar server.jar nogui #check if it is running now now_running=$(screen -ls | grep minecraft) if [ "$now_running" == "" ] then echo "*** Starting failed!" else echo "*** Server started successfully!" echo "*** You may now connect to console via ’screen -r minecraft'" echo $status fi fi echo "" echo "" ;; stop) echo "*** Looking for running minecraft-Server via ’screen'" #check if there is a screen called "minecraft" is_it_running=$(screen -ls | grep minecraft) if [ "$is_it_running" != "" ] then echo "*** Running minecraft-Server found:" $is_it_running echo "*** Saving chunks with 'save-all'" screen -S minecraft -X stuff $'save-all\n' echo "*** Sending message to players, that server will shutdown in 30 sec" screen -S minecraft -X stuff $'say Server will shut down in 30 sec\n' echo "*** Message sent. Wait 30 sec …" sleep 30 echo "" echo "*** Stopping" $is_it_running "now." screen -S minecraft -X stuff $'stop\n' #wait a while and then test if screen is there sleep 5 status_off=$(screen -ls | grep minecraft) if [ "$status_off" == "" ] then echo "*** minecraft-Server stopped!" $status_off else echo "*** Something went wrong!" $status_off fi else echo "*** No screen called 'minecraft' found. Is server really running?" fi echo "" echo "" ;; *) echo $"*** Usage: $0 {start|stop}" exit 1 esac |
Man kann dieses Script auch nutzen, um den MineCraft-Server starten zu lassen, wenn der Wirt-Server mal neugestartet wird.
Einfach entsprechend nach rc2.d linken:
1 |
ln -s /etc/init.d/minecraft /etc/rc2.d/S99minecraft |
Möchte man den MineCraft.Server auch sauber herunterfahren, wenn der Wirt-Server heruntergefahren wird, geht man ähnlich zu obiger Anleitung vor:
1 |
ln -s /etc/init.d/minecraft /etc/rc0.d/K99minecraft |
Zu Guter Letzt kann man noch einen Hardlink nach /usr/bin setzen, damit man überall mit „minecraft start|stop“ den Server starten/stoppen kann
1 |
ln /etc/init.d/minecraft /usr/bin |
Das sollte es eigtl. gewesen sein :)
Fragen? Anregungen? Kritik? Her damit!
Wenn Dir dieser Artikel geholfen und/oder gefallen hat, freue ich mich, wenn Du janbpunkt.de mit einer kleinen Spende per PayPal unterstützt. Jeder Betrag ist willkommen.
Über einen Kommentar freue ich mich natürlich auch :-)

Jan B-Punkt

Neueste Artikel von Jan B-Punkt (alle ansehen)
- Angespielt: Fights in Tight Spaces - 26. Februar 2021
- Erfolgreicher Social Engineering-Angriff dank Arztbesuch - 17. Februar 2021
- Adventskalender Gewinnspiele 2020 - 1. Dezember 2020
- Rauchfrei v2 – Erster Monat überstanden - 29. November 2020
- ohsnap! vs Spigen-Halterung - 6. November 2020
[…] ja durch einen vorangegangenen Post bekannt sein dürfte, betreibe ich einen kleinen MineCraft-Server auf meinem […]
Nette sache an sich. Bau noch eine restart) option ein, mach ne vernünftige init info und setz das ganze in die rc6, dann funzt das ganze auch bei einem simplen restart. mit der richtigen init info kannst du dir die rc*d kopien auch einfach ersparen. musst halt nur rc-d updaten, geht aber einfacher als das rumkopiere
Dein Kommentar ist wohl irgendwie im Spamfolder gelandet :-/
Irgendwann soll die Kiste auch mal ein "echte" init bekommen. Hab ich beim TS ja auch gemacht. Aber da mein Server eh nur alle Jubeljahre neugestartet wird, stört es mich derzeit nicht weiter :)