Serwer MC się nie włącza po restarcie

Witaam,
Mam problem z restartem mojego serwera mc na VPS KVM od razu dodam że jest to system Ubuntu 16.04(z panelu :D). Problem polega na tym że gdy restartuję serwer to nie wykonuje się skrypt jakby start.sh to samo mam z restartem przez plugin AutoSaveWorld, po prostu serwer nie uruchamia się ponownie , zna ktoś może przyczynę ?

To jest mój skrypt start.sh

#!/bin/sh
screen -dmS event java -Xms3584M -Xmx3584M -jar spigot.jar

Zacznijmy może od tego, co już zrobiłeś, aby skrypt sam startował?

1 polubienie

w AutoSaveWorld ustawiłem sobie tak :smiley:

restart:
juststop: true
oncrash:
enabled: true
scriptpath: start.sh
timeout: 60
checkerstartdelay: 20
runonnonpluginstop: false
auto:
enabled: true
broadcast: true
scriptpath: start.sh
time:
- 00:59
countdown:
enabled: true
broadcastonsecond:
- 60
- 30
- 10
- 9
- 8
- 7
- 6
- 5
- 4
- 3
- 2
- 1
commands:

A ustawienia spigot.yml wyglądają tak :

restart-on-crash: true
restart-script: ./start.sh

Tutaj dodam jeszcze że zawsze ta konfiguracja działała przynajmniej na Debianie 8 :smiley:

Chyba to jest przyczyną. Według dokumentacji:

juststop: false #if true AutoRestart will just stop server instead of restart(useful for infinite loop script)

1 polubienie

No niestety dalej nie działa :confused:

A próbujesz restartować całą maszynę, czy przez /asw restart?
Jeśli przez komendę to pokaż co jest w logach po jej wpisaniu.

1 polubienie

Ten skrypt z configu od silnika nigdy nie działał dobrze…
Tutaj masz sprawdzone rozwiązanie, loopujesz proces serwera - po zatrzymaniu serwera od razu uruchamia się nowy proces i serwer startuje: Jak zrobić automatyczne uruchamianie serwera Minecraft gdy jest wyłączony?

1 polubienie

Po wpisaniu /asw restart, serwer odpowiada ale komenda działa dopiero po kilkunastu sekundach
i fakt serwer się sam restartuje :smiley: lecz po wpisaniu komendy /restart już się sam nie restartuje :confused: Jeżeli chodzi o komendę /restart to logi są takie http://prntscr.com/n2vroc

Tak jak tam jest napisane “Puszczanie ciągłego while true bez przerwy nie jest najlepszym pomysłem.”
tym bardziej że potrzebuję wszystko w screenie :smiley: i z nazwami screen’a

Attempting to restart with ./start.sh
Stopping server

To może znaczyć cokolwiek. Znacznie lepszym pomysłem jest to co zaproponował @Timo.

Z tym

To nie chodzi o to, że zrobienie tego to nie jest dobry pomysł, tylko, że brak przerwy pomiędzy uruchomieniami może doprowadzić do niekontrolowanej pętli. (A poniżej jest poprawiony przykład)
Nie ma problemu z opdaleniem tego w screenie, wrzuć to do pliku start.sh i włączaj serwer komendą screen -dmS event ./start.sh
Tylko usuń te wszystkie auto-restarty.

2 polubienia

:open_mouth: Dziękuje bardzo :smiley: Już nie zawracam główki

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.