Linux/Dateisystem/Hierarchie

Aus Foxwiki

topic - Kurzbeschreibung

Beschreibung

Hierarchische Struktur
  • Lange Zeit hat jedes Unix-Derivat seine eigenen Vorstellungen vom Aufbau seiner Datei­verwaltung mitgebracht, aber unterdessen ist man sich mehr oder weniger einig geworden und erarbeitete den Filesystem Hierarchie Standard, der wichtige Strukturen definiert.
  • Die meisten Distributionen folgen diesen Richtlinien, wobei Abweichungen oft durch unterschiedliche Auslegung des Standards begründet werden.
  • Neben der Beschreibung der vorgesehenen Verwendung jedes Verzeichnisses, werden auch konkrete Kommandos genannt, die mindestens in diesen Verzeichnissen vorhanden sein müssen. Des Weiteren finden systemspezifische Vorgaben und optionale Komponenten Erwähnung.
  • Sobald der Kernel aktiv ist, lädt er als Erstes das Root-Filesystem, in dem alle für die Aufgaben des Kernels notwendigen Programme und Konfigurationsdateien angesiedelt sein müssen.

Zu den Programmen gehören

  • Dienstprogramme zum Prüfen und Reparieren des Dateisystems
  • Programme zum Sichern der Systemdaten und zur Installation neuer Systemteile
  • Eventuell wichtige Netzwerkprogramme


Als Benutzer werden Sie alle Daten als Dateien auf einem Datenträger (meist einer Festplatte) speichern. (Texte, Einstellungen, Programme usw.)

  • Um auf diese Daten zugreifen zu können, werden Sie mit einem Namen und weiteren Eigenschaften in einem Ablagesystem geordnet.
  • Ein Dateisystem ist ein Ordnungsschema für Dateien. Dateien werden in Verzeichnissen zusammengefasst. Ver­zeichnisse sind also Behälter für Dateien.
  • Ein Verzeichnis kann sowohl Dateien als auch weitere Verzeichnisse enthalten. Verzeichnisse werden so hierar­chisch unter dem Wurzelverzeichnis (root-directory) angeordnet.
Unterschiede zu Windows
Option Beschreibung
Laufwerksbuchstaben Das Root-Verzeichnis wird durch den Slash (/) repräsentiert und hat keinen weiteren Namen.
Slash (/) und Backslash (\) Der Slash (/) wird als Trennzeichen bei der Angabe von Dateipfaden benutzt.
Beispiel

Eine Datei die sich in Ihrem Home-Verzeichnis befindet, kann folgende Ortsangabe haben:

/home/user/text

Sie möchten mit dem Befehl cat eine Datei anzeigen, die sich auf einer cdrom befindet

cat·/cdrom/text

Übersicht

Die wichtigsten Systemverzeichnissen
Verzeichnis Beschreibung / Funktion
/ Hier sollte keine Dateien liegen
/bin Systemverwaltungsprogramme für alle Benutzer
/boot Dateien des Bootmanagers und des Kernels
/dev Gerätedateien
/etc Systemweite Konfigurationsdateien
/home Login-Verzeichnisse der Benutzer
/lib Shared Libraries des Basissystems
/lost+found Dateien, die beim Plattencheck anfallen
/media Mountpoint für Wechseldatenträger
/mnt Mountpoint für vorübergehende Mount-Vorgänge
/opt Optionale Erweiterungspakete (in Unterverzeichnissen)
/proc Abbild von Kernel-Daten
/root Home-Verzeichnis des Superusers (root)
/sbin Programme zur Systemadministration
/tmp Temporäre Dateien
/usr Zweites Hauptverzeichnis für Programme (Unix System Resources)
Verzeichnisse in der Wurzel
/bin Die wichtigsten Benutzer-Kommandos, um mit dem System arbeiten zu können
/boot Hier findet man die statischen Dateien des Bootmanagers und die Kernel.
/dev
/etc Enthält alle lokalen Konfigurationsdateien (Tastatur, X, Netzwerk...)
/home Alle Heimatverzeichnisse der Nutzer findet man hier. Nach dem Login landet jeder Benutzer (i.d.R.) in seinem Home. Heimatverzeichnisse können vom Systemverwalter auch an anderer Stelle angesiedelt werden
/lib Die beim Systemstart benötigten Bibliotheken

Kernelmodule in eigenem Unterverzeichnis

/mnt Mountpunkt für temporäre Partitionen
/opt Software, die nicht zum üblichen Installationsumfang von Unix-Systemen gehören, werden oft unter diesem Zweig installiert. So werden nahezu alle kommerziellen Softwarepakete hier eingerichtet; auch die Programme zur KDE befinden sich hier
/root Heimatverzeichnis des Administrators. In realen Unix Installationen werden die Heimatverzeichnisse aller Nut­zer oft auf einem Server gehalten. Bei einem Ausfall eines solchen Servers sollte aber zumindest Root in der Lage sein, vernünftig mit dem System zu arbeiten
/sbin Wichtige System-Programme (beim Booten benötigt; Ausführung erfordert Root-Rechte)
/tmp Temporäre Dateien können hier abgelegt werden, jeder Nutzer ist dazu berechtigt.
/usr Zweite Hierarchie
/var Variable Daten


Nach der Installation von Linux befinden sich eine ganze Reihe von Systemverzeichnissen auf Ihrer Festplatte.

  • Jedes dieser Verzeichnisse hat eine genau festgelegte Aufgabe. In der folgenden Grafik ist ein Ausschnitt aus der Verzeichnisstruktur eines UNIX-Systems abgebildet.
  • Diese bei allen UNIX-Systemen ähnliche Struktur wird als File System Hierarchie-Standart bezeichnet. Alle UNIX-Dialekte müssen sich daran messen lassen, wie eng sie sich an diesen Standard halten.
  • Man spricht hier bildlich von einem (umgedrehten) Baum, dessen Wurzel das Stammverzeichnis (/) ist.
  • Das Stammverzeichnis (root) ist also das Vaterverzeichnis für die darunter liegenden Kind-Verzeichnisse (bin, dev, etc ...).
  • Die Kind-Verzeichnisse user, pub, ftp und www haben home als Vater-Verzeichnis. Genau wie bei einem Familienstammbaum kann zwar ein Vater mehrere Kinder haben, ein Kind jedoch immer nur einen Vater.
  • Da Unix ein Multi-User-Betriebssystem ist, wird auf eine strikte Trennung von System-, Programm- und Benut­zerdaten geachtet.

Die zweite Verzeichnishierarchie - /usr

/usr

Variable Daten - /var

/var

Linux-Besonderheiten

Speziell für Linux-Systeme definiert der Standard Weiteres:

Allgemein Der Name des Standard-Kernels ist vmlinux oder vmlinuz
/dev Enthält nur die im Dokument Linux Allocated Devices beschriebenen Links (sonst wie oben)
/proc Enthält Kernel- und Prozessinformationen in einem virtuellen Dateisystem
/sbin Enthält zusätzlich Routinen zum ext2-Dateisystem und lilo
/usr/src Enthält zusätzlich die Kernelquellen

Prozessdateisystem - /proc

  1. /proc - Prozessdateisystem

Anwendung

Pfadangaben

Pfadangaben beschreiben den Weg zu einer Datei entlang der Dateisystemhierarchie

Absolute Pfadangaben

  • Absoluter Pfad bedeutet, dass Sie den ganzen Pfad vom Hauptverzeichnis aus angeben, egal in welchem Verzeichnis Sie sich selbst gerade befinden.
  • Ein Verzeichniswechsel mit einer absoluten Pfadangabe beginnt immer mit einem Slash.
  • Sie müssen also bei einem Verzeichniswechsel mit einer absoluten Pfadangabe Ihre eigene Position nie berücksichtigen.

Beispiel

~ $ cd /var
/var $

Relative Pfadangaben

  • Bei einem Verzeichniswechsel mit relativer Pfadangabe bewegen Sie sich relativ zum aktuellen Verzeichnis fort.
  • Eine relative Pfadangabe beginnt deshalb nie mit einem Slash.

Beispiel

Es wurde hier relativ zum /var-Verzeichnis in das /var/log-Verzeichnis gewechselt.

/var # cd log
/var/log #

Zugriff auf Datenträger

mount

Arbeiten im Dateisystem

siehe Linux/Dateisystem/Grundlagen


Anhang

Siehe auch