Wo ist was im Linux-System
Auf der Disk Station (DS) läuft ein ganz normales Linux. Ganz normal? Fast :)
Wenn man sich mit einem Terminalprogramm auf der DS einloggt (anmeldet), dann kann man sich mit der Login-Shell (Kommandozeile) unterhalten. Diese Shell (ash; ist Teil der BusyBox) versteht eine Menge Kommandos (Commands, Befehle zum Aufrufen von Shell-Funktionen und Programmen). Dazu gibt es bereits ein eigenes Kapitel, das die wichtigsten Kommandos vorstellt.
Die Shell positioniert durch das Anmelden den Benutzer auf sein Home-Directory (Heimat-Verzeichnis). Den Pfad und Namen dieses Directories kann man sich mit dem Kommando pwd (print working directroy) anzeigen lassen. Mit dem Kommando ls (list directory sorted) lässt sich eine Liste der Dateien und Unterverzeichnisse erzeugen. Schöner wird diese Liste durch Hinzufügen der Kommando-Option -l, also ls -l oder abgekürzt ll (= LL kleingeschrieben).
Mit dem Kommando cd / (change directory) positioniert man sich auf die Wurzel (root) des Dateisystems (File-Systems). Führt man anschließend einen ls -l aus, dann erhält man eine Übersichtsliste, die der folgenden ähnlich ist:
drwxr-xr-x 2 root root 4096 Aug 13 21:01 bin drwxr-xr-x 3 root root 4096 Aug 17 19:10 dev drwxr-xr-x 9 root root 4096 Aug 17 20:01 etc drwxr-xr-x 9 root root 4096 Aug 17 20:01 etc.defaults drwxr-xr-x 2 root root 4096 Aug 8 16:47 initrd drwxr-xr-x 8 root root 4096 Aug 13 20:58 lib lrwxrwxrwx 1 root root 11 Aug 13 20:58 linuxrc -> bin/busybox drwx------ 2 root root 4096 Aug 8 16:34 lost+found drwxr-xr-x 2 root root 4096 Aug 8 16:33 mnt drwxr-xr-x 31 root root 4096 Aug 18 15:57 opt dr-xr-xr-x 98 root root 0 Jan 1 1970 proc drwxr-xr-x 2 root root 4096 Aug 15 14:15 root drwxr-xr-x 2 root root 4096 Aug 13 20:58 sbin drwxr-xr-x 9 root root 0 Jan 1 1970 sys drwxrwxrwt 3 root root 580 Aug 18 18:53 tmp drwxr-xr-x 7 root root 4096 Aug 13 20:58 usr drwxr-xr-x 11 root root 4096 Aug 17 20:01 var drwxr-xr-x 11 root root 4096 Aug 13 20:59 var.defaults drwxr-xr-x 22 root root 4096 Aug 18 11:59 volume1 drwxrwxrwx 2 root root 4096 Aug 14 22:45 volumeUSB1
Wozu gibt es diese Struktur? Was ist nun in den jeweiligen Directories enthalten? Das sind die brennende Fragen. Die Struktur ist hierarchisch, dient der Übersichtlichkeit und gibt es seit der dritten Unix-Version, die 1973 geschrieben wurde. Am Anfang war sie noch sehr schlicht: Es gab nur /bin, /dev, /etc, /tmp, /lib und /usr. Mitte der 90er Jahre ist sie standardisiert worden (POSIX) und ist in fast jedem modernen Betriebssystem vorhanden (sogar in Windows wird sie eingerichtet, wenn man die Unix-Tool-Suite für Windows von Microsoft installiert).
/ | root |
---|---|
/bin | binaries - Verzeichnis, in dem alle Programme stehen, die von den Benutzern ausgeführt werden dürfen |
/dev | devices - Gerätedateien = symbolische Namen für die Treiberendpunkte der Geräte |
/etc | et cetera - alle wichtigen Konfigurationsdateien des Betriebssystems |
/etc.defaults | die originalen Konfigurationsdateien des Betriebssystems |
/initrd | (leer) enthält während des Bootens (Startphase) das initialisierende root-directory, welches später zu / wird |
/lib | libraries - alle wichtigen Standard-Funktionen der Programme, die, da sie wiederverwendbar sind, in sogenannten libraries (Bibliotheken) ausgelagert sind |
/linuxrc | rc = run commands = Datei mit automatischen Startprogrammen. Ist hier ein Link auf die BusyBox, die sich so als init-Prozess startet. Sie besitzt eine eingebaute Liste der Aktivitäten (inittab), die während der Initialisierungsphase ausgeführt werden müssen. Dies wird bei anderen Unix-/Linux-Systemen oft durch eine externe Datei namens /etc/inittab vorgegeben. Für den init-Prozess der BusyBox gilt die Regel: fehlt die externe inittab, wird die intern eingebaute inittab verwendet. |
/lost+found | wird als Directory vom fsck (file-system-check) genutzt, falls verwaiste Blöcke gefunden werden, werden sie hier abgelegt |
/mnt | mount point - Standard-Mount-Verzeichnis. Ist meist leer. Kann aber für temporäre Mounts benutzt werden. Was ist Mounten? Mounten ist die Verknüpfung zweier Dateisysteme unter Linux. |
/opt | optional packages - wird durch die Installation des ipkg (Itsy Package Management System) angelegt und enthält die optional hinzugeladenen Programme und Dateien. Ist eine Verknüpfung auf das Verzeichnis /volume1/opt (mount --bind /volume1/opt /opt). |
/proc | virtuelles Dateisystem, welches ein allgemeines Interface (Schnittstelle, die sich wie ein Dateisystem verhält) zu Kernel und Prozess-Informationen ist |
/root | Home-Directory des Benutzers root (Systemadministrator) |
/sbin | system binaries - Verzeichnis, in dem alle Programme stehen, die spezielle Privilegien benötigen um ausgeführt werden zu dürfen, Systemverwaltungsprogramme, Daemon-Programme (=Server-Programme, Dienste) |
/sys | virtuelles Dateisystem, welches ein allgemeines Interface (Schnittstelle, die sich wie ein Dateisystem verhält) zu Kernel-Einstellungen ist. Hier kann man zur Laufzeit Werte abfragen, aber auch setzen bzw. ändern. |
/tmp | virtuelles Dateisystem für temporäre Dateien (werden nicht auf der Platte gespeichert). Ist standardmäßig 50% des RAMs groß. Da es im virtuellen Speicher liegt, kann es ausgelagert werden (swap). Wird u.a. benutzt für die Interprozeß-Kommunikation (ähnlich shared Memory). |
/usr | Directory der User-Verzeichnisse. Hier werden auch die Programme und Einstellungen der Anwendungen abgelegt. Unter Anwendung versteht man die Programme, die nicht direkt zum Linux-Betriebssystem gehören. Ein wenig schwammige Abgrenzung, weil darunter auch die Benutzeroberflächen fallen und viele andere Programme, die man heut zu Tage eher zum Betriebssystem zählen würde |
/var | various - Verzeichnis, in dem alle Hilfs- oder Protokoll-Dateien liegen. |
/var.defaults | Verzeichnis, das die Struktur für den Aufbau des various-Verzeichnisse enthält |
/volume1 | Dateisystem-Mount-Point für die Datenpartition der Platte 1 (bei RAID, des ersten DatenRAIDs) |
/volumeUSB1 | Dateisystem-Mount-Point für die erste Partition des externen USB-Laufwerks |
Dateisysteme
Wer sich ein wenig zum Thema 'Dateisysteme' informieren möchte, findet hier [1] einen guten Einstieg.