Was machen alle diese Verzeichnisse?
Heather/Squishy
Der Sommer ist endlich angekommen und ich könnte nicht glücklicher sein, außer das damit auch der Heuschnupfen kommt. Ich kann einfach nicht gewinnen. Ich bin sicher, dass Linuxneulinge (und sogar einiger alter Hasen) sich ähnlich fühlen wenn sie die unzähligen Linux Verzeichnisstruktur sehen.
Ich will damit sagen, wer weiß schon was in den /usr-Ordner gehört? Oder, wer kann sich daran erinnern, dass Mediaeinheiten immer unter media:// oder /mnt gemountet werden? Andererseits denke ich, gerade meine eigene Frage beantwortet zu haben, oder? Lassen Sie das eine Warnung an alle langzeitigen Linux Nutzer sein: Sie werden ein dummes altes Dienstmädchen, das nichts besseres zu tun hat als sich unbrauchbare Informationen über Verzeichnisstrukturen, Mediadateibeschreiber und andere Dinge zu merken, ohne die wir gut leben können.
Im Interesse der Erziehung des Wunsch-Computerfreaks werde ich Ihnen einige dieser Verzeichnisse und ihre Funktionen vorstellen. Ich verwende viele meiner Informationen von diesem Dokument: http://www.pathname.com/fhs/. Ich habe ihre neueste pdf-Datei, aus der ich viel verwende, heruntergeladen. Wenn Sie ein ernstzunehmender Computerfreak werden wollen, laden Sie es sich herunter und lesen Sie sich es durch (auch wenn es teilweise sehr, sehr trocken geschrieben ist). Prämienpunkte gehen an die, die sich mindestens die Hälfte der 52 Seiten merken können.
Wenn Sie kein Entwickler sind, sorgen Sie sich nicht beim Versuch alle Dateien zu verstehen oder sich zu merken, die in die in diesem Artikel besprochenen Ordner gehören. Wo ich es passend finde, werde ich die für einen normalen Benutzer wichtigen Ordner hervorheben. Den Inhalt einige Ordner werde ich nur grob beschreiben, da sie nur für einen sehr kleinen Teil der Leser nützlich ist. (Wenn Sie an weiteren Einzelheiten über diese Bereiche des Dateisystems interessiert sind, empfehle ich die FHS pdf-Datei. Obwohl sie nicht sehr gut geschrieben ist, enthält sie viel Material, welches den Rahmen dieses Artikels übersteigt.)
Jetzt da wir etwas vom Hintergrund erfahren haben lassen Sie uns mit dem / (Wurzel) Ordner beginnen. Zum /root-Ordner, der damit nichts zu tun hat, kommen wir am Ende dieses Artikels. Nach dem FHS Handbuch sollte / folgendes enthalten:
„Der Inhalt des Wurzeldateisystems muss ausreichend sein um das System zu starten, wiederherzustellen und/oder zu reparieren…, zur Wiederherstellung und/oder Reparatur eines Systems, müssen die von einem erfahrenen Betreuer erforderlichen Hilfsprogramme im Wurzeldateisystem vorhanden sein.“
Auf gut Deutsch bedeutet das, dass der / Ordner in der Lage sein muss, ein richtig konstruiertes Mini-OS zu speichern, und außerdem die Hilfsmittel zur Wiederherstellung des Systems zu haben, die nach einem Zerschießen des Systems nötig sind.
Weiter zu /bin. Dieser Ordner ist für jeden wichtig, der ein nicht-startendes oder reparaturbedürftiges System hat, welches im Einzelnutzermodus behandelt werden muss. Weiter unten beschreiben wir wo sich die zur Wiederherstellung Ihres Computersystem benötigten Hilfsmittel befinden.
„/bin enthält Befehle, die vom Systemverwalter und von den Benutzern verwendet werden können, die aber auch benötigt werden, wenn keine anderen Dateisysteme gemountet sind (z.B. im Einzelnutzermodus). Es kann Befehle auch indirekte, von Skripts verwendete Befehle enthalten.“
Falls Sie Ihr eigenes System betreuen gibt es noch einige andere ähnliche Ordner. Diese sind /sbin, /usr/sbin und /usr/local/sbin. Ihr Inhalt und Zweck wird wie folgt beschrieben:
„Anwendungen für die Systemverwaltung (und andere ausschließliche root Befehle) werden in /sbin, /usr/sbin und /usr/local/sbin gespeichert. Zusätzlich zu den Binärdateien in /bin enthält /sbin Binärdateien für das Starten, das Wiederherstellen und die Reparatur des Betriebssystems. Wenn /usr problemlos gemountet wurde werden ausführbare Programme im Allgemeinen in /usr/sbin platziert. Lokal-installierte Systemsverwaltungsprogramme sollten in /usr/local/sbin platziert werden.“
Bis jetzt haben wir für die meisten Benutzer die fünf am häufigsten anzutreffenden Ordner einer jeglichen Linux Distribution angesprochen. Jedoch gibt viele mehr, die ebenfalls wichtig sind.
Das folgende Verzeichnis, /boot, wird nicht mehr als separate Partition genutzt, obwohl einige Nutzer ihr System immer noch so einrichten. Dieses ist manchmal der Fall, wenn Sie z.B. einen dreifach-Boot mit Fedora, Mandriva und PCLOS wünschen, aber alle jeweiligen Bootdateien in separaten Unterordnern innerhalb des /boot Ordners selbst getrennt aufbewahren möchten. Nach dem FHS sollte /boot folgendes beinhalten:
„Dieses Verzeichnis enthält alles für den Bootprozeß ausgenommen von Konfigurationsdateien, die nicht zur Bootzeit und zur Map Installation benötigt werden. /boot speichert also Daten, die verwendet werden bevor der Kernel Benutzermodus Programme ausführt.“
Der /dev-Ordner ist ein seltsames, von den meisten Benutzer nie benutztes, Verzeichnis, indem sich normalerweise Ihre Einheiten, wie z.B. Drucker, befinden:
„Das /dev-Verzeichnis ist der Standort spezieller- oder device Dateien.“
Jetzt kommen wir zum ganz speziellen /etc-Ordner, der die Konfigurationsdateien des Systems enthalten sollte. Wenn Sie jemals die Datei samba.conf oder die Ihrer Netzwerkschnittstelle bearbeiten mussten, dann wahrscheinlich in einem Unterordner des /etc-Ordners. Dies ist die FSH Definition:
„/etc: Hauptrechner-spezifische Systemkonfiguration. Die /etc-Hierarchie enthält Konfigurationsdateien. Eine „Konfigurationsdatei“ ist eine lokale Datei, die benutzt wird, um die Operation eines Programms zu steuern; sie muss statisch sein und kann keine ausführbare Anwendung sein.“
In anderen Distributionen können Sie einen /etc/opt und/oder /opt-FOrdner antreffen, der „… Konfigurationsdateien für zusätzliche Anwendersoftware Pakete [sic]“ enthalten soll. Da dieser Ordner nicht existiert und bei den meisten Distributionen nicht notwendig ist, beschreibe ich ihn nicht weiter.
Sehr selten wir ein Benutzer auf das /lib-Verzeichnis zugreifen, aber ich schließe es in dieser Besprechung ein, damit Sie wissen, das es gemeinsam benutzte Bibliotheken (wie DLL-Dateien in einem Windows-System) enthält. Aus dem Handbuch:
„Das /lib-Verzeichnis enthält die zum Systemstart und für Befehle im WurzelDateisystem benötigten gemeinsamen Bibliotheken [und Kernelmodule; Anmerkung der Autoren H/S], z.B.: Binärdateien in /bin und /sbin.“
Wenn Sie in Ihrem PCLOS-System den „Speichergerät“ Ordner auf Ihrem KDE-Desktop öffnen, werden Sie zu einem Ordner, der alle Ihre Partitionen und entfernbaren Media-Einheiten auflistet, gebracht. Der Oberordner von all dem wird /media genannt. Dieser Ordner wird meines Wissens in anderen Distributionen nicht gebraucht, ist aber, im Gegensatz zu den alten /mnt-Ordnern, für Neulinge wesentlich einfacher zu finden. Dazu unsere Anleitung:
„Dieses Verzeichnis enthält Unterverzeichnisse, die als Mountpunkte für entfernbare Media wie Disketten, CD-ROM und zip-Festplatten benutzt werden.“
Ein anderes, sehr großes Verzeichnis einer jeden Linux Distribution wird /usr genannt. Es hat sehr viele Unterverzeichnisse wie /usr/bin, /usr/lib, /usr/local, /usr/share, /usr/local/share, /usr/sbin, /usr/share/man, /usr/src. Ich werde hier nur die Informationen, für /usr und /usr/share/man, wiedergeben:
„/usr ist die zweite Hauptgruppe des Dateisystems. /usr enthält gemeinsame und ausschließlich mit Lese-Rechten versehene Daten. /usr sollte zwischen verschiedenen FHS-getreuen Hauptrechnern teilbar sein und darf nicht beschrieben werden. Alle Hauptrechner-spezifische oder mit der Zeit veränderliche Informationen muss anders wertig gespeichert werden.“
Und zu /usr/share/man:
„Dieses Kapitel beschreibt die Organisation der Systems und dessen Anwendungen, einschließlich /usr/share/man. … Das eigentliche <man dir> des Systems /usr/share/man. /usr/share/man enthält Informationen zur Verwendung von Befehlen und Daten unterhalb des / und /usr-Dateisystems.
Seiten, die die Verwendung einer Anwendung beschreiben werden in <man dir>/<locale>/man<section>/<arch> gespeichert.„
Für Benutzer von nicht-PCLOS Distributionen: In einigen neuen Distributionen haben die Entwickler-Teams die alten man-Seiten mit dem neueren, und vermutlich einfacher zu schreibenden, Info-Seiten ersetzt. Diese „neuen“ man-Seiten sind häufig aktueller und zuverlässiger und verwenden die Syntax: info <Abfrage hier eingeben>. Die Debian-Verteilung ist hierfür ein gutes Beispiel. Info-Seiten befinden sich unter /usr/share/info.
Das /var-Verzeichnis ist auf ein anderes, spezielles, vom Benutzer kaum benutztes Verzeichnis. Es wird /var genannt, weil es das Systemverzeichnis mit nicht-statischen (also variable, daher sein Name) Dateien ist. Normale Unterverzeichnisse und Dateien sind -
„/var enthält variable Dateien. Dies enthält die spool Ordner und Dateien, Verwaltungs- und Journaldaten … [sowie] die vorübergehenden und temporären Dateien… [Es enthält häufig], var/log, /var/lock, /var/run, /var/mail, /var/cache/man, /var/cache/fonts und /var/spool/news.“
Die letzten zwei Verzeichnisse, die wir betrachten werden, sind ziemlich einfach und werden wahrscheinlich von den meisten Benutzern während ihrer Linuxreisen untersucht werden. Diese sind die Verzeichnisse /root-und /home. Das /home-Verzeichnis verwenden wir täglich.
Die Ordner / und /root wurden und werden von Linux Neulingen sehr oft verwechselt (mich selbst eingeschlossen, Sie sehen, dass auch ich nicht perfekt bin). Um das Durcheinander zu beenden zitiere ich aus dem Handbuch über das /root-Verzeichnis damit Sie sehen wie es definiert wird:
„/root: Das Home-Verzeichnis des root Nutzers (optional). Das Homeverzeichnis von root kann durch Entwickler oder lokale Präferenz festgelegt werden, aber dieser Ort ist der empfohlene Standard.“
Wie Sie sehen können, ist /root lediglich ein glorifiziertes Homeverzeichnis für den Systemverwalter. Ich habe diesen Ordner auf allen aktuellen, von mir verwendeten Distributionen gefunden, mit Ausnahme von den Mikro-/einfach Zweck-Distributionen wie z.B. Smoothwall (Firewall-Distribution).
Das führt uns zum letzten Ordner, den /home-Ordner, der heute auf allen echten Linux Distributionen zu finden ist und ich denke nicht, dafür das Handbuch zitieren zu müssen. Es genügt zu sagen, das dies Ihr persönliches Home-Verzeichnis ist, indem Sie alles tun und lassen können, ohne Ihr System oder die Dateien der anderen Benutzer auf Ihrem Computer schädigen zu können. Der herkömmliche Pfad zu Ihrem /home-Ordner ist /home/IhrNutzerName, Bitte vermeiden Sie bei der Erstellung Ihres Nutzernamens symbolische Zeichen, die eine spezielle Bedeutung im Linux Kernel haben. Mit einer Ausnahme: wenn Sie eine andere Sprache als Englisch verwenden, die Zeichen mit Akzenten erfordert, dann geht das in Ordnung.
Prima, wenn Sie bis hierhin gelesen haben, können Sie sich auf die Schulter klopfen! Sie wissen jetzt, wozu einige dieser lustigen Ordner auf Ihrem Computer gut sind und wie Sie auf deren Inhalt zugreifen. Ich hoffe, dass Sie auch gelernt haben, wo Sie Ihre Spiele und andere, selbst installierte Programme platzieren, oder wie man auf die Anleitungen (man-Seiten) Ihrer glänzenden neuen Programme und auf deren Konfigurationsdateien zurückgreift.
Wie immer, wenn Sie irgendein Feed-back haben oder mir irgendwelche Fragen stellen möchten, schicken Sie eine Email an die Zeitschrift an trobins2006@gmail.com . Ich versuche, auf jedes Feed-back in zukünftigen Artikeln und innerhalb der Platzbegrenzungen dieser Zeitschrift einzugehen.
Genießen Sie Ihren Sommer und haben Sie keine Angst vor dem Herumspielen mit Ihrem Linuxsystem. Sollte irgendetwas verbockt werden, erinnern Sie sich einfach daran: Verbocken passiert eben, dann kommt die Zeit, mein Backup zu prüfen! (Denn natürlich haben Sie ein Backup remaster erstellt, nicht wahr?)