Everything is a file

So funktioniert die Linux-Ordnerstruktur

22.02.2015
Von Thomas Hümmler
Egal ob /home, /sbin oder /mnt - wer den Aufbau von Linux-Ordnern versteht, kann leicher partitionieren und sich Programme und Medien besser zunutze machen.

Während Windows-Systeme noch an Eigenarten wie Laufwerksbuchstaben festhalten, haben sich die Betriebssysteme Mac-OS X und Linux längst angenähert: Sie verwenden eine gemeinsame Verzeichnisstruktur, ausgehend vom Wurzelverzeichnis „/“, auch Root genannt.

Egal ob /home, /sbin oder /mnt - wer den Aufbau von Linux-Ordnern versteht, kann leicher partitionieren und sich Programme und Medien besser zunutze machen.
Egal ob /home, /sbin oder /mnt - wer den Aufbau von Linux-Ordnern versteht, kann leicher partitionieren und sich Programme und Medien besser zunutze machen.

Dass es diese Einheitlichkeit in puncto Verzeichnisinhalte und -bezeichnungen gibt, ist dem sogenannten Filesystem Hierarchy Standard, kurz FHS, zu verdanken. Dieser beschreibt den Aufbau eines Unix-Verzeichnissystems. Da es keine Laufwerksbuchstaben gibt, werden Partitionen, Festplatten und andere Speichermedien wie USB-Sticks und DVD-Laufwerke einfach als Ordner in die Verzeichnisstruktur integriert, also „eingehängt“ oder „gemountet“. Theoretisch kann ein Medium wie DVD oder USB-Platte an jeder beliebigen Stelle eingehängt werden. In der Praxis sind dafür aber bestimmte Orte vorgesehen, in erster Linie die Verzeichnisse „/mnt“ und „/media“.

Kennen Sie unseren Linux- und Open-Source-Rückblick?

Man kann sich diese Tatsache schon beim Aufsetzen eines Linux-Systems zunutze machen, indem man das System auf mehrere Festplatten oder Partitionen verteilt. Wer das geschickt anstellt, verhindert dadurch ein unkontrolliertes Überlaufen des physikalischen Speichers oder kann im Fall eines Falles schnell die Benutzerdaten auf einen anderen Server oder eine andere Festplatte verlagern.

Root (/): Das Wurzelverzeichnis

An oberster Stelle des gesamten Linux-Verzeichnissystems befindet sich das Wurzelverzeichnis, auch Root, dargestellt durch den Schrägstrich.

Was im Root-Dateisystem steht, muss ausreichen, um ein Linux-System zu booten oder zu reparieren. Dazu sind Diagnose-, Backup- und Restore-Utilitys ebenso erforderlich wie Konfigurationsdateien und Bootloader-Informationen. Wichtige Befehle wie mountmüssen deshalb direkt erreichbar sein. Da das Root-Verzeichnis normalerweise nur Ordner enthält, ist es zwingend, dass alle Unterverzeichnisse samt den Programmen auf der Root-Partition vorhanden sind.

Sehr groß muss diese Root-Partition aber trotzdem nicht sein. Im Gegenteil: Es bietet sich an, diese so klein wie möglich zu halten, um das System eventuell sogar von einem USB-Stick aus starten zu können. Außerdem ist eine kleine Root-Partition weniger anfällig für Beschädigungen, etwa infolge eines Systemabsturzes.

Systemkommandos: Im Verzeichnis „/bin“ finden Sie Tools zum Kopieren, Löschen und Verschieben von Dateien, zum Entpacken von Archiven oder zum Bearbeiten der Rechte.
Systemkommandos: Im Verzeichnis „/bin“ finden Sie Tools zum Kopieren, Löschen und Verschieben von Dateien, zum Entpacken von Archiven oder zum Bearbeiten der Rechte.

/bin: Substanzielle System-Tools

Das Verzeichnis „/bin“ muss sich auf der Root-Partition befinden. Hier stehen wichtige System-Tools, die alle Benutzer ausführen können.

Diese Befehle müssen auch ausführbar sein, wenn kein weiteres Dateisystem gemountet ist. Im „/bin“-Verzeichnis finden Sie unter anderem Systemkommandos für Dateirechte (chgrp, chmod, chown), zum Kopieren, Anlegen, Verschieben und Löschen von Verzeichnissen und Dateien, zum Einloggen und Mounten von Dateisystemen, die Shell sh sowie das Programm su, mit dem man die Benutzerkennung wechseln kann.

In „/bin“ sind außerdem die Archiv-Tools tar und cpio sowie die Pack-Programme gzip und gunzip untergebracht. Mit diesen kann der Administrator ein System wiederherstellen, sofern das Root-Dateisystem intakt ist. Weitere fundamentale Kommandozeilen- Tools sind netstat, ping ftp und tftp.

Auf diesem System wurde dem Bootloader eine eigene kleine Partition spendiert. Das ist etwa nötig, wenn das System verschlüsselt ist oder das Dateisystem Btr fs verwendet.
Auf diesem System wurde dem Bootloader eine eigene kleine Partition spendiert. Das ist etwa nötig, wenn das System verschlüsselt ist oder das Dateisystem Btr fs verwendet.

/boot: Der Bootloader

Das Verzeichnis „/boot“ muss nicht unbedingt auf der Root-Partition liegen. Es enthält die statischen Dateien des Bootloaders – etwa Grub 2 – sowie alle zum Systemstart erforderlichen Dateien. Hier ist auch der System-Kernel zu finden, falls er nicht direkt im Wurzelverzeichnis abgelegt ist.

/dev: Die Gerätedateien

Das „/dev“-Verzeichnis beziehungsweise seine Inhalte werden auf der Root-Partition benötigt. In diesem Verzeichnis stehen zeichen- und blockorientierte Spezialdateien, über die der Zugriff auf Geräte wie Festplatten und DVD-Laufwerke oder Schnittstellen gesteuert wird.

/etc: Die Systemkonfiguration

Das „/etc“-Verzeichnis gehört erneut auf die Root-Partition. Denn dort und in den darunterliegenden Verzeichnissen stehen die Dateien für die Systemkonfiguration. Manche der Verzeichnisse unterhalb von „/etc“ müssen auf jedem Linux vorhanden sein, andere sind optional. Die Konfigurationsdateien für das X-Window-Subsystem, die Voraussetzung für die grafische Desktop-Oberfläche, finden sich im Verzeichnis „/etc/X11“. Eventuell gibt es auch das Verzeichnis „/etc/opt“. Dort finden Sie die Konfigurationsdateien von Paketen aus dem „/opt“-Verzeichnis.

Sweet „home“: Jeder Systembenutzer erhält ein Home-Verzeichnis, in dem er alle Rechte besitzt und seine eigenen Dateien und Konfigurationen unterbringen kann.
Sweet „home“: Jeder Systembenutzer erhält ein Home-Verzeichnis, in dem er alle Rechte besitzt und seine eigenen Dateien und Konfigurationen unterbringen kann.