Linux Terminal: Dateisystem und Berechtigungen verstehen

Das Linux-Dateisystem bildet die Grundlage für alle Abläufe im Betriebssystem. Im Gegensatz zu Windows, das mit mehreren Laufwerksbuchstaben arbeitet, verfügt Linux über eine einheitliche Verzeichnisstruktur, die beim Stammverzeichnis (/) beginnt.

In diesem Beitrag betrachten wir die Verzeichnisstruktur im Detail, lernen die Berechtigungsmechanismen kennen und sehen, wie man Benutzer und Gruppen verwaltet.


1. Die Linux-Verzeichnisstruktur

Alles in Linux ist eine Datei: Geräte, Prozesse, Konfigurationsdateien – alles wird in einer hierarchischen Baumstruktur organisiert.

Wichtige Verzeichnisse:

VerzeichnisBedeutung
/Wurzelverzeichnis, Ausgangspunkt aller Pfade
/binWichtige Systembefehle (Binaries)
/etcSystemkonfigurationsdateien
/homeBenutzerverzeichnisse
/varVariable Daten, z. B. Logs
/usrBenutzerprogramme und Bibliotheken
/tmpTemporäre Dateien
/devGeräte (z. B. Festplatten, USB-Sticks) als Dateien
/procInformationen über laufende Prozesse und Kernel
/rootHome-Verzeichnis des Root-Benutzers

Beispiel:

ls /

zeigt den Inhalt des Stammverzeichnisses.


2. Absolute und relative Pfade

  • Absoluter Pfad: Beginnend mit /, z. B. /etc/ssh/sshd_config
  • Relativer Pfad: Relativ zum aktuellen Verzeichnis, z. B. ../ für eine Ebene höher

Beispiel:

cd /etc         # absolut
cd ../var       # relativ

3. Benutzer und Gruppen

Jeder Prozess und jede Datei gehört einem Benutzer und einer Gruppe.

Wichtige Befehle:

BefehlFunktion
whoamiZeigt den aktuellen Benutzer
idZeigt Benutzer- und Gruppen-IDs
adduser nameErstellt einen neuen Benutzer
passwd namePasswort für Benutzer setzen
groupadd gruppeNeue Gruppe anlegen
usermod -aG gruppe nameBenutzer zur Gruppe hinzufügen

4. Dateiberechtigungen

Mit ls -l zeigt Linux Dateiberechtigungen an:

-rw-r--r--  1 user group  1234 Sep  1 12:00 datei.txt

Bedeutung:

  • - = normale Datei
  • rw- = Besitzer: lesen, schreiben
  • r-- = Gruppe: nur lesen
  • r-- = Andere: nur lesen

Schema: Besitzer | Gruppe | Andere


5. Berechtigungen ändern

5.1 Besitzer und Gruppe

sudo chown benutzer:gruppe datei.txt

5.2 Zugriffsrechte

Symbolische Schreibweise:

chmod u+x datei.sh    # Benutzer: Ausführungsrecht hinzufügen
chmod g-w datei.sh    # Gruppe: Schreibrecht entfernen
chmod o+r datei.sh    # Andere: Leserecht hinzufügen

Numerische Schreibweise (Oktal):

ZahlBerechtigung
4Lesen (r)
2Schreiben (w)
1Ausführen (x)
0Keine

Beispiel:

chmod 755 script.sh

= Besitzer: rwx, Gruppe: r-x, Andere: r-x


6. Sonderberechtigungen

  • SUID (Set User ID): Prozess läuft mit Rechten des Besitzers
  • SGID (Set Group ID): Neue Dateien erben Gruppenzugehörigkeit
  • Sticky-Bit: Dateien im Verzeichnis können nur vom Besitzer gelöscht werden

Beispiel:

chmod +t /tmp    # Sticky-Bit für /tmp setzen

7. Praxisbeispiele

  1. Neuen Benutzer anlegen: sudo adduser max sudo passwd max
  2. Gruppe erstellen und Benutzer hinzufügen: sudo groupadd entwickler sudo usermod -aG entwickler max
  3. Dateirechte anpassen: chmod 640 geheim.txt chown max:entwickler geheim.txt

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert