PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Apache Perl und die Bash



zebby
02-11-2004, 23:08
Hallo,

habe einen neuen Server mit der Redhat Distribution aufgesetzt.
Jetzt habe ich folgendes Problem:

Perl Scripte die Bash Befehle wie `chmod 755 dir` benutzen laufen nicht.
(permisssion denied)
Ich habe dem apache (UnixUser) mal eine Bash zugewiesen, hat aber nichts geholfen :cool: Hab jetzt überhaupt keinen Ansatzpunkt mehr wie ich
erreichen kann, dass ich innerhalb von Perlscripten auch Bashbefehle absetzen kann.

Gruß Zebby

nul
03-11-2004, 16:25
1. Welche berechtigungen haben deine Dateien, die du ändern willst?
2. Mit welcher berechtigung läuft dein Programm/hat dein Benutzer?

mit 'ls -l' kannst du dir die Gruppe und den Besitzer der Dateien anzeigen lassen.
Falls dein Benutzer nicht in der gewünschten Gruppe aufgelistet ist hilft ein 'adduser Benutzername Gruppe'.

zebby
03-11-2004, 16:37
Hallo,

genau das ist das Problem :o

Wie muss ich denn die Rechte vergeben oder wo gibt es eine Anleitung dafür?
Ich habs bis jetzt nur nach eigenem Gutdünken mit den Verzeichnis und Dateirechten versucht.

Bekomme aber keine Lösung für folgende Fragen hin:

Wer muss Eigentümer von /www (Server Root) sein?
Als wen und wie lasse ich den ftp User dazu laufen?

Und das dann so dass ich die Posix Kommandos von Perl
über einen *.cgi Aufruf des Browser nutzen kann.

Schön wäre es auch wenn die Cgis - irgendwie durch die Rechteaufteilung -
gleich ohne chmod mit 740 laufen würden - so ist es beim meinem Provider domainfactory eingerichtet. Hab schon überlegt da mal an die Technik zu schreiben - befürchte aber fast das es ein Betriebsgeheimnis ist.
So komfortabel habe ich es bei noch keinem anderen Provider gesehen.


Danke

Zebby

baere
08-11-2004, 14:07
Mit (fast) jedem FTP-Programm kannst Du die Rechte der CGI-Skripte auf 755 ändern. Dann sollte auch das skript laufen.

Um es mit anderen Berechtigungen (wie 740) laufen zu lassen, musst Du suExec einrichten, damit es nicht unter dem normalen Webserver-Benutzer (meist wwwrun oder nobody) sondern als root läuft.

Noch was: Es gibt ein Perl-eigenes chmod (siehe perldoc -f chmod)!