# Rechte Hilfe



## Gead (18. März 2007)

*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  
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 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


----------



## andy72 (18. März 2007)

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


----------



## Gead (19. März 2007)

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 system('ls'); ?>
```
ausgeführt. Und das funktioniert, er zeigt mir die Dateien im Ordner an.

Gebe ich aber    

```
<?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.


----------



## Gead (19. März 2007)

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 ?


----------



## GiFt-ZwErG (19. März 2007)

Gib dem User die gleichen Rechte wie dem Webserver


----------



## Gead (19. März 2007)

Und wie mache ich das ?


----------



## andy72 (20. März 2007)

Wirf mal einen Blick in /etc/groups und sieh nach, in welche(r/n) Gruppe der User ist.
Grundsätzlich kannst Du das Startscript auch mit "chown www-user" belegen, dann darf apache das Script auch ausführen *denk*


----------



## Anime-Otaku (2. April 2007)

Du kannst auch eine Shell in den Browser integrieren....ajaxterm benutze ich da.


----------

