Filesystem Hierarchy Standard

Richtlinie für die Verzeichnisstruktur unter Unix-ähnlichen Betriebssystemen
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 2. Oktober 2004 um 21:55 Uhr durch Dkleinschmidt (Diskussion | Beiträge) (benötigte Verzeichnisse). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Einleitung

Der Filesystem Hierarchy Standard (FHS) ist eine von der Filesystem Hierarchy Standard Group veröffentlichte Richtlinie, die Regeln über die Verzeichnisstruktur unter UNIX-ähnlichen Betriebssystemen festlegt. Durch den Standard, der momentan in der Version 2.3 vorliegt, können sowohl Anwendungsprogramme als auch Benutzer leichter vorhandene Dateien und Verzeichnisse lokalisieren. Dies wird erreicht, indem das Dateisystem in verschiedene Verzeichnis-Bereiche aufgeteilt wird, denen jeweils eigenen Anwendungs- oder Aufgabengebiete zugeordnet werden. Die Richtlinie richtet sich hauptsächlich an Softwareentwickler, Betriebssystemhersteller und interessierte Benutzer, die dadurch angeregt werden sollen, FHS-kompatible Pakete zu veröffentlichen.

Der Aufbau

Der FHS unterscheidet grundsätzlich "shareable files" also solche Dateien, die auf einem Rechner gespeichert werden und auf mehreren Rechnern verwendet werden können und solchen bei denen die gemeinsame Nutzung ausgeschlossen ist, den sog. "unhareable files". Zu den gemeinsam nutzbaren (auch: statische) Dateien zählen im allgemeinen Binärdateien, statische Programmbibliotheken, -dokumentationen und solche Dateien, die nicht ohne administrative Eingriffe geändert werden. Diese Dateien werden normalerweise in den Verzeichnissen usr, etc, opt, boot usw. abgelegt. Auf die statischen Dateien reicht in der Regel ein Nur-Lese-Zugriff.

Variable Dateien, zeichnen sich hingegen genau dadurch aus, dass sie sich während des Rechnerbetriebs ändern. Zu solchen Daten gehören beispielsweise Dateien in Benutzerverzeichnissen, Log-Dateien oder E-Mail-Dateien. Solche änderbare Dateien werden in der Regel in Verzeichnissen wie /var/mail, /var/log, /home usw. zu finden sein.

Das Root-Dateisystem (/)

Im Wurzelverzeichnis müssen entsprechende Dateien (z.B. der Bootloader, Diagnosetools, Wiederherstellungstools) enthalten sein, die es einem Administrator ermöglichen, das System zu booten, es wiederherzustellen, es zu retten und/oder es zu reparieren. Es ist es aber sinnvoll, das Wurzelverzeichnis so klein wie möglich zu halten, da das Root-Verzeichnis auch auf sehr kleinen Datenträgern beheimatet sein kann. Generell gilt aber der Grundsatz, dass Anwendungsprogramme keine eigenen Verzeichnisse im Wurzelverzeichnis anlegen sollen, sondern auf die vorgegebene Verzeichnisstruktur zurückgreifen, auf die unten eingegangen wird.

benötigte Verzeichnisse

Folgende Verzeichnisse müssen in einem FHS-kompatiblem Dateisystem im Wurzelverzeichnis vorhanden sein:

  • bin (Grundlegende Systembefehle)
  • boot (Statische Dateien des Bootloaders)
  • dev (Gerätedateien)
  • etc (spezifische Konfigurationsdateien)
  • lib (Kernel-Module und dynmamische Bibliotheken)
  • media (Einhängepunkt für auswechselbare Datenträger)
  • mnt (temporärer Einhängepunkt für Dateisysteme)
  • opt (zusätzliche Softwarepakete)
  • sbin (wichtige Systembefehle)
  • srv (Daten, die von Diensten angeboten werden)
  • tmp (temporäre Dateien)
  • usr (2. Verzeichnisebene)
  • var (variable Daten)

Auf die Inhalte der jeweiligen Verzeichnisse wird weiter unten eingegangen.