Hallo Community,
Ich suche einen Linux Gameserver restart Script, der an bestimmten Uhrzeiten ausgeführt werden soll,
Hat vielleicht jemand eine Idee wie ich das machen kann? bzw. Script was drin sein muss?
Grüße
Gameserver Restart Script
- Global-Beatz.de
- Erledigt
-
-
Ahoi,
ich werfe mal den Begriff Cronjob in den Raum (bin kein Linux Fan Boy). Dann brauchst du ja nur noch das Shell Script welches den Server neu Starten lässt. (Wenn ich falsch liegen sollte bitte korrigieren.)
Liebe Grüße
-
Ahoi,
ich werfe mal den Begriff Cronjob in den Raum (bin kein Linux Fan Boy). Dann brauchst du ja nur noch das Shell Script welches den Server neu Starten lässt. (Wenn ich falsch liegen sollte bitte korrigieren.)
Liebe Grüße
Das mit dem Cronjob weiß ich Nur Shellscript weiß ich gerade nicht.
-
Ein Shellscript ist nichts anderes als eine Datei in der die Anweisungen stehen.
Normal würdest du x Befehle in die Befehlszeile einhämmern um das durchführen, hier ist einfach die Datei da die das Automatisch für dich macht zum Zeitpunkt x.
Habe dir hier mal das Openbook von Rheinwerk verlinkt dazu. Müsste selbst auch nachschauen, wie das ganze funktioniert aber wenn es einfache "Befehle" sind die Ablaufen müssen sollte dies nicht unbedingt das Hexenwerk sein.
-
Welche Art von Gameserver ist das?
Wie wurde dieser gestartet?
Über einen Screen?
Eigener User? -
Welche Art von Gameserver ist das?
Wie wurde dieser gestartet?
Über einen Screen?
Eigener User?Es handelt sich um Alt:V Server
Ich frage mich ob es nicht möglich ist die ./altv-server via Cron zu starten und zu stoppen.
Weil irgendwie will er die serverstart.sh & serverstop.sh nicht ausführen
Cron ruft die Dateien zwar auf, aber starten tut da nichtHier mal eine Ausgabe der SH Dateien.
Serverstart.shServerstop.sh
Wenn ich folgendes ausführe: env -i /home/gvrp/001_main/serverstart.sh
Kommt die Meldung:Please set a terminal type.
Server gestartet.
Server startet dann auch, nur Cron macht da nichts -
Was steht in der /home/gvrp/001_main/start.sh ?
Generell würde ich screens immer detached starten, sprich -md mit dem Zusatz von der Benennung S.Beim beenden mache ich es gerne über die PID(Prozess ID), aber deins sollte Problemlos funktionieren.
-
Was steht in der /home/gvrp/001_main/start.sh ?
Generell würde ich screens immer detached starten, sprich -md mit dem Zusatz von der Benennung S.Beim beenden mache ich es gerne über die PID(Prozess ID), aber deins sollte Problemlos funktionieren.
Steht in der Start.sh
-
Hm, ich würde es wahrscheinlich so machen bzw. so ähnlich
User anlegen
Alles in das Verzeichnis von dem neuen User legen
start mit dem Skript serverstart.shBash#!/bin/sh cd /home/coolerGtaUser sudo -u coolerGtaUser LD_LIBRARY_PATH=. screen -mdS 001_main ./altv-server
Weil wir einen neuen Nutzer haben(mit root kann sowas schief gehen), kannst du weiterhin mit root den Cron ausführen
Wichtig zu wissen ist, jetzt wird jedes mal beim Ausführen vom serverstart.sh versucht zu starten, eine Abfrage wäre nicht schlecht die überprüft ob kein Server am laufen ist.
Könnte so umgesetzt werdenCodeif ! pgrep -u coolerGtaUser -f altv-server | tail -1 > /dev/null then sudo -u coolerGtaUser LD_LIBRARY_PATH=. screen -mdS 001_main ./altv-server fi
(EDIT: Bitte vorher testen, war jetzt freihand geschrieben und nicht getestet)
-
if ! pgrep -u coolerGtaUser -f altv-server | tail -1 > /dev/null
then
sudo -u coolerGtaUser LD_LIBRARY_PATH=. screen -mdS 001_main ./altv-server
fiWo soll das hin? auch in serverstart?
-
-
Der Crontab führt das zwar aus laut syslog.
Aber Server Startet leider nicht -
-
terminate called after throwing an instance of 'std::runtime_error'
what(): File cannot be created
Aborted
-
Öööh ein c++ Fehler?
Hast du von GTA alles installiert, was es möchte?
Spontan würde ich einfach ins graue tippen und auf Probleme mit den Permissions ->File cannot be createdUnd dann teste noch mal per Hand
-
Öööh ein c++ Fehler?
Hast du von GTA alles installiert, was es möchte?
Spontan würde ich einfach ins graue tippen und auf Probleme mit den Permissions ->File cannot be createdUnd dann teste noch mal per Hand
Jetzt startet der mit: cd /home/gvrp; sudo -u altv LD_LIBRARY_PATH=. ./altv-server (Per Hand nur Cron will noch nicht xD)
-
Hattest du die startserver.sh mal per Hand gestartet? Dafür würde ich aber den screen raus nehmen, weil es so einfacher ist zu schauen, ob es funzt.
-
Hattest du die startserver.sh mal per Hand gestartet? Dafür würde ich aber den screen raus nehmen, weil es so einfacher ist zu schauen, ob es funzt.
Ja hatte ich und es ging
Habe es aber nun hinbekommen, statt unsere Ideen, habe ich einfach via KeyHelp -> Geplante Aufgaben -> Pfad/zu/SH/Datei und nun geht es
Danke dir trotzdem für die Hilfe