Linux Datei Rechte

2018-08-18 von Mario

Unter Linux, genau wie unter Windows, können je Datei oder Ordner Rechte vergeben werden. Die vergebenen Rechte beeinflussen den Zugriff auf die entsprechenden Dateien und Verzeichnisse.

Mit dem Befehl “ls -l” kann man sich die Rechte anzeigen lassen:

ls -l file.sh

Folgende Ausgabe erscheint auf der Konsole:

-rwxrw-r-- 1 owner group 42 Aug 11 13:37 file.sh

 

Beschreibung

Position 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Ausgabe r w x r w r 42 owner group Aug 11 13:37 file.sh
Beschreibung Typ Eigentümer Gruppe Sonstiges Größe (KB) Eigentümer Gruppe Änderungszeit Dateiname

 

Dateisystem Typen

Die Position “1” zeigt an, um welchen Typen es sich handelt.

Typ Bezeichnung Beschreibung
d Directory Dieser Buchstabe steht für ein Verzeichnis/Ordner.
File Der Bindestrich steht für eine Datei.
l Symbolic link Bei einem Link handelt es sich um Verknüpfung zu einer Datei oder einem Verzeichnis.
c Character Device Dies ist eine zeichenorientierte Gerätedatei, welche unter /dev zu finden ist.
b Block Device Dies ist eine blockorientierte Gerätedatei, welche unter /dev zu finden ist.
s Socket Dies ist ein sog. Unix Domain Socket, wird für die Interprozess-Kommunikation verwendet.
p Pipe Alles was ein Programm in die Pipe schreibt, kann von einem anderen Programm ausgelesen werden.

 

Attribute

Die Positionen “2” bis “10” zeigen an, welche Rechte auf dem Ordner oder der Datei vergeben sind. Dabei wird zwischen folgenden Rechten unterschieden:

Zeichen Beschreibung
Eigentümer User welchem die Datei gehört
Gruppe User die Mitglied in dieser Gruppe sind
Sonstiges Alle anderen User

 

Die folgende Tabelle erläutert die Bedeutung der einzelnen Buchstaben:

Zeichen Bedeutung Beschreibung
r read Erlaubt den lesenden Zugriff
w write Erlaubt schreibenden Zugriff
x execute Erlaubt das Ausführen einer Datei

 

Sonderrechte

Statt dem “x” besteht die Möglichkeit, zusätzliche Rechte zu vergeben.

Zeichen Beschreibung
t Wird das “Sticky-Bit” auf einem Verzeichnis angewendet, so dürfen die darin erstellten Dateien oder Verzeichnisse nur vom Dateibesitzer gelöscht oder umbenannt werden.
s Das “SUID-Bit” Recht („Set User ID“) schränkt das Ausführungsrecht eines Programms dahingehend ein, dass das Programm mit den Rechten des Dateibesitzers ausgeführt wird (Position 4).
Das “SGID-Bit” Recht („Set Group ID“) schränkt das Ausführungsrecht eines Programms dahingehend ein, dass das Programm mit den Rechten der Dateigruppe läuft (Position 7).
Zusätzlich wird bei einem Ordner die Gruppe an alle Unterordner und Dateien vererbt, die in diesem Ordner neu erstellt werden.

 

Rechte vergeben

Die Rechte auf ein Verzeichnis oder für eine Datei können mit dem Befehl “chmod” vergeben werden.

Symbol Rechte Oktal Binär
rwx Lesen Schreiben Ausführen 7 111
rw- Lesen Schreiben 6 110
r-x Ausführen 5 101
r– Lesen 4 100
-wx Schreiben Ausführen 3 011
-w- Schreiben 2 010
–x Ausführen 1 001
0 000

 

Um die identischen Rechte wie in unserem Beispiel zu vergeben, lautet der Befehl:

chmod 0764 file.sh

Die führende Null kann dabei entfallen (0764  = 764) und führt zum identischen Ergebnis.

Position 1 2 3 4 5 6 7 8 9 10
Recht r w x r w r
Wert in Oktal 7 6 4

 

Für die Vergabe der Sonderrechte wird die erste Stelle verwendet und die führende Null entsprechend belegt.

Recht Wert Auswirkung auf Dateien Auswirkung auf Ordner
SUID-Bit 4 Benutzer führt Datei mit Berechtigungen des Dateieigentümers aus
SGID-Bit 2 Benutzer führt Datei mit Berechtigungen des Gruppeneigentümers aus Im Verzeichnis erstellte Datei erhält denselben Gruppeneigentümer
Sticky-Bit 1 Benutzer können keine Dateien von anderen Benutzern löschen

 

Eine Kombination der Sonderrechte wird durch Addition der Werte erreicht.

Kategorie: IT Schlagwörter: