Home · Kontakt · Impressum
contents index previous up next
Next: 4.5 Arbeiten mit Dateien Up: 4. Die Shell I Previous: 4.3.7 rmdir


4.4 Der Linux-Verzeichnisbaum

Den Linux-Verzeichnisbaum gibt es eigentlich nicht. Jede Distribution hat eine individuellen Verzeichnishierachie für sich entwickelt. Allerdings gibt es einige Verzeichnisse, die eigentlich überall vorhanden sein sollten. Als Leitlinie für den Baum gilt der sogenannte Dateisystemstandard FSSTND (Abkürzung für File System STaNdarD). Dieser wird auch als Filesystem Hierarchy Standard (kurz FHS) bezeichnet. Eine Übersicht über die wichtigsten Verzeichnisse liefert Abbildung 4.1.

Abbildung 4.1: Der Linux-Dateibaum
\includegraphics{lk-dateibaum.eps}

/
Dies ist Basis des Verzeichnisbaums und wird als Wurzel oder auch als root bezeichnet. Das Verzeichnis ist das Elternverzeichnis für alle anderen Verzeichnisse. Die folgenden Verzeichnisse müssen nach dem FSSTND als Hard- oder Softlink vorhanden sein: /bin, /boot, /dev, /etc, /lib, /mnt, /opt, /sbin, /tmp, /usr und /var. Die Verzeichnisse /home und /root sind optional, sollten aber vorhanden sein, wenn das passende Untersystem installiert ist.

/bin
Dieses Verzeichnis enthält diverse wichtige Kommandos, die für den Systemadministrator und für normale Benutzer wichtig sind. Dieses Verzeichnis darf nach FSSTND keine Unterverzeichnisse enthalten und folgenden Programme sollten enthalten sein. cat (4.5.2), chgrp (9.2.2), chmod (9.2.3), chown (9.2.1), cp (4.5.3), date (4.6.3), dd (4.5.4), df (10.8.2), dmesg (12.1.3), echo (4.6.5), false (8.2.3), hostname (18.2.4), kill (12.9.7), ln (10.7.3), login (), ls (4.3.3), mkdir (4.3.6), mknod (), more (4.5.9), mount (10.3.1), mv (4.5.6), ps (12.8.1), pwd (4.3.1), rm (4.5.7), rmdir (4.3.7), sed (7.7.6), sh (8.6.3), stty (5.1.3), su (8.1.2), sync (10.3.4), true (8.2.3), umount (10.3.3) und uname (14.4.1).

/boot
Enthält den Kernel und für das Booten wichtige Dateien.

/dev
Das Verzeichnis für die Gerätedateien.

/etc
Konfigurations- und Informationsdateien, darunter magic, DIR_COLORS, input_rc u. v. m.

/etc/rc.d
Enthält die für den Bootvorgang wichtigen Skripte und die rc-Verzeichnisse.

/etc/skel
Aus diesem Verzeichnis werden die Konfigurationsdateien (skeleton user files) für einen neuen Benutzer in dessen Heimatverzeichnis kopiert.

/etc/X11
Die Konfigurationsdateien des X-Window-Systems liegen hier.

/home
beherbergt die Heimatverzeichnisse, in denen normalerweise keine Rechte die Arbeit des Benutzers einschränken. Es ist somit für den normalen Benutzer von existentieller Bedeutung. In größeren LINUX-Systemen sollte für dieses Verzeichnis entsprechender Platzbedarf einkalkuliert werden, da hier die Benutzerdaten abgelegt werden. Häufig wird es dann auf einen Extra-Datenträger ausgelagert, der beim Systemstart separat gemountet wird.

/lib
Hier findet man die Bibliothek des C-Compilers, sowie sogenannte Shared Libraries, Programmbibliotheken (vereinfacht gesagt Programmteile), die von verschiedenen Anwendungen benutzt werden können. Diese Programmteile werden erst zur Laufzeit in den Arbeitsspeicher geladen, wenn das betreffende Programm sie benötigt. Dadurch und durch die Tatsache, daß verschiedene Programm darauf zugreifen können (shared) wird der Arbeitsspeicher wesentlich entlastet. Sind Sie Windows-Benutzer kennen Sie sicherlich .DLL-Dateien. Diese werden unter Windows entsprechend genutzt.

/Lost+found
Dieses Verzeichnis wird für wiederhergestellte Dateien verwendet.

/mnt
Hilfsverzeichnis zur Aufnahme von Dateisystemen, die in den LINUX-Verzeichnisbaum gemountet werden sollen.

/proc
ist ein virtuelles Dateisystem für Informationen über die laufenden Prozesse. Der Befehl ps (process status) liefert seine Angaben auf der Basis des Inhalts dieses Verzeichnisses. Jeder Prozeß erhält ein eigenes Unterverzeichnis in dem die Informationen über Ihn gespeichert werden.

/root
ist das Heimatverzeichnis der Superusers (root).

