Archiv verlassen und diese Seite im Standarddesign anzeigen : Mit PHP eine Linux-Anwendung neu starten?
Hallo!
Ich möchte mir gerne ein Webinterface für Counterstrike und andere Server bauen. Dafür muss ich aber eine Funktion haben, mit der ich den Server neustarten kann.
Gibt es da eine Möglichkeit?
Gibt doch sowas, mit dem man Sachen überprüfen kann und wenn sie off sind, werden sie automatisch neu gestartet, heißt das nicht CornJob oder so?
Geht das vielleicht damit?
MfG
Jacky2k
schreib dir ein shell-script, welches du dann mit den entsprechenden rechten mit php ausführen kannst
Aha, und wie mache ich das mit PHP?
system -- Führt ein externes Programm aus und zeigt dessen Ausgabe an.
http://de2.php.net/manual/de/function.system.php
exec -- Führt ein externes Programm aus
http://de2.php.net/manual/de/function.exec.php
Boa mist!
Ich verstehe garnichts... hast du das zufällig verstanden?
Kannst mir das vielleicht mal erklären, weil da is nirgends mal die Syntax erklärt und die Beispiele sind alle total unterschiedlich. Ich sehe da keinen Zusammenhang.
Also, ich habe einen Prozess, den ich im Hintergrund mittels
# screen -A -m -d -S [name] [anwendung]
gestartet habe.
So, wie kann ich den nun damit richtig runterfahren?
Also mit
# screen -r [name]
rein gehen und dann
# quit
nacher wieder starten...
Verstanden?
robotangel
26.12.04, 00:02
Öhm, exec("befehl"); system("befehl");
Da gibts nich viel Syntax :)
OK...
nachdem ich da fast alles durchgelsen habe, hab ich es auch verstenden...galub ich..
aber noch was:
als welcher Benutzer wird das ausgeführt? Und wie kann ich den Benutzer ändern? Wenn ich z.B. das System neu booten will, muss ich ja ROOT sein...
Und das sind im Grunde shell-scripte, oder?
Also lönnte ich da jetzt auch einfach ein 'ls' oder so machen?
Oder du gibst nem bestimmten Unser das recht neuzustarten
Wohl eher nicht...
Das mit dem Neustarten war ja nur ein Beispielt...
Wie bekomme ich es nun hin, eine Anwendung, so wie von mir beschrieben zu beenden???
<?php
exec ("killall -15 couterstrike-server");
// oder wie auch immer der Prozess eines CS-Servers heisst :)
?>
Wahrscheinlich wirst du an den Rechten für kill rumspielen müssen, damit der Benutzer, unter dem der Webserver läuft (solange es nicht root ist :evil: ), auch das Recht hat, prozesse zu killen. (Das sollte sich in der sudoers-Datei einstellen lasses, zu erreichen via "visudo").
Sicherer ist es allerdings, ein Script zu schreiben, das den Server killt, und die Rechte nur für dieses Script zu vergeben.
Mhhhhh
Also...
ich teste das mal..
aber ich hab mal ein touch gemacht... das geht nicht!
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.