[linux-l] ...Imernoch die (mittlerweile) nervt?tende Dateirechte.

Olaf Radicke olaf_rad at gmx.de
Mi Jul 2 11:08:23 CEST 2003


Am Mit, 2003-07-02 um 01.00 schrieb Ihno Krumreich:
> Hi Olaf,
> On Tue, Jul 01, 2003 at 11:25:34AM +0200, Olaf Radicke wrote:
[...] 
> > Offensichtlich ist hat das Prog immer noch nicht root Rechte.
> 
> Das ist nicht der Grund. Es fehlt die search-permission.
> 
> Bei dem Verzeichnis /var/freepriority ist das x-bit fuer den User nicht
> gesetzt. Damit scheitert jeder Zugriff als Nutzer freepriority wenn
> der komplette Pfad (/var/freepriority/FreePriority) angegeben wird.

Klappt immer noch nicht. Merkwürdigerweisse reagiert das Prog
bei jedem User unterschiedlich. Aber wirklich wundern tut mich
das eigentlich nicht, bei dem Wirrwarr an Datei-, Verzeichnis-,
User, Gruppen-, Ausführungs - Rächten.  

Ich denke ich muss das wirklich Programmintern lösen.
Da das Prog Dateien  anlegen und löschen kann, will
ich es nicht als Root laufen lassen.  

> Noch ein Tip zu den hier angegebenen chmod-Befehlen. Ich bin
> ueberhaupt kein Freund von der oktalen Angabe von Zugriffrechten,
> da meistens mehr gemacht wird als man will. Der obige Befehl
> chmod -R 660 setzt die Schreibberechtigung, koescht aber bei
> einem Verzeichnis die search-permission. Wenn ich es richtig
> verstanden habe soll die Schreibberechtigung gesetzt werden.
> Das geht auch mit chmod -R og+rw und damit werden andere
> Rechte nicht veraendert.

Der Befehl zeigt bei mir keine Wirkung. Weder Fehlermeldung
noch sonst was.
  
> > Innerhalb des (erw?hnten) Progs werden Datein angelegt vom
> > User. Z.T. mir "echo > neuedatei.xml". Diese haben dann den
> > Mudus rwx--x--x. Was verhindert, das andere User der Gruppe,
> > diese Dateien modivizieren k?nnen. Deshalb muss bei jedem 
> > Prog- Start erstmal das ganze Verzeichnis mit "chmod -R 660" ?ber
> > geb?gelt werden.
> 
> Um zu verhindern, das die Dateien mit den falschen berechtigungen
> angelegt werden muss man die umask setzen. Normale Dateien 
> werden mit 0666 angelegt. Dann werden die Bits geloscht, die in der
> umask angegeben sind (Im normalfall 0022, d.h. Schreibberechtigung
> fuer gruppe und Welt wird geloescht.)
> 
> Setzen kann man die umask in der shell mit
> 
> umask 0011
> 
> oder in einem C-Programm mit
> 
> umask(0011);

O.K. Das klingt schon wesentlich interessanter. Ich habe mir
mit sauer zu hause ersessenen Arbeitslosengeld "Linux/Unix-
Systemprogrammierung" von H. Herold gekauft. Das Kapitel
zu umask habe ich mir drei mal durchgelesen und so wie
ich es (bisher) verstanden habe, kann man damit nur sagen
was beim Anlegen einer Datei NICHT gesetzt werden darf und
nicht was gesetzt werden muss.

Olaf 

-- 
------======######HHHHHHHHHHHHHHHHH######======------ 
Free Software zeigt das Anarchie funktionieren kann!
Ich finde es ist jetzt an der Zeit es mit "Freigeld" 
                    zu versuchen.
------======######HHHHHHHHHHHHHHHHH######======------





Mehr Informationen über die Mailingliste linux-l