Spigot MC Server /Restart funktioniert nicht [Debian 8 ] [Screen]?

1 Antwort

Ich habe das anders gelöst, bei mir löse ich alle 6 Stunden ein Cronjob aus:
Inhalt der Serverrestart.sh:

screen -R mc -X stuff "say Serverrestart in 2 Minuten $(printf '\r')"
sleep 60
screen -R mc -X stuff "say Serverrestart in 1 Minute $(printf '\r')"
sleep 60
screen -R mc -X stuff "say Serverrestart! $(printf '\r')"
sleep 2
screen -R mc -X stuff "stop $(printf '\r')"
sleep 30

rm -rf /dev/shm/mc/world_the_end
screen -R mc -X stuff "/dev/shm/mc/launch.sh $(printf '\r')"

Was passiert hier:
Der erste Block mit den Sleep Befehlen dient nur dem Hinweis, dass der Server in 2 bzw. 1 Minute neu startet. Der anschließende 30 Sec Sleep, gibt dem Server Zeit, ordentlich runter zu fahren.
Der folgende rm Befehl löscht das End, damit beim Reboot ein neues END erstellt wird.
Der anschließende Screen startet dann das launch Script.

Fertig.

Bei einigen Servervarianten, kann es sein, dass in einer CFG Datei vorgegeben ist, was nach dem Stop Befehl passieren soll. Du musst natürlich darauf achten, dass wie in meinem Beispiel, der Restart per Config ausgeschaltet sein muss.
Alternativ kannst Du auch den Aufruf des launch Scripts weg lassen.

Was möchtest Du wissen?