Sticky Bit
aus Wikipedia, der freien Enzyklopädie
Das Sticky Bit (auch t-Bit oder Save Text Bit) ist ein erweitertes Dateirecht, d.h. ein Dateiattribut unter Unix. Es wirkt sich auf Verzeichnisse und Dateien unterschiedlich aus.
Inhaltsverzeichnis |
[Bearbeiten] Notation
In der symbolischen Notation wird das Sticky-Bit an dem letzten der neun Zeichen notiert. Das x
wird dabei durch t
ersetzt. Ist das Execute-Recht für die Benutzerklasse Sonstige nicht gesetzt, was zur Folge hat, dass das neunte Zeichen ein -
ist, dann wird das ein großgeschriebenes T
an diese Stelle gesetzt. Aus rwxrwxrwx
wird so rwxrwxrwt
, aus rwxr--r--
allerdings rwxr--r-T
.
In der Oktalnotation wird das Sticky-Bit wie alle drei erweiterten Dateirechte in eine Oktalziffer vor den drei Dateirechtoktalziffern notiert. Der dort stehenden Ziffer (die bei keinem gesetzten erweiterten Dateirecht 0
ist) wird der Wert 1
hinzuaddiert, wenn das Sticky-Bit gesetzt ist. Aus 0755
wird so 1775
, aus 4744
wird 5744
.
[Bearbeiten] Wirkung
[Bearbeiten] Bei ausführbaren Dateien
In seiner ursprünglichen Bedeutung wurde das Sticky-Bit bei ausführbaren Dateien, d. h. Programmen mit Ausführ-Dateirechten, angewendet. Es bewirkte, dass das Programm nach Beendigung des dazugehörigen Prozesses nicht aus dem Arbeitsspeicher entfernt und somit bei einem erneuten Aufruf des Programms nicht noch einmal vom Sekundärspeicher (z. B. Festplatte) in den Primärspeicher (Arbeitsspeicher) geladen und neu reloziert werden musste. Dies führte zu Geschwindigkeitsvorteilen bei großen Programmen, die häufig genutzt werden, z.B. Editoren.
Diese Funktion ist als historisch zu betrachten, da sie auf modernen Unix-Derivaten meist nicht mehr implementiert ist.
[Bearbeiten] Bei Verzeichnissen
Das Sticky-Bit ermöglicht das Anlegen von gemeinsam genutzten Verzeichnissen.
Hat ein Verzeichnis beispielsweise für alle Benutzerklassen alle Dateirechte gesetzt (777
/rwxrwxrwx
), dann kann jeder Benutzer in dieses Verzeichnis schreiben, aber auch jede Datei darin löschen. Durch Setzen des Sticky-Bits wird es (zusätzlich zum Eigentümer des Verzeichnisses und dem Superuser) nur dem Eigentümer einer Datei erlaubt, diese zu bearbeiten oder zu löschen.
[Bearbeiten] Siehe auch
- Unix-Dateirechte
- Weitere erweiterte Dateirechte: Setgid-Bit, Setuid-Bit