/sbin
Hier liegen die Befehle zur Systemverwaltung wie adduser, mit dessen Hilfe neue Benutzer definiert werden, fsck zur Überprüfung von Dateisystemen oder shutdown, mit dem das System heruntergefahren werden kann. Programme für Systemstart wie init, mit dem diverse Systemdienste (z. B. Drucker- und Zeitdienste) initiiert werden, darunter auch getty (ebenfalls in /sbin zu finden). Über getty erfolgt das Anmelden an der Konsole oder an Terminals, die via serieller Leitung mit dem LINUX-Rechner verbunden sind.

/tmp
Verzeichnis zum Zwischenlagern von Dateien. Hier darf jeder schreiben und lesen.

/usr
Enthält alle wichtigen Programme und Daten wie etwas das Online-Manual, die nicht zum Booten des Systems benötigt werden. Es kann ein Verzeichnis sein, das sich physikalisch auf einem anderen Datenträger befindet als das Bootmedium, auf einer CD-ROM etwa oder an einem entfernten NFS-Server. In dieser Situation müßte dieser Teil des Dateisystems nach dem Booten erst verfügbar gemacht werden. Für den Fall, daß es dabei zu Problemen kommen sollte, stehen die allernötigsten Befehle in verschiedenen anderen Verzeichnissen, z. B. /bin, zur Verfügung.

/usr/bin
enthält die Befehle, die allen Teilnehmern zur Verfügung stehen sollten. Ein Teil dieser Benutzer-Befehle befindet sich aus den oben genannten Gründen (vgl. Eintrag bei /usr) in /bin.

/usr/local
wird für Programme verwendet, die nicht Bestandteil des Betriebssystems sind, wie z. B. das Dokumentenverzeichnis für den Webserver.

/usr/local/bin
Hier werden die Binärdateien von diesen Programmen gespeichert. Dieses Verzeichnis sollte im Suchpfad des Benutzers enthalten sein.

/usr/local/sbin
ist für lokal installierte Administrationstools zuständig.

/usr/include
enthält die Standard-C/C++-Header-Dateien.

/usr/lib
Die statischen Programmbibliotheken sowie die Unterverzeichnisse für Bibliotheken verschiedener Programmiersprachen sind hier zu finden. Enthält auch Links zu X-Window-Dateien.

/usr/man
ist eins der Verzeichnisse für das Online-Manual. Eine unerschöpfliche Informationsquelle für den Benutzer.

/usr/sbin
Analog zu /usr/bin gibt es dieses Verzeichnis für den Superuser (root).

/usr/src
enthält die Quellcodes für die Systemprogramme.

/usr/src/linux
In diesem Unterverzeichnis ist der Quellcode des Systemkerns zu finden.

/usr/X11R6
Enthält Dateien für das X-Window-System. Oft auch nur ein Link auf ein anderes Verzeichnis.

/var
Informationsdateien für das System sind hier abgelegt. Dies sind Tabellen, die von LINUX laufend verändert werden, z. B. die Dateien utmp und wtmp, die Informationen über die eingeloggten Benutzer enthalten. (Standard-UNIX: Die Tabellen befinden sich zum größten Teil in /etc.)

/var/tmp
ist das Ziel der temporären Dateien, die von Anwendungen aus verschiedenen Gründen während eines Programmlaufs angelegt und verändert, zum Programmende aber wieder gelöscht werden. Editoren oder Textverarbeitungen speichern unter Umständen den vom Anwender geschriebenen Text zur Sicherheit in einer temporären Datei. Temporäre Dateien sind kurzlebig und ständiger Änderung unterworfen. Sie sind ein sprechendes Beispiel für die allgemeine Bedeutung des Verzeichnisses /var.

/var/spool
ist der Ort der Warteschlangen (Queues) diverser Spoolprogramme. Dies sind Programme, die im Hintergrund arbeitend Aufträge der verschiedenen Benutzer entgegennehmen und in einer vernünftigen Reihenfolge abwickeln. Da mehrere Benutzer (beinahe) gleichzeitig z. B. einen Druckauftrag an den Druckspooler geben können, sprich drucken wollen, muß dieser dafür sorgen, daß die einzelnen Aufträge sich nicht vermischen und etwa am Drucker zwei Texte zu einem - bunt gemischten - werden. als Hilfsmittel dienen ihnen Warteschlangen, in die die einzelnen Aufträge nacheinander eingereiht und (nach dem Wirkungsprinzip einer FIFO) nach und nach abgearbeitet werden.

/var/spool/lpd
Warteschlangen des Druckerspoolers

/var/spool/mail
Warteschlange für die elektronische Post

/var/spool/uucp
Warteschlange für den Kommunikationsdienst uucp (unix-to-unix-copy)

/var/spool/cron
ist für die Abwicklung von Zeitdiensten über den cron-Dämonenprozeß wichtig, der in regelmäßigen Abständen Tabellen in /var/spool/crontabs daraufhin überprüft, ob sie Anweisungen enthalten, die zum gegenwärtigen Zeitpunkt auszuführen sind.


contents index previous up next
Next: 4.5 Arbeiten mit Dateien Up: 4. Die Shell I Previous: 4.3.7 rmdir
  © 2004 by IT-Dozent Ole Vanhoefer · Zum Seitenanfang