Linux-Dateiberechtigungen bestimmen, wer Dateien lesen, ändern oder ausführen darf. Wer sie versteht, schützt System und Daten besser - besonders in Mehrbenutzerumgebungen. Hier lernst du die Bedeutung von r/w/x, das Lesen von ls -l sowie das Ändern von Rechten und Besitzern mit chmod, chown und chgrp.

Linux ist als leistungsstarkes und zuverlässiges Betriebssystem bekannt, das hohe Sicherheit, Stabilität und Flexibilität bietet. Um die Integrität des Systems zu gewährleisten, nutzt Linux „Berechtigungen“. Diese steuern, wer Dateien und Verzeichnisse lesen, verändern oder ausführen darf. Egal ob Einsteiger oder erfahrene Nutzer: Ein solides Verständnis der Linux-Berechtigungen ist zentral, um Dateien und Verzeichnisse sinnvoll abzusichern.

Linux-Berechtigungen verstehen

Unter Linux hat jede Datei und jedes Verzeichnis einen Berechtigungssatz für drei Ebenen von Systembenutzern:

  • Benutzer (Owner): Eigentümer der Datei/des Verzeichnisses - meist der Ersteller.
  • Gruppe: Eine Sammlung von Benutzern, die gemeinsame Rechte erhalten können.
  • Andere: Alle übrigen Benutzer, die weder Owner noch in der Gruppe sind.

Für jede dieser Ebenen gibt es drei Arten von Berechtigungen:

  • Lesen (r): Inhalt anzeigen. Bei Dateien: lesen/kopieren. Bei Verzeichnissen: Dateinamen im Verzeichnis auflisten und Inhalte (je nach weiteren Rechten) lesen/kopieren.
  • Schreiben (w): Inhalt ändern. Bei Verzeichnissen u. a. Dateien anlegen, entfernen oder umbenennen (abhängig von Kombinationen der Rechte).
  • Ausführen (x): Datei ausführen bzw. ein Verzeichnis „betreten“/darauf zugreifen.
  • Bindestrich (-): Keine Berechtigung gesetzt.

So zeigst du Dateiberechtigungen unter Linux an

Um die Rechte von Dateien und Verzeichnissen im aktuellen Ordner anzuzeigen, nutze:

ls -l

Die Ausgabe enthält mehrere Spalten. Wichtig sind insbesondere:

  • Erstes Zeichen: Dateityp (z. B. - für Datei, d für Verzeichnis).
  • Nächste neun Zeichen: Der Berechtigungssatz (je 3 Zeichen für Owner, Gruppe, Andere).
  • Weitere Spalten: Link-Anzahl, Owner, Gruppe, Größe, Änderungszeit, Name.

Beispiel-Berechtigungssatz: rwxr-xr--

  • rwx: Owner darf lesen, schreiben, ausführen.
  • r-x: Gruppe darf lesen und ausführen, aber nicht schreiben.
  • r--: Andere dürfen nur lesen.

Merkschema: erste 3 = Owner, zweite 3 = Gruppe, letzte 3 = Andere.

So änderst du Dateiberechtigungen unter Linux (chmod)

Zum Ändern von Berechtigungen wird chmod („change mode“) verwendet. Grundsyntax:

chmod   

Häufige Optionen:

OptionBeschreibung
-vZeigt eine Diagnosemeldung für jede verarbeitete Datei an.
-cWie -v, aber nur wenn tatsächlich Änderungen vorgenommen wurden.
-fUnterdrückt die meisten Fehlermeldungen.
-RÄndert rekursiv Dateien und Verzeichnisse.

Es gibt zwei gängige Methoden, Berechtigungen anzugeben:

  • Absoluter Modus (Oktalzahlen)
  • Symbolischer Modus (Buchstaben)

Absoluter Modus in chmod (Oktal)

Hier werden die Rechte als drei Ziffern (0-7) angegeben: erste Ziffer = Owner, zweite = Gruppe, dritte = Andere.

chmod   
BerechtigungWert
Keine0
Ausführen1
Schreiben2
Schreiben + Ausführen3 (2+1)
Lesen4
Lesen + Ausführen5 (4+1)
Lesen + Schreiben6 (4+2)
Lesen + Schreiben + Ausführen7 (4+2+1)

Beispiele:

  • Alle dürfen alles (lesen/schreiben/ausführen):
chmod -v 777 test.txt
  • Owner nur lesen; Gruppe und Andere keine Rechte:
chmod -v 400 test.txt

Symbolischer Modus in chmod

Der symbolische Modus ist oft praktischer, weil du gezielt nur bestimmte Teile ändern kannst (z. B. nur für die Gruppe), ohne den kompletten Satz neu anzugeben.

chmod   

Bausteine:

  • Benutzertyp: u (Owner), g (Gruppe), o (Andere), a oder ugo (alle)
  • Symbol: + (hinzufügen), - (entfernen), = (exakt setzen)
  • Rechte: r, w, x (kombinierbar)

Beispiele:

  • Ausführungsrecht für die Gruppe hinzufügen:
chmod -v g+x test.txt
  • Anderen das Ausführen entziehen und dem Owner volle Rechte geben:
chmod o-x,u+rwx test.txt

Besitzer und Gruppe ändern (chown, chgrp)

Manchmal brauchst du volle Kontrolle über eine Datei, willst die Rechte aber nicht mit Gruppenmitgliedern teilen. Dann ist es sinnvoll, Besitzer oder Gruppe zu ändern.

Besitzer ändern mit chown

chown  

Beispiel (Owner von test.py auf root setzen):

sudo chown root test.py

Hinweis: Zum Ändern des Dateieigentümers sind in der Regel Root-Rechte erforderlich (z. B. via sudo).

Gruppe ändern mit chgrp

chgrp  

Beispiel (Gruppe von test.txt auf test setzen):

sudo chgrp test test.txt

Hinweis: Eine Datei/ein Verzeichnis kann nicht gleichzeitig zwei Gruppen als Eigentümer haben.

Fazit

Die Verwaltung von Dateiberechtigungen ist besonders in Mehrbenutzerumgebungen entscheidend. Wenn du Berechtigungen regelmäßig prüfst und gezielt setzt, schützt du sensible Daten vor ungewolltem Zugriff. Mit ls -l zum Prüfen sowie chmod, chown und chgrp zum Anpassen hast du die wichtigsten Werkzeuge dafür in der Hand.