<!DOCTYPE markdown>
Filesystem Hierarchy Standard FHS
Das Filesystem Hierarchy Standard (FHS) beschreibt die Verzeichnisstruktur und die Inhalte von Linux-Systemen. Es definiert, welche Verzeichnisse existieren sollten und welche Arten von Dateien dort zu finden sind. Hier ist eine Übersicht der wichtigsten Verzeichnisse:
Root-Verzeichnis
Das oberste Verzeichnis hat keinen richtigen Namen, sondern nur ein Symbol: /. Alle anderen Verzeichnisse und Dateien sind hierarchisch darunter organisiert.
Hauptverzeichnisse
| Verzeichnis | Beschreibung | Beispiele für Inhalte |
|---|---|---|
/bin | Essenzielle ausführbare Programme für das System (Binaries), die von allen Benutzern benötigt werden. | ls, cp, mv, rm, bash |
/sbin | Systemadministrationstools für den Superuser (root). | fsck, reboot, iptables |
/boot | Dateien für den Bootloader und Kernel. | Kernel (vmlinuz), Initramfs (initrd.img), Bootloader-Konfiguration (grub.cfg) |
/dev | Geräte-Dateien (Device Files), die Hardware- und virtuelle Geräte repräsentieren. | tty, sda, null, random |
/etc | Systemweite Konfigurationsdateien und Skripte. | passwd, hosts, fstab |
/home | Benutzerverzeichnisse. Jeder Benutzer hat ein eigenes Unterverzeichnis. | /home/alex, /home/julia |
/lib | Gemeinsame Bibliotheken für grundlegende Programme im /bin und /sbin. | libc.so.6, ld-linux.so.2 |
/media | Einhängepunkte (Mountpoints) für wechselbare Medien wie USB-Sticks und CDs. | /media/usb, /media/cdrom |
/mnt | Temporäre Einhängepunkte für Dateisysteme, oft bei manuellen Mounts. | /mnt/external_drive |
/opt | Zusätzliche Software, die nicht Teil der Standardpakete ist. | /opt/virtualbox, /opt/google/chrome |
/proc | Virtuelles Dateisystem mit Informationen über laufende Prozesse und Systeminformationen. | /proc/cpuinfo, /proc/meminfo, /proc/1 |
/root | Home-Verzeichnis des Superusers (root). | Persönliche Dateien und Einstellungen des Root-Benutzers. |
/run | Laufzeitdaten von Prozessen und Diensten, die seit dem letzten Booten erstellt wurden. | PID-Dateien, Socket-Dateien |
/srv | Daten für Dienste, die vom System bereitgestellt werden (z. B. Webserver, FTP). | /srv/http, /srv/ftp |
/sys | Virtuelles Dateisystem mit Informationen über die Hardware und den Kernel. | /sys/class, /sys/devices |
/tmp | Temporäre Dateien. Wird oft beim Neustart gelöscht. | Temporäre Daten von Anwendungen und Skripten |
/usr | Sekundäre Programme und Dateien für Benutzer, die nicht kritisch für das System sind. | Siehe unten (detaillierte Unterverzeichnisse). |
/var | Variable Daten, die sich während des Betriebs ändern. | Logdateien, temporäre Datenbanken, Druckerspooler (/var/log, /var/spool, /var/tmp) |
Details zu /usr
| Unterverzeichnis | Beschreibung |
|---|---|
/usr/bin | Nicht-essenzielle ausführbare Programme. |
/usr/sbin | Administrative Werkzeuge für den Superuser. |
/usr/lib | Bibliotheken für Programme in /usr/bin und /usr/sbin. |
/usr/local | Software, die lokal installiert wurde (nicht durch den Paketmanager). |
/usr/share | Architektur-unabhängige Dateien, z. B. Dokumentation und Icons. |
/usr/src | Quellen (Source Code), z. B. Kernel-Quellcode. |
Zusammenfassung der Nutzung
- Systemkritische Verzeichnisse:
/bin,/sbin,/lib,/etc,/dev,/proc - Benutzerdaten und Software:
/home,/usr,/opt - Variable Daten:
/var,/tmp