[cologne-pm] chmod Problem

Veit Wahlich veit at ruhr.pm.org
Do Apr 7 03:43:37 PDT 2011


Hallo Karl-Heinz,

ich habe zwar keine Ahnung von Windows, aber ich sehe hier ein
Missverstaendnis, das geklaert sein sollte:

Am Donnerstag, den 07.04.2011, 10:49 +0200 schrieb Karl-Heinz Kuth:
> Es gibt 2 Dateien für die ich die Berechtigung setzen will.
> Die Dateien stehen in einem TEMP Verzeichnis und sollen, von allen Users 
> gelöscht werden können. Die 1. Datei soll auch noch auführbar sein, Die 
> Zeilen des Perlskriptes sehen wie folgt aus:
> 
>      my $berechtigung_skript = 0766;
>      chmod $berechtigung_skript, $tmp_skript;
> 
>      my $berechtigung_text = 0666;
>      chmod $berechtigung_tesxt, $tmp_text;
> 
> Unter Ubuntu Perl 5.10 läuft auch alles wunderbar.

Ob eine Datei von einem Benutzer geloescht werden kann, ist unter Linux
nicht abhaengig von den Berechtigungen des Benutzers an der Datei,
sondern von den Berechtigungen des Benutzers an dem Verzeichnis, in dem
die Datei liegt.

Hat der Benutzer Schreibrechte an dem Verzeichnis, kann er Dateien
daraus loeschen, auch wenn ihm diese nicht gehoeren. Er muss sie noch
nicht einmal lesen koennen.

Eine typische Ausnahme speziell fuer temporaere Verzeichnisse besteht im
Sticky-Bit fuer others:
Hat ein Benutzer, der ueber "andere Benutze" Schreibrechte an einem
Verzeichnis hat, auf das das Sticky-Bit fuer others gesetzt ist
(Permissions fuer das Verzeichnis ueblicherweise "drwxrwxrwt", das t
statt x fuer others markiert hier das Sticky-Bit), so kann er (ohne der
Besitzer oder in der Gruppe des Verzeichnisses zu sein) Dateien nur dann
loeschen, wenn sie ihm selbst gehoeren.

Mit xattr und acls lassen sich hier natuerlich noch wesentlich
komplexere Schweinereien anstellen.

Das (sowie die Vererbung von Rechten vom Verzeichnis) ist wohl der
Hauptunterschied in der Dateisystemrechteverwaltung von Unices und
Windows.

Grusz,
// Veit
-- 
Ruhr.pm
Perl Mongers im Ruhrgebiet
http://ruhr.pm.org/




Mehr Informationen über die Mailingliste cologne-pm