Gameserver Starten

Status
Nicht offen für weitere Antworten.
D

djflo

Hi Leutz!
Ich habe einen Linux Rechner, auf dem ich einen Half Life Gameserver starten will, also eine Anwendung mit ein paar Parametern dahinter.
Die Parameter (Mod, Map, Spielerzahl,...) können über eine PHP eingegeben werden.
Nun zu meiner Frage: wie mach ich dass, das ich die Anwendung übers Internet starten kann, also geht das mit PHP, Perl, JavaScript oder womit? Und schreibt mir bitte auch mal dazu, wo ich ein Script dafür herbekomme, falls ich eins brauch und was ich sonst noch machen muss, damit das funzt!

Danke!
mfg
DJ Flo
 

Christian Fein

Erfahrenes Mitglied
Nun du musst den apache
die erforderlichen rechte geben counterstrike starten zu dürfen.

Sei aber vorsichtig damit denn sowas kann leicht ein sicherheitsloch werden.

Sprich gib apache nur ausführrechte für dateien die du wirklich starten willst.

Grundsätzlich ist es aber kein Problem mit php direkt auf dateien zuzugreifen und auszuführen wenn die rechte stimmen.
 

Christian Fein

Erfahrenes Mitglied
Der user wwwrun ist soviel ich weis der apache user dem gibst du ganz normal mit chown die rechte auf die files.

su -c 'chown -R wwwrun /bsp/verzeichnis'

-> R heisst Rekursiev was ich mir 2 mal überlegen würde ob ich das dem apache rekursiev übergeb
 
D

djflo

Hmmm, also so wirklich klappt das noch nicht, ich hab jetzt, so wie du geschrieben hast, Apache die Rechte für das Verzeichnis gegeben, aber wenn ich den Gameserver starten will, passiert garnix!

Das ist übrigens meine PHP-Datei, die den Server starten soll (vielleicht liegt der Fehler ja auch da!?):

PHP:
<?
exec("/home/hlds_l/hlds_run -game cstrike +maxplayers $player +map $map");
?>

Die Variablen $player und $map werden natürlich vorher definiert!
 
D

djflo

Was wundert dich daran?
/home sollte dir ja wohl klar sein !?
/hlds_l ist das Hauptverzeichnis vom HL Server
/hlds_run ist die Anwendung um den Server zu starten
und der Rest dahinter sind die Parameter, die halt die Spielart, die Maximale Spielerzahl und die Startmap angeben.
 
Zuletzt bearbeitet von einem Moderator:

Marcus Roffmann

Erfahrenes Mitglied
Fragen wir mal so:
Was ist denn die Ausgabe Deines Skriptes und was sagt Dir der HL Server dazu?

Ohne die Ausgaben des Skripts kann ich Dir nicht viel sagen.

Kleiner Zusatz: der Pfad /home ist normalerweise für die Benutzer des Systems reserviert und wird dementsprechend auch so behandelt. Verschiebe das Skript mal in /usr und probier es dann mal.
 
D

djflo

Hmm, ich hab gerade mal versucht den Gameserver in der Konsole zu starten, und dann kommt:

undefinined symbol: __strtouq_internal

Was heißt das? Warum geht das nicht?
 

Marcus Roffmann

Erfahrenes Mitglied
Sieht nach einem Fehler im HL-Server selbst aus. Ich zieh ihn mir mal wieder und installier ihn dann.
Wenn's klappt schreib ich ein TUT, wenn nicht dann forsche ich solange bis es klappt ;)
 
Status
Nicht offen für weitere Antworten.