chmod (change mode) ist ein Linux-Befehl, mit dem man die Zugriffsrechte (Berechtigungen) von Dateien und Verzeichnissen ändert – also wer eine Datei lesen, schreiben oder ausführen darf.
Die drei Rechte-Typen:
r (read) – Lesen: Wert 4
w (write) – Schreiben: Wert 2
x (execute) – Ausführen: Wert 1
Die drei Benutzergruppen, für die Rechte getrennt vergeben werden:
u (user/owner) – der Eigentümer der Datei
g (group) – die zugeordnete Gruppe
o (others) – alle anderen Benutzer
Zwei Schreibweisen für chmod:
Symbolische Schreibweise:
chmod u+x datei.sh
Fügt dem Eigentümer das Ausführrecht hinzu. + fügt hinzu, - entzieht, = setzt exakt.
Oktale (numerische) Schreibweise:
chmod 754 datei.sh
Jede Ziffer steht für eine Gruppe (u, g, o) und ist die Summe der Rechte-Werte:
7 = 4+2+1 = rwx (Eigentümer: lesen, schreiben, ausführen)
5 = 4+1 = r-x (Gruppe: lesen, ausführen)
4 = 4 = r-- (Andere: nur lesen)
Mit ls -l kann man sich die aktuellen Rechte anzeigen lassen, z. B. -rwxr-xr--.