Zugriffsrechte unter Unix


Dateien

Für folgende drei Dateitypen bietet sich das Setzen der Rechte wie folgt an (ausgefüllte Felder bedeuten, dass dieses Bit gesetzt ist):

  user group others
read Programm
Textdatei
Standard
Programm
Textdatei
Standard
Programm
Textdatei
Standard
write Programm
Textdatei
Standard
   
execute Programm Programm Programm

entspricht:

Verzeichnisse

Im Grunde analog zu Dateien, die Bits haben nur eine andere Bedeutung:

DateirechtVerzeichnisrecht
readDateinamen anzeigen
writeDateien anlegen und löschen
executeDateien bearbeiten, sofern die Dateirechte das zulassen

Aus den leicht veränderten Bedeutungen der Rechtebits ergibt sich die Notwendigkeit, dass das Home-Verzeichnis eine Berechtigung von rwxr-xr-x haben sollte, damit Anwendungsprogramme Dateien und Verzeichnisse anlegen, löschen sowie ändern können. Im Zweifelsfall einfach die Rechte mit ll -d ~ überprüfen und gegebenenfalls mit chmod 755 ~ entsprechend setzen (siehe auch weiter unten).

Rechte setzen/ändern

Befehlbewirkt
chmod u=rw,go=r x.txt setzt bei der Datei x.txt user auf rw, group und others auf r
chmod u-w public entfernt w von public für user
chmod u+w public setzt public wieder auf w für user
chmod og= x.txt entfernt alle Rechte von x.txt für others und group
chmod a+x dosth.pl setzt dosth.pl auf x für alle
chmod og-r `find -mtime -3` entfernt r von allen Dateien, die innerhalb der letzen drei Tage geändert wurden für others und group

Neben dieser anschaulichen Variante kann chmod auch die Rechte als Oktalziffern-Triplet übergeben:
r hat den Wert 4, w entspricht 2 und x ist 1. Diese Zahlen werden für jede Benutzergruppe (user, group oder others) entsprechend ihrer Berechtigung addiert:
Aus rwxrw-r-x wird 7 (r+w+x = 4+2+1), 6 (r+w = 4+2), 5 (r+x = 4+1), also 765.