Die Linux-Verzeichnisstruktur, erklärt

Wenn Sie von Windows kommen, kann die Linux-Dateisystemstruktur besonders fremd erscheinen. Das C: \ -Laufwerk und die Laufwerksbuchstaben sind weg und werden durch ein / und kryptisch klingende Verzeichnisse ersetzt, von denen die meisten drei Buchstabennamen haben.

Der Filesystem Hierarchy Standard (FHS) definiert die Struktur von Dateisystemen unter Linux und anderen UNIX-ähnlichen Betriebssystemen. Linux-Dateisysteme enthalten jedoch auch einige Verzeichnisse, die noch nicht vom Standard definiert sind.

/ - Das Stammverzeichnis

Alles auf Ihrem Linux-System befindet sich im Verzeichnis /, das als Stammverzeichnis bezeichnet wird. Sie können sich das Verzeichnis / als das Verzeichnis C: \ unter Windows ähnlich vorstellen - dies ist jedoch nicht unbedingt der Fall, da Linux keine Laufwerksbuchstaben hat. Während sich unter Windows eine andere Partition unter D: \ befindet, wird diese andere Partition in einem anderen Ordner unter / unter Linux angezeigt.

/ bin - Wichtige Benutzer-Binärdateien

Das Verzeichnis / bin enthält die wesentlichen Benutzer-Binärdateien (Programme), die vorhanden sein müssen, wenn das System im Einzelbenutzermodus bereitgestellt wird. Anwendungen wie Firefox werden in / usr / bin gespeichert, während sich wichtige Systemprogramme und Dienstprogramme wie die Bash-Shell in / bin befinden. Das Verzeichnis / usr kann auf einer anderen Partition gespeichert werden. Durch das Platzieren dieser Dateien im Verzeichnis / bin wird sichergestellt, dass das System über diese wichtigen Dienstprogramme verfügt, auch wenn keine anderen Dateisysteme bereitgestellt sind. Das Verzeichnis / sbin ist ähnlich - es enthält wichtige Systemverwaltungs-Binärdateien.

/ boot - Statische Startdateien

Das Verzeichnis / boot enthält die Dateien, die zum Booten des Systems benötigt werden. Hier werden beispielsweise die Dateien des GRUB-Bootloaders und Ihre Linux-Kernel gespeichert. Die Konfigurationsdateien des Bootloaders befinden sich hier jedoch nicht - sie befinden sich in / etc mit den anderen Konfigurationsdateien.

/ cdrom - Historischer Mount Point für CD-ROMs

Das Verzeichnis / cdrom ist nicht Teil des FHS-Standards, aber Sie finden es immer noch unter Ubuntu und anderen Betriebssystemen. Dies ist ein temporärer Speicherort für im System eingelegte CD-ROMs. Der Standardspeicherort für temporäre Medien befindet sich jedoch im Verzeichnis / media.

/ dev - Gerätedateien

Linux macht Geräte als Dateien verfügbar, und das Verzeichnis / dev enthält eine Reihe spezieller Dateien, die Geräte darstellen. Dies sind keine tatsächlichen Dateien, wie wir sie kennen, aber sie werden als Dateien angezeigt. Beispielsweise repräsentiert / dev / sda das erste SATA-Laufwerk im System. Wenn Sie es partitionieren möchten, können Sie einen Partitionseditor starten und ihn anweisen, / dev / sda zu bearbeiten.

Dieses Verzeichnis enthält auch Pseudogeräte, bei denen es sich um virtuelle Geräte handelt, die nicht der Hardware entsprechen. Zum Beispiel erzeugt / dev / random Zufallszahlen. / dev / null ist ein spezielles Gerät, das keine Ausgabe erzeugt und automatisch alle Eingaben verwirft. Wenn Sie die Ausgabe eines Befehls an / dev / null weiterleiten, verwerfen Sie sie.

/ etc - Konfigurationsdateien

Das Verzeichnis / etc enthält Konfigurationsdateien, die in der Regel von Hand in einem Texteditor bearbeitet werden können. Beachten Sie, dass das Verzeichnis / etc / systemweite Konfigurationsdateien enthält. Benutzerspezifische Konfigurationsdateien befinden sich im Ausgangsverzeichnis jedes Benutzers.

/ home - Home-Ordner

Das Verzeichnis / home enthält für jeden Benutzer einen Home-Ordner. Wenn Ihr Benutzername beispielsweise bob ist, befindet sich unter / home / bob ein Home-Ordner. Dieser Home-Ordner enthält die Datendateien des Benutzers und benutzerspezifische Konfigurationsdateien. Jeder Benutzer hat nur Schreibzugriff auf seinen eigenen Basisordner und muss erhöhte Berechtigungen erhalten (Root-Benutzer werden), um andere Dateien auf dem System zu ändern.

/ lib - Wesentliche gemeinsam genutzte Bibliotheken

Das Verzeichnis / lib enthält Bibliotheken, die von den wesentlichen Binärdateien im Ordner / bin und / sbin benötigt werden. Bibliotheken, die von den Binärdateien im Ordner / usr / bin benötigt werden, befinden sich in / usr / lib.

/ lost + found - Wiederhergestellte Dateien

Jedes Linux-Dateisystem verfügt über ein Fundbüro. Wenn das Dateisystem abstürzt, wird beim nächsten Start eine Dateisystemprüfung durchgeführt. Alle gefundenen beschädigten Dateien werden im Verzeichnis Lost + Found abgelegt, sodass Sie versuchen können, so viele Daten wie möglich wiederherzustellen.

/ media - Wechselmedien

Das Verzeichnis / media enthält Unterverzeichnisse, in denen in den Computer eingefügte Wechselmediengeräte bereitgestellt werden. Wenn Sie beispielsweise eine CD in Ihr Linux-System einlegen, wird automatisch ein Verzeichnis im Verzeichnis / media erstellt. In diesem Verzeichnis können Sie auf den Inhalt der CD zugreifen.

/ mnt - Temporäre Einhängepunkte

In der Vergangenheit haben Systemadministratoren im Verzeichnis / mnt temporäre Dateisysteme bereitgestellt, während sie diese verwendeten. Wenn Sie beispielsweise eine Windows-Partition bereitstellen, um einige Dateiwiederherstellungsvorgänge auszuführen, können Sie sie unter / mnt / windows bereitstellen. Sie können jedoch andere Dateisysteme an einer beliebigen Stelle im System bereitstellen.

/ opt - Optionale Pakete

Das Verzeichnis / opt enthält Unterverzeichnisse für optionale Softwarepakete. Es wird häufig von proprietärer Software verwendet, die nicht der Standard-Dateisystemhierarchie entspricht. Beispielsweise kann ein proprietäres Programm seine Dateien bei der Installation in / opt / application speichern.

/ proc - Kernel & Prozessdateien

Das Verzeichnis / proc ähnelt dem Verzeichnis / dev, da es keine Standarddateien enthält. Es enthält spezielle Dateien, die System- und Prozessinformationen darstellen.

/ root - Stammverzeichnis

Das Verzeichnis / root ist das Ausgangsverzeichnis des Root-Benutzers. Anstatt sich in / home / root zu befinden, befindet es sich in / root. Dies unterscheidet sich von /, dem Systemstammverzeichnis.

/ run - Anwendungsstatusdateien

Das Verzeichnis / run ist ziemlich neu und bietet Anwendungen einen Standardspeicherort für vorübergehende Dateien, die sie benötigen, wie Sockets und Prozess-IDs. Diese Dateien können nicht in / tmp gespeichert werden, da Dateien in / tmp möglicherweise gelöscht werden.

/ sbin - Systemverwaltungs-Binärdateien

Das Verzeichnis / sbin ähnelt dem Verzeichnis / bin. Es enthält wichtige Binärdateien, die im Allgemeinen vom Root-Benutzer für die Systemadministration ausgeführt werden sollen.

/ selinux - Virtuelles SELinux-Dateisystem

Wenn Ihre Linux-Distribution aus Sicherheitsgründen SELinux verwendet (z. B. Fedora und Red Hat), enthält das Verzeichnis / selinux spezielle Dateien, die von SELinux verwendet werden. Es ist ähnlich wie / proc. Ubuntu verwendet kein SELinux, daher scheint das Vorhandensein dieses Ordners unter Ubuntu ein Fehler zu sein.

/ srv - Servicedaten

Das Verzeichnis / srv enthält "Daten für vom System bereitgestellte Dienste". Wenn Sie den Apache-HTTP-Server zum Bereitstellen einer Website verwenden, speichern Sie die Dateien Ihrer Website wahrscheinlich in einem Verzeichnis im Verzeichnis / srv.

/ tmp - Temporäre Dateien

Anwendungen speichern temporäre Dateien im Verzeichnis / tmp. Diese Dateien werden im Allgemeinen bei jedem Neustart Ihres Systems gelöscht und können jederzeit von Dienstprogrammen wie tmpwatch gelöscht werden.

/ usr - Benutzer-Binärdateien und schreibgeschützte Daten

Das Verzeichnis / usr enthält Anwendungen und Dateien, die von Benutzern verwendet werden, im Gegensatz zu Anwendungen und Dateien, die vom System verwendet werden. Beispielsweise befinden sich nicht wesentliche Anwendungen im Verzeichnis / usr / bin anstelle des Verzeichnisses / bin und nicht wesentliche Systemverwaltungsbinärdateien im Verzeichnis / usr / sbin anstelle des Verzeichnisses / sbin. Die Bibliotheken befinden sich jeweils im Verzeichnis / usr / lib. Das Verzeichnis / usr enthält auch andere Verzeichnisse. Beispielsweise befinden sich architekturunabhängige Dateien wie Grafiken in / usr / share.

Im Verzeichnis / usr / local werden lokal kompilierte Anwendungen standardmäßig installiert. Dadurch wird verhindert, dass sie den Rest des Systems durcheinander bringen.

/ var - Variable Datendateien

Das Verzeichnis / var ist das beschreibbare Gegenstück zum Verzeichnis / usr, das im normalen Betrieb schreibgeschützt sein muss. Protokolldateien und alles andere, was normalerweise während des normalen Betriebs in / usr geschrieben wird, wird in das Verzeichnis / var geschrieben. Beispielsweise finden Sie Protokolldateien in / var / log.

Ausführlichere technische Informationen zur Linux-Dateisystemhierarchie finden Sie in der Dokumentation zum Dateisystemhierarchie-Standard.