Dies ist eine alte Version des Dokuments!
Das »t-Recht«, auch »Sticky Bit« oder »Save Text Bit« genannt, wirkt sich auf Verzeichnisse und Dateien unterschiedlich aus.
Verwendung findet das »Sticky Bit« uA bei Verzeichnissen, um User daran zu hindern darin fremde Dateien oder Verzeichnisse zu löschen oder umzubenennen, obwohl sie diese ggf lesen, ausführen oder editieren dürfen. Um lesen, schreiben und ausführen zu dürfen, benötigt man die UNIX Berechtigung »rwx«, was letztlich auch zur Folge hat, dass ein Benutzer, welcher diese Rechte besitzt, die Datei auch löschen darf. Nicht so, wenn auf dem Parent Directory (dem Verzeichnis in dem sich die Dateien oder Verzeichnisse, welche es zu schützen gilt, befinden) das »Sticky Bit« gesetzt ist. Man erkennt das daran, dass an der letzten Stelle der UNIX Berechtigungen der Buchstabe »t« steht; BSP: drwxrwxrwt
. Löschen darf in solch einen Verzeichnis ausschließlich nur der Eigentümer der Datei oder des Verzeichnisses und der Super-User root.
Ein Beispiel dafür ist uA das »/tmp« Verzeichnis:
$ ls -la /tmp total 32 drwxrwxrwt 16 root wheel 544 14 Okt 19:16 . drwxr-xr-x@ 6 root wheel 204 14 Aug 2009 ..
Man erkennt, dass das Verzeichnis dem User root gehört und dass das Sticky Bit mit ansonsten vollem Zugriff für jeden als Berechtigung vorliegt. Wenn jetzt root eine ausführbare Datei in »/tmp« anlegt, schaut das folgendermaßen im »/tmp« Verzeichnis aus:
$ ls -la /tmp total 32 drwxrwxrwt 16 root wheel 544 14 Okt 19:16 . drwxr-xr-x@ 6 root wheel 204 14 Aug 2009 .. -rwxrwxrwx 1 root staff 59 14 Okt 19:16 echo.sh
Anhand der Datei Berechtigungen würde man daraus schließen, dass »Jeder« wirklich alles mit der Datei anstellen kann; auch löschen. Aber dem ist nicht so, wie folgende Befehle verdeutlichen sollen:
Ich selber bin natürlich nicht root, gehöre aber auch zur Gruppe »staff«, was mir aber nix nutzen wird:
$ whoami pronto $ groups pronto staff admin everyone