- Sticky Bit
-
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
Notation
In der symbolischen Notation wird das Sticky-Bit an dem letzten der neun Zeichen notiert. Das
x
wird dabei durcht
ersetzt. Ist das Execute-Recht für die Benutzerklasse Sonstige nicht gesetzt, was zur Folge hat, dass das neunte Zeichen ein-
ist, dann wird es durch ein groß geschriebenesT
an dieser Stelle ersetzt. Ausrwxrwxrwx
wird sorwxrwxrwt
, ausrwxr--r--
allerdingsrwxr--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 Wert1
addiert, wenn das Sticky-Bit gesetzt ist. Aus0755
wird so1755
, aus4744
wird5744
.Wirkung
Bei ausführbaren Dateien
In seiner ursprünglichen Bedeutung wurde das Sticky-Bit bei ausführbaren Dateien, also 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, beispielsweise Editoren.
Diese Funktion ist als historisch zu betrachten, sie ist auf modernen Unix-Derivaten in der historischen Form nicht mehr implementiert. So wurde z.B. mit Einführung von SunOS-4.0 1988 das Sticky Bit verwendet, um auf einem NFS-Server zu verhindern, dass geschriebene Dateiinhalte gecached werden. Damit wurde ein Performance-Problem bei Verwendung von NFS-basierten Auslagerungsdateien behoben.
Bei Verzeichnissen
Das Sticky-Bit ermöglicht das Anlegen von gemeinsam genutzten Verzeichnissen.
Hat ein Verzeichnis beispielsweise für alle Benutzer alle Dateirechte gesetzt (
777
bzw.rwxrwxrwx
), dann kann jeder Benutzer in diesem Verzeichnis Dateien (und Unterverzeichnisse) anlegen, aber auch jede Datei darin löschen. Durch Setzen des Sticky-Bits wird der Zugriff auf die Dateien in diesem Verzeichnis eingeschränkt, so dass nur noch der Eigentümer einer Datei (oder der Eigentümer des Verzeichnisses) diese Datei löschen oder umbenennen darf. Die Rechte zum Lesen und Schreiben der Dateien bleiben davon unberührt. Verwendung findet das Sticky-Bit zum Beispiel bei/tmp
.Siehe auch
- Unix-Dateirechte
- Weitere erweiterte Dateirechte: Setgid-Bit, Setuid-Bit
Kategorien:- Dateiverwaltung
- Unix
Wikimedia Foundation.