Wie erwähnt funktioniert alles bis auf das stoppen von Gameservern.
Das Subsystem wird direkt in Windows ausgeführt und ich kann an ort und stelle aus Shell Scripten .exe oder .bat Dateien starten.
Wie erwähnt funktioniert alles bis auf das stoppen von Gameservern.
Das Subsystem wird direkt in Windows ausgeführt und ich kann an ort und stelle aus Shell Scripten .exe oder .bat Dateien starten.
Logo, aber das soll jetzt nicht das Thema sein, ich will den Daemon garnicht nutzen da die Variante mit dem Subsystem viel mehr Möglichkeiten bietet. Hätte ich den Daemon nutzen wollen hätte ich dies schon erwähnt.
Den Link werde ich heute Abend ansehen und damit sollte ich klar kommen.
Der von Tekbase
Habe ich oben bereits geschrieben, das sind auch etwas umfangreichere skripte von daher hat sich das Subsystem ganz gut angeboten und wie gesagt, der Tekbase Daemon läuft nicht.
Die ARKs laufen auf Windows, gestartet wird das ganze aber über eine Shell Script im Linux Subsystem for Windows.
Die Batch wird ja auch auf Windows ausgeführt und ein Linux Server in dem sinne ist es nicht.
Nur nochmal um klarheit zu schaffen. Du willst über die linux installation auf deinem ich vermute windows hauptserver ein prozess mittels .bat stoppen richtig?
Vlt hilft das ja: TUT Aufbau einer Batch für den Windows Deamon
Das Richtig, werde ich mir mal ansehen.
Ich benötige für ein paar ARK Server ein Windows Betriebssystem. Da der Teklab Windows Daemon nicht funktioniert "Gameserver konnte nicht installiert werden" und meine Batch Kenntnisse zum umschreiben meiner Skripte auch nicht die besten sind, dachte ich mir hey probierste mal das Linux Sybsystem aus.
Gesagt getan. Subsystem installiert, Skripte (Update und Start) auf die jeweilige Windows Version von ARK umgestellt und gestartet.
Funktioniert auch alles wie geplant, stabil und wie es soll.
Einziger Nachteil, aus dem Subsystem heraus kann man keine Windows Prozesse beenden.
Bedeutet:
Installation (geht)
Updaten (geht)
FTP (geht)
starten (geht)
stoppen (geht nicht)
Aktuell löse ich es so, dass bei klick auf stopp, die RCON befehle zum stoppen und speichern der Welt an den Gameserver geschickt werden. Das Funktioniert auch recht zuverlässig aber auch nur wenn der Gameserver nicht hängt und auch voll gestartet ist.
Nun aber hin und wieder passiert es, dass sich ein ARK beim starten aufhängt und oder einfach zwischen durch aufhängt, in beiden fällen läuft der Server Prozess noch aber er nimmt halt keine Befehle mehr entgegen.
Meine Frage nun, hat da jemand etwas Erfahrung mit Windows und könnte mir da auf die Sprünge helfen? Ich müsste also von meinem stop Script was im Subsystem liegt, eine .bat Datei mit den entsprechenden Variablen über den Gameserver auslösen, was am besten in die .bat Datei?
Gruß,
Vakarian
Huhu,
ich habe zum Kunderoot Server Modul ein paar Fragen:
Atlas erschien wohl auch erst für Windows und dann erst eine ganze Wewile später für Linux. Wenn nun die ganzen "alten" Community User das Ding mit Windows am laufen haben, so werden sie dies auch dort empfehlen. Aber nicht umsonst stellen die Entwickler eine Linux Version. Würde das mit den Symlinks mal testen wie celltek es schrieb.
Wir hatten es selber damals nur mit sehr viel ach und krach und Debian 9 zum laufen bekommen sind dann aber wieder zurück auf die Windows Version über WineHQ weil es mit den Updates immer wieder zu Problemen gekommen ist. Ich habe es mit dem TE nun via wine zum laufen gebracht. Wir haben damals schon die erfahrung gemacht, dass der Windows Server unter Linux besser läuft auf die Linux Version.
Der ganze Aufwand ist auf viel geringer, eben das WineHQ paket installiert, der Imageserver den der TE nutzt (warscheinlich den TekBase Default Server) liefert bereits auch die Windows Files mit, von daher war es auch leicht das Startscript nach wine und Windows umzubauen.
Man sollte vielleicht irgendwo anmerken, das für Atlas noch der Redis Server benötigt wird, sonst Crashen der Server beim startvorgang.
Ja ok das Funktioniert danke
Root Login erweist sich als etwas schwierig
Ich habe mal betroffenes Programm hier hinterlegt:
https://data.sponsor-universe.eu/index.php/s/Zxb6iWxCMBF3YkC
So heute erst zu gekommen, funktioniert soweit ganz schon mal.
Vielleicht für die Nachwelt:
an das eigene Stopscript werden 3 Werte übergeben das sind:
1. USER
2. SCREEN NAME
3. Verzeichnisname
So nun hab ich ein Problem:
Mir wird beim Starten bzw. Stoppen eine rote Fehlermeldung angezeigt die besagt Server konnte nicht gestartet bzw, gestoppt werden. Die Fehlermeldung Lügt aber es wird so wie vorgesehen gestartet bzw gestoppt. Das Problem tritt auch nur auf, sobald ich mein stop Script drin habe:
Hallo,
gibt es irgendwo eine spezielle Anleitung wie man für spezielle Spiele Stop Scripte hinterlegen kann (also wenn man auf Stop drückt) und welche Variablen in diesen nutzbar sind?
Gruß,
Vakarian
Hallo hin und wieder haben Leute bei uns das Problem, dass die Server mit einem Falschen Kartennamen gestartet werden und denn dort ShooterEntry steht. In dem fall lässt sich der Gameserver nicht mehr stoppen.
Ich wollte den Servern nun eine PID Datei erstellen lassen was auch klappt, jedoch starten die Server nun nicht mehr.
PIDFILE=$var/pid.txt
if [ ! -f $PIDFILE ]; then
echo ""
else
pid=`cat $PIDFILE`
kill -SIGKILL $pid
rm -rf $PIDFILE
fi
sleep 1
./ShooterGameServer "$mapname"?listen?MaxPlayers=$2?MultiHome=$3?Port="$(($4+1))"?QueryPort=$4?RCONPort=$4?ServerPassword="$(sed 's/^.\(.*\).$/\1/' <<< $5)"?AltSaveDirectoryName="$mapname"?"$para1"?bRawSockets $para2 -nonetthreading -server -log ${8} ${9} ${10} ${11} ${12} ${13} ${14} &
echo $! > $PIDFILE
Alles anzeigen
Kann mir da jemand weiterhelfen?
nein die tut sie nicht es wird keine weitere Datei ausgeführt.
Dann müsste das Tekbase ja in der Theorie das Programm als online Anzeigen was es nicht macht oder mache ich was falsch?