Bin grad 'ein wenig' am Basteln an einem Webif - mag einfach meinen Leuten (windoofuser) keinen SSH-Account geben um Server zu starten, das wäre surreal anzunehmen dass die sich mit Syntax auseinandersetzen (und mit Screen, dtach, ...). Da code ich lieber an ein paar Wochenenden ein Interface als Jahrelang Konsolensupport zu machen. Übrigens - CFG/SCN/SAV/GRF-Management ist schon recht weit gediehen.
Ich Starte den/die Gameserver natürlich auch über ein Webinterface (derzeit SICHER nicht DAU-Konform, aber dafür vorgesehen

), schön und gut, funktioniert auch soweit ganz fein.
ABER - Damit meine (HTTP-)Session nicht abkackt musste ich '> /dev/null 2>&1' verwenden, sonst ist nämlich der Apache-Thread auf dem Server nach dem Launch tot. (Die Session für den Aktuellen Browser = stalled=Sanduhr, andere Browser auf dem selben Client funktionieren, session_destroy() hat nix geholfen)
- WIE finde ich nun die PID des Openttd-Prozesses raus (kein Schalter laut Doku um PID in ein File zu schreiben?), die wäre ganz hilfreich zum stoppen.
- Oder gibt es eine andere Möglichkeit den Gameserver zu killen, etwa via Openttd-Libs? (muss via PHP funktionieren)
- Vielleicht fehlt mir ein Kommandozeilen-Trick? Ansonsten würde ich versuchen nach einem Sleep ein "ps ax | grep "KOMMANDO" machen aber das fühlt sich auch dirty an?
Any tipps?
Technische Details:
- "passthru" - Commando im PHP-Script:
Code:
sudo -b -u openttd /usr/share/games/openttd_cpp/openttd -d 0 -D -g /home/openttd/.openttd/save/usa_1870_v0.2.sav -c /home/openttd/.openttd/openttd.cfg.usa -x > /dev/null 2>&1
- Gentoo Linux mit 2.6.31-Kernel - LAMP - 64bit
- Openttd + Chillis Patchpack
Further Development:
auf
http://tt.unkompliziert.org hab ich den Gameserver und das EntwicklerCMS eingerichtet - derzeit maximal für Nerds interessant und ausserdem ist der FQDN grad net aktiv - mein Provider hat irgendwas an seinen DNS-Servern umgestellt. Klaro dass das eine GPL-Entwicklung ist.