FHS (Filesystem Hierarchy Standard)
Bash | Dateisystem & Rechte

Modul 2: Kommandozeile, Rechte & Dateisystem

FHS (Filesystem Hierarchy Standard)

Tieferes Verständnis der Linux-Verzeichnisstruktur (/etc, /var, /usr, /opt) und wo Konfigurationen oder Logs normgerecht abgelegt werden

★★★★★💬 0
Von Armin Hünniger • 11. Oktober 2026
Nachdem wir im ersten Modul das technische Fundament unseres Servers gegossen und den Systemstart verstanden haben, wechseln wir nun auf die Kommandozeile. Wer von Windows kommt, sucht unter Linux oft verzweifelt nach Laufwerken wie C:\ oder D:\. Unter Linux gibt...

Einführung

Nachdem wir im ersten Modul das technische Fundament unseres Servers gegossen und den Systemstart verstanden haben, wechseln wir nun auf die Kommandozeile. Wer von Windows kommt, sucht unter Linux oft verzweifelt nach Laufwerken wie C:\ oder D:\. Unter Linux gibt es keine Laufwerksbuchstaben. Stattdessen gibt es nur einen einzigen, gigantischen Verzeichnisbaum, an den alle Festplatten, USB-Sticks und Netzwerkfreigaben angehängt werden.

Dieser Baum wächst jedoch nicht wild. Sein Aufbau ist strikt durch den Filesystem Hierarchy Standard (FHS) genormt. Wer diesen Standard einmal verstanden hat, muss nie wieder raten, wo ein Programm installiert wurde, wo die Konfigurationsdatei liegt oder wo die Fehlerprotokolle geschrieben werden. In diesem Beitrag durchleuchten wir die wichtigsten Äste dieses Baums.

Der Wurzelbaum: Alles beginnt bei /

Die absolute Basis deines Systems ist das Root-Verzeichnis, gekennzeichnet durch einen simplen Schrägstrich: /. Alle anderen Verzeichnisse zweigen von hier ab. Um dir einen schnellen Überblick über die oberste Ebene deines Servers zu verschaffen, eignet sich das kleine Tool tree hervorragend.

# Das Tool 'tree' installieren (falls noch nicht vorhanden)
sudo apt install tree

# Die oberste Ebene (Level 1) des Root-Verzeichnisses anzeigen
tree -L 1 /

Die Ausgabe zeigt dir sofort die standardisierten Ordner, die auf jedem Linux-System identisch sind. Die vier wichtigsten für deinen Alltag als Administrator schauen wir uns nun im Detail an.

Die Big Four: /etc, /var, /usr und /opt

Verzeichnis Bedeutung Was liegt hier?
/etc Etcetera (heute oft: Editable Text Configuration) Ausschließlich systemweite Konfigurationsdateien (meist reiner Text).
/var Variable Daten, die sich ständig ändern (Logfiles, Datenbanken, Webseiten).
/usr Unix System Resources Vom Paketmanager installierte Programme, Bibliotheken und Read-Only-Daten.
/opt Optional Zusatzsoftware, die manuell (am Paketmanager vorbei) installiert wurde.

1. /etc – Die Schaltzentrale deines Servers

Im /etc-Verzeichnis liegen die Baupläne deines Systems. Hier findest du keine ausführbaren Programme, sondern ausschließlich Konfigurationsdateien. Wenn du das Verhalten eines Dienstes (wie Nginx, SSH oder Docker) anpassen möchtest, ist dies dein Zielort.

# In das Konfigurationsverzeichnis von Nginx wechseln
cd /etc/nginx/

# Den Inhalt auflisten (inklusive versteckter Dateien und Rechte)
ls -la

# Die Hauptkonfiguration mit dem Editor Nano bearbeiten
sudo nano nginx.conf

2. /var – Das dynamische Gedächtnis

Das /var-Verzeichnis ist der Ort, an dem dein Server "lebt". Hier liegen alle Daten, deren Größe sich im laufenden Betrieb ändert. Läuft diese Partition voll, stürzen in der Regel auch deine Webdienste ab.

  • /var/log/: Der wichtigste Ort zur Fehlerbehebung. Hier liegen die Protokolle (Logs) fast aller Systemdienste.
  • /var/www/: Das Standardverzeichnis für die HTML- und PHP-Dateien deiner Webseiten.
  • /var/lib/: Hier speichern Hintergrunddienste ihre internen Statusinformationen (z. B. die Datenbankdateien von MySQL oder PostgreSQL).
# Die letzten 20 Zeilen des System-Logs anzeigen
tail -n 20 /var/log/syslog

# Das Logfile "live" mitlesen (beendet man mit STRG+C)
tail -f /var/log/auth.log

3. /usr – Das Software-Arsenal

Dieses Verzeichnis ist oft das größte auf dem Server. Wenn du mit apt install ein Programm installierst, landen die ausführbaren Dateien meist in /usr/bin oder /usr/sbin (für Administrator-Befehle). Die dazugehörigen Bibliotheken liegen in /usr/lib. Das gesamte /usr-Verzeichnis sollte vom System als "Read-Only" (schreibgeschützt) betrachtet werden – hier änderst du niemals Dateien manuell!

4. /opt – Der Spielplatz für externe Software

Manchmal möchtest du Software nutzen, die nicht über apt bereitgestellt wird (z. B. große kommerzielle Pakete, ein manuell heruntergeladenes Teamspeak-Binary oder bestimmte Docker-Stacks). Solche "monolithischen" Anwendungen, die all ihre eigenen Abhängigkeiten in einem Ordner mitbringen, legst du sauber strukturiert in /opt ab. Das hält den Rest des Systems von Fremdsoftware rein.

# Ein neues Verzeichnis für unser manuelles Projekt anlegen
sudo mkdir /opt/mein_custom_projekt

# Besitzer des Ordners auf den aktuellen Benutzer ändern
sudo chown $USER:$USER /opt/mein_custom_projekt/

Wer das Verzeichnissystem von Linux verinnerlicht hat, sucht nicht nach Fehlern – er weiß einfach, wo er nachsehen muss.

Weitere wichtige Verzeichnisse in Kürze

Neben den großen Vier wirst du bei der täglichen Arbeit auch über folgende Ordner stolpern:

  • /home: Die persönlichen Verzeichnisse aller normalen Benutzer (z. B. /home/armin). Hier speicherst du Skripte, Downloads und benutzerdefinierte Konfigurationen (oft als versteckte .dateien).
  • /root: Das Heimatverzeichnis des ultimativen Administrators (Superuser). Es liegt absichtlich nicht unter /home, damit der Root-Nutzer auch bei nicht eingehängter Home-Partition arbeiten kann.
  • /dev: (Devices). Unter Linux ist "alles eine Datei". Hier findest du deine Festplatten (z. B. /dev/sda) oder Terminals abgebildet.
  • /tmp: Temporäre Dateien. Jeder Nutzer darf hier schreiben. Achtung: Der Inhalt dieses Ordners wird bei jedem Server-Neustart (Reboot) schonungslos und automatisch gelöscht!

Der Filesystem Hierarchy Standard macht die Linux-Welt berechenbar. Wenn du weißt, dass Programme in /usr/bin liegen, ihre Konfigurationen aus /etc lesen und ihre Fehler nach /var/log schreiben, wird die Administration selbst hochkomplexer Server-Cluster zur logischen Routine.

Ausblick: In den Verzeichnissen tummeln sich tausende Dateien. Doch wer darf diese Dateien lesen, ändern oder als Programm starten? Im nächsten Kapitel schauen wir uns das erweiterte Rechtesystem an und klären, wie wir mit chmod, chown und ACLs unsere Daten kugelsicher machen.

Diesen Impuls teilen:

Bewertung

★★★★★💬 0
Anmelden zum Bewerten

Kommentare

Noch keine Kommentare.

Anmelden, um zu kommentieren.