Was ist Setgid-Sticky bit?

german

#1

Hallo Leute,

was ist denn eigentlich Setgid? oder Sticky bit?

Ich habe vom alten Server Daten übernommen. Wie passe ich denn nun die Rechte an? Ich kann ständig eine Datei nicht löschen oder verändern.


#2

Die bedeutung und Funktionsweise besonderer Bits der Berechtigungen sind in der man-page zu chmod(1) erläutert. Zitat:

[quote]RESTRICTED DELETION FLAG OR STICKY BIT
The restricted deletion flag or sticky bit is a single bit,
whose interpretation depends on the file type. For
directories, it prevents unprivileged users from removing or
renaming a file in the directory unless they own the file or
the directory; this is called the restricted deletion flag for
the directory, and is commonly found on world-writable
directories like /tmp. For regular files on some older
systems, the bit saves the program’s text image on the swap
device so it will load more quickly when run; this is called
the sticky bit.[/quote]

Die beiden Bits »set-user-ID« und »set-group-ID« sind hier nicht explizit erläutert. Sie tun Folgendes: Wenn eine ausführbare Datei ausgeführt wird, so wird sie normalerweise initial mit der User- und Gruppen-ID des ausführenden Prozesses gestartet. Ist das »set-group-ID«-Bit auf der Datei gesetzt, so wird sie statt dessen mit der ID derjenigen Gruppe gestartet, der die Datei gehört. Analoges gilt für das »set-user-ID«-Bit.

Wenn Sie eine Datei nicht löschen können, kann das verschiedene Ursachen haben:

[ul][li]Ihr aktueller User hat keine Schreibrechte auf das Verzeichnis, in der die Datei liegt.[/li]
[li]Das Verzeichnis, in dem die Datei liegt, hat das »restricted deletion flag« (oftmals fälschlicherweise »sticky bit« genannt) gesetzt, und die Datei gehört nicht Ihrem aktuellen Benutzer.[/li]
[li]Das Dateisystem ist read-only eingebunden.[/li]
[li]Sie sind zwar root, befinden sich aber auf einem Dateisystem, das mit »root_squash« exportiert wurde, und sind damit de facto der Linux-User »nobody«, was Dateisystemzugriffe betrifft.[/li][/ul]

Sinnvolle Informationen zum Debuggen sind die Ausgaben von »id« sowie »getfacl .« und »getfacl zu-loschende-datei.txt«.