Rechteverwaltung unter Linux
Inhaltsverzeichnis
Rechte im Dateisystem
Bedeutung von rwx
- Bei Dateien:
r
Inhalt der Datei lesen (read)w
Inhalt der Datei verändern (write)x
Ausführen der Datei als Programm (eXecute)
- Bei Verzeichnissen:
r
Dateinamen lesen (read). Dieses Recht genügt aber nicht um auf die Dateien zuzugreifen.w
Dateien im Verzeichnis anlegen und löschen (write)x
Zugreifen auf die Dateien (eXecute)
Ändern der RWX-Rechte für eine Datei oder ein Verzeichnis
Mit dem chmod
-Befehl kann man die RWX-Rechte einer Datei oder eines Verzeichnisses ändern.
chmod WerHinOderWegWas Datei chmod WerHinOderWegWas Verzeichnis
Bedeutung der Abschnitte:
Wer
: Dies beschreibt, für wen die Änderung vorgenommen werden soll. Zur Auswahl stehen:u
: User, der Benutzer dem die Datei gehört.g
: Group, die Gruppen die bei der Datei eingetragen ist.o
: Other, alle Anderen, die nicht der Benutzer sind und nicht zur Gruppe gehören.
HinOderWeg
: Hier entscheiden wir, ob wir ein Recht hinzufügen, entfernen oder so festlegen wollen, wie angegeben.+
: Hinzufügen eines oder mehrer Rechte.-
: Entfernen eines oder mehrer Rechte.=
: Rechte so festlegen, wie angegeben.
Was
: Welches Recht soll eingestellt werden.r
: Readw
: Writex
: eXecute (siehe oben)
Beispiele:
Allen anderen sollen alle Rechte auf das Zeitungsverzeichnis entzogen werden:
chmod o-rwx Zeitung
Der Benutzer will eine Programmskript ausführbar machen
chmod u+x Programmskript
Für die Gruppe sollen nur r
- und w
-Rechte gelten. Sonst nichts:
chmod g=rw Datei
Ändern von Rechten mit chmod
und Zahlencodes
Linux-Admins sparen gerne Tipparbeit und schreiben die Rechte für eine Datei oder ein Verzeichnis gerne als Zahlencode. Die erste Ziffer steht für den Eigentümer, die zweite Ziffer für die Gruppe und die dritte Ziffer für alle anderen.
Die Rechte haben Zahlenwerte, die man einfach zusammenzählt:
r
= 4w
= 2x
= 1
Um ein Recht festzulegen werden die Zahlenwerte einfach zusammengezählt:
---
= 0--x
= 1-w-
= 2-wx
= 3r--
= 4r-x
= 5rw-
= 6rwx
= 7
Beim chmod
-Befehl gibt man die Rechte für Eigentümer, Gruppe und Andere als dreistelligen Zahlencode an.
Beispiel:
chmod 754 eineDatei
eineDatei
erhält die Rechte rwx
für den Eigentümer, r-x
für die Gruppe und r--
für alle anderen.
Ändern des Eigentümers einer Datei oder eines Verzeichnisses
Mit dem Befehl chown
(change owner) kann man den Eintümer ändern, zu der eine Datei oder ein Verzeichnis gehören.
chown NeuerEigentümer Datei chown NeuerEigentümer Verzeichnis
Mit chown
kann man auch Eigentümer und Gruppe gleichzeitig ändern:
chown NeuerEigentümer: NeueGruppe Datei chown NeuerEigentümer:NeueGruppe Verzeichnis
Ändern der Gruppe einer Datei oder eines Verzeichnisses
Mit dem Befehl chgrp
(change group) kann man die Gruppe ändern, zu der eine Datei oder ein Verzeichnis gehören.
chgrp NeueGruppe Datei chgrp NeueGruppe Verzeichnis
Spezielle Rechte auf Verzeichnissen
Sticky Bit
Das Sticky Bit sorgt dafür, dass in einem Verzeichnis Dateien nur von dem Benutzer gelöscht werden könnnen, der die Datei auch angelegt hat (Eigentümer der Datei).
Das Sticky Bit setzt man auf ein Verzeichnis mit folgendem Befehl:
chmod +t Verzeichnis
Eselsbrücke: Merke Dir einfach das Wort "sTicky" mit großem "T".
SUID und SGID
Diese Bits werden auf Programmen gesetzt:
- Wenn das SUID-Bit gesetzt ist, läuft das Programm mit den Rechten vom Eigentümer der Programmdatei.
- Wenn das SGID-Bit gesetzt ist, läuft das Programm mit den Rechten von der Gruppe zu der die Programmdatei gehört.
Setzen des SUID-Bits:
chmod u+s Programmdatei
Setzen des SGID-Bits:
chmod g+s Programmdatei