Rechte Hilfe

Gead

Grünschnabel
Benutzer Rechte oder doch PHP

Hey Ho
Ich bin neu hier und hoffe ihr könnt mir helfen.
Seit gestern Nachmittag bin ich am rumprobiern und komme nicht weiter :mad:
Ich weiß auch schon nicht mehr nach was ich suchen soll, nix funktioniert.

Zu meinem Problem.
Ich habe mir gestern auf meinem Linux Server (Ubuntu) einen Teamspeak Server installiert
und wollt mir ein ganz einfaches start/stop script schreiben.

Habe also eine start.php in dem Ts Ordner (Der sich im www Ordner befindet) angelegt und folgendes rein geschrieben:

PHP:
<?php system('./teamspeak2-server_startscript start'); ?>

Rufe ich die Datei jetzt im Browser auf, sagt er, dass der Server gestartet wurde.
Was aber nicht so ist. Soweit ich weiß hat das was mit den Rechten zu tun, aber ich habe keine Ahnung wie ich das wo umstellen muss.
Hoffe ihr könnt mir helfen, ich weiß echt nicht mehr weiter und habt ein bisschen gedult mit mir, bin ja noch ein anfänger. :)
Sorry wenn das vlt doch zum PHP Forum gehört, ich weiß ja nicht wo der Fehler ist.

Gruß Gead
 
Zuletzt bearbeitet:
Hi,

wenn das Dein eigener Server ist, und kein Hosting-Server: warum startest Du TS nicht einfach in der Shell ? Aber Egal, in Deinem Script kannst Du noch versuchen, den TS mit einer Shell zu starten: "<? system("sh ./teamspeak2-server_startscript start"); ?> vorrausgesetzt, dass der TS korrekt konfiguriert wurde. Du kannst das auch ganz einfach testen, ob PHP das Script überhaupt ausführt, in dem Du mal ein einfaches Shell-Script an die Funktion System übergibst.

LG
Andy
 
Hallo
Ja es ist mein Server, ich hatte mir aus langeweile einen alten PC gekrallt und Ubuntu (Server Version) drauf installiert.
Der server ist nicht für die Öffentlichkeit gedacht sondern eher für Lans.
Gebe ich in die KIonsole
./teamspeak2-server_startscript start
startet der Teamspeak Server auch.
Der Grund weshalb ich denn Server oder die Server (sollen später noch andere dazu kommen)
über denn Browser starten bzw. stoppen will, ist einfach der das sich z.B mein Bruder nicht mit Linux auskennt.

Du kannst das auch ganz einfach testen, ob PHP das Script überhaupt ausführt

Das habe ich auch gemacht hab ganz einfach
PHP:
<?php system('ls'); ?>
ausgeführt. Und das funktioniert, er zeigt mir die Dateien im Ordner an.

Gebe ich aber
PHP:
<?php system('kill irgendnenummer'); ?>
geht es wieder nicht.

Soweit ich weiß hat es was mit den Rechten von Apache zutun.
Kann das sein ?
Ich würde jetzt gerne wissen, wie ich diese umstellen kann.
 
Hey Ho
Ich habs selber rausgefunden :)
und ärger mich drüber das ich nicht früher drauf gekommen bin.
Also ganz einfach, es lag wirklich daran das Apache also der User www-data zu wenig Rechte hatte.
Das habe ich ganz einfach gelöst.
Ich bin in die Datei sudoers die sich im Verzeichnis etc befindet und habe dort unter root
www-data ALL=(ALL) ALL
eingetragen und jetzt gehts.
Jetzt hat der User aber root Rechte und das geht ja nicht.
Wie kann ich denn jetzt den User www-data nur die Rechte geben um nur diesen Script zu starten ?

Nachtrag:
Hmm ich musste grade feststellen das es daran nicht gelegen hat dass es jetzt geht.
Auch wenn ich die Zeile wieder raus lösche geht es immer noch.
Kann mir vielleicht jemand sagen wo ich nach sehn kann welche Rechte ein User hat ?
 
Zuletzt bearbeitet:
Wirf mal einen Blick in /etc/groups und sieh nach, in welche(r/n) Gruppe(n) der User ist.
Grundsätzlich kannst Du das Startscript auch mit "chown www-user" belegen, dann darf apache das Script auch ausführen *denk*
 
Zurück