Wie lege ich Dateirechte mit Perl unter Linux fest

Hi Leuts,

hab ein nettes Skript mit dem man unter anderem Dateien erstellt. eigendlich kein Problem. Die Datei hat dann die Rechte -rw-r–r--.
Wie kann ich von vornherein sagen, das diese Datei zB die Rechte -rwxrwxrwx hat. Ich will nicht unbedingt ein Skript auf meinem Server laufen lassen, das alle paar sec ein chmod 777 * -R ausführt.

cu Desian

Tag auch,

hab ein nettes Skript mit dem man unter anderem Dateien
erstellt. eigendlich kein Problem. Die Datei hat dann die
Rechte -rw-r–r--.
Wie kann ich von vornherein sagen, das diese Datei zB die
Rechte -rwxrwxrwx hat. Ich will nicht unbedingt ein Skript auf
meinem Server laufen lassen, das alle paar sec ein chmod 777 *
-R ausführt.

Die Standardzugriffsrechte werden unter Linux/Unix
mit dem Befehl „umask“ gesetzt. Auf meinem Server
liefert:

user@host: umask -S
u=rwx,g=,o= 
user@host: umask a=rwx
user@host: umask -S
u=rwx,g=rwx,o=rwx 

Letzteres stellt dann ein riesiges
Sicherheitsloch dar, da Du nun der Welt
den dem „user“ gehörenden Teil der Festplatte
zum Schreiben freigegeben hast. Das ist
dann die Kamikaze-Methode :wink:

Wenn schon Schreibrecht über ein CGI-Skript
sein muss, dann lege für den Nutzer (z.B.
nobody), unter dem das CGI-Skript läuft,
ein spezielles Verzeichnis an, mit einer
Datei die ihm gehört (mit chown). Lass dabei
deine umask unangestastet, denn die
Voreistellung „-rw-r–r--“ erlaubt dem
Dateieigentümer das Schreiben in Dateien.

Gruss,
-Andreas.