Ich möchte einen Crontab-Eintrag erstellen, damit er den Bildschirm startet, einen Spieleserver startet und sich löst. Dies ist für den Fall gedacht, dass der Server neu gestartet wird und ich möchte, dass er dies automatisch für mich startet.
0 0 0 0 0 (Befehl)
sollte beim Start ausgeführt werden.
Es wird eine Shell-Datei ausgeführt, die sich unter ~ / cube / server.sh befindet
linux
cron
gnu-screen
gameserver
Sieger
quelle
quelle
Antworten:
So etwas sollte funktionieren. Dieses Beispiel erzeugt einen Bildschirm und führt "top" aus:
Wie angegeben, möchten Sie in Ihrem Crontab Folgendes tun:
Wenn der Spieleserver eine "normale" Umgebung benötigt, können Sie natürlich näher heranrücken, indem Sie:
quelle
. ~/.profile
Teil?@reboot (. ~/cube; /usr/bin/screen -dmS gameserver-screen ./server.sh)
Dies sollte ausreichen ... ausführen
Dann geben Sie ein:
quelle
Der Vollständigkeit halber ist es auch möglich, tmux zu diesem Zweck zu verwenden
screen
(siehe diesen Link für einen Vergleich):quelle
Ich hatte eine ähnliche Situation, aber aufgrund anderer unangemessener Einschränkungen konnte ich Crontab nicht verwenden. Ich hatte tatsächlich einen Inittab-Anrufbildschirm. (ersetzte einige Namen, um Informationen zu verschleiern):
In 'file.screenrc' habe ich einige Optionen eingerichtet:
Auf diese Weise wurde es beim Booten gestartet, und wenn das Programm starb oder der Bildschirm geschlossen wurde, wurde es erneut erzeugt. Es wurde vielleicht nicht als konventionell angesehen, aber ich musste ein paar seltsame Umgebungsanforderungen erfüllen. Wenn wir es jedoch entfernen müssten, müssten wir diese Zeile kommentieren und die Sitzung beenden. Wenn Sie bereit sind, es wieder aufzurufen, kommentieren Sie es aus und starten Sie q.
quelle