Dieser Artikel ist der fünfte von 10 Teilen zum Thema Linux Terminal in 10 Teilen, dabei geht es um die Verzeichnisstruktur und dessen wichtigen Verzeichnissen. Diese unterscheidet sich doch sehr stark von einem Windows System.
» Zur Übersicht der Artikelserie «
Grundlagen zur Verzeichnisstruktur
Von Windows Systemen ist man es gewohnt, dass es für die verschiedenen Laufwerke Buchstaben gibt. Bei Linux und UNIX Systemen ist das ganze über eine hierarchische Verzeichnisstruktur gegliedert. Man spricht in diesem Zusammenhang gerne von einem Verzeichnisbaum. Vorstellen kann man sich das als einen umgedrehten Baum, wobei die Wurzel als root bzw. root directory (/) bezeichnet wird.
In jeder Ebene des Baumes können Dateien aber auch Verzeichnisse liegen. Jede Position einer Datei oder eines Verzeichnisses kann durch eine entsprechende Pfadangabe spezifiziert werden.
Standardverzeichnisse
Ausgehend vom root-directory (/) findet man folgende Verzeichnisse:
Verzeichnis | Beschreibung |
---|---|
/bin | Enthält die wichtigsten Nutzer- und Administrator-Programme, die zur Systemwartung benötigt werden. Alle anderen Programme sollten in /usr/bin sein. |
/boot | Enthält alles zum Booten notwendige. |
/cdrom | Nicht Teil des Standards, aber häufig der Mount-Point des CDROM-Laufwerks. |
/dev | Enthält die Gerätedateien. |
/etc | Parameterdateien, die den einzelnen Rechner beschreiben und konfigurieren; sozusagen seine Individualituät ausmachen. |
/floppy | Nicht Teil des Standards, aber häufig der Mount-Point des Disketten-Laufwerks. |
/home | Enthält die lokalen Nutzerverzeichnisse (home-directory). |
/lib | Wichtige System- und Kernel-Bibliotheken (vergleiche: /bin). |
/lost+found | Nicht Teil des Standards, gehört zur internen Verwaltung des Dateisystems. |
/mnt | Temporärer Mount-Point für Filesysteme. |
/opt | Zusätzliche, optionale Software |
/proc | Nicht Teil des Standard. Virtuelles Dateisystem, in dem aus Pseudodateien Statusinformationen des Kernels gelesen werden können. |
/root | home directory des root-Users (Systemadministrator). |
/sbin | Dienstprogramme für den Systemadministrator. Nicht Teil des allgemeinen Programmsuchpfads. |
/tmp | Temporäre Dateien. Für jedermann beschreibbar. |
/usr | Hier befindet sich (fast) die ganze installierte Software. Read-Only. In Prinzip in einer Kopie von mehreren Rechnern gleichzeitig nutzbar. |
/var | Datenbereiche für veränderliche Daten: Mail, Drucker-Spool, Accounting, Logging, etc. |
Um die verschiedenen Linux Systeme mit deren Verzeichnisstrukturen zu vereinheitlichen, hat man den Filesystem Hierarchy Standard (FHS) geschaffen. Die meisten Distributionen halten sich daran.
Wenn man ein Terminal geöffnet hat und man sich das aktuelle Verzeichnis ausgeben lassen möchte, so verwendet man den Befehl pwd
(print working directory). Dieser liefert uns den Pfad es aktuellen Verzeichnisses, den man als working directory bezeichnet. Neben dieser Verzeichnis Art gibt es noch das login directory und parent directory. Nach dem öffnen eines Terminals befindet man sich in der Regel im login directory. Das Verzeichnis ist eigentlich immer das /home des angemeldeten Benutzers. Als parent directory wird immer das übergeordnete Verzeichnis bezeichnet. Man erreicht es durch cd ..
.
Pfadangaben zu den Verzeichnissen
Für den Wechsel in anderer Verzeichnisse verwendet man den Befehl cd
. (change directory) Jetzt gibt es zwei Möglichkeiten, wie man den Pfad angibt.
Absoluter Pfad: Diese Angabe ist immer vom Wurzelverzeichnis (root-directory /) ausgehend.
Beispiel: Wechsel in das document Verzeichnis zur Datei howto.txt vom Benutzer it-learner.
cd /home/it-learner/document/howto.txt
Relativer Pfad: Diese Angabe beginnt immer beim aktuell gesetztem Verzeichnis.
/home/document cd /document/howto.txt
Fazit
Das navigieren in der Verzeichnisstruktur von Linux ist eine wichtige Fähigkeit, welche man für die Linux Administration unbedingt benötigt. Nach einiger Übung wird man feststellen, dass man mit dem Terminal viel schneller ist, als wenn man alles per Desktop und der Maus anklickt.
» Teil 4 « » Zur Übersicht der Artikelserie « » Teil 6 «
Steigere dein Wissen
Kostenlose Befehlsreferenzen und E-Books herunterladen
Hinweis: Mit dem cd-Befehl kann man in Verzeichnisse wechseln, nicht in Dateien 🙂
dau@N13xWU:~$ touch tmp/test.txt
dau@N13xWU:~$ cd tmp/test.txt
bash: cd: tmp/test.txt: Not a directory