Das Dateisystemhierarchie-Standard (FHS) definiert a offener Standard für die Verzeichnis-Struktur vor dem UNIX-ähnlichBetriebssysteme. Das Standardisierung der Verzeichnisstruktur ist unter anderem wichtig für Software-Entwicklung und Paketverwaltung auf Plattformen mit einem Unix-ähnlichen Dateisystem. Daher ist die von used verwendete Verzeichnisstruktur BSD und Linux verwendet werden, finden Sie im Filesystem Hierarchy Standard.
Für die Systemadministration auf einer Unix-ähnlichen Plattform, wie z pc jetzt sofort Linux-Desktop, Einsicht in die Grundprinzipien und den Aufbau der FHS erforderlich. Die FHS ist Teil der Linux-Standardbasis und wird auf der Grundlage der IEEE 1003.n POSIX-Norm. Die FHS wird betreut von Die Linux Foundation.

Typisches Linux-Stammverzeichnis
Vorwort
Wie 'Festplatteninhalt', der Inhalt eines Computersystems, für den Benutzer sichtbar wird, ist bei "MS-DOS-Systemen" und "Unix-ähnlichen Systemen" sehr unterschiedlich. Auf einem Windows-Rechner sieht man Laufwerksbuchstaben (Laufwerksbuchstaben), C:, D: usw. gefolgt von Pfadnamen (Pfadnamen) wie C:WINDOWSSYSTEM32, das mit dem Namen einer Datei endet, zum Beispiel NOTEPAD.EXE.Wenn ein Laufwerk wie a Festplatte oder USB Stick hinzugefügt wird, erscheint ein neuer Laufwerksbuchstabe.
Ein festes System kann auf einem 'Linux-ähnlichen' System gesehen werden. Die Spitze des 'Baums', die oberste Hierarchie ist immer a Schrägstrich ohne Zugabe, egal wie viele Steine in den 'Baum' fallen Verzeichnis's sind /bin, /dev, /home, /lib und so weiter, auf alle POSIXSysteme finden Sie diese Struktur.Diese Struktur dient praktischen Zwecken, jedes Verzeichnis hat eine Funktion. Die etablierten Vereinbarungen über diese Darstellung von Verzeichnissen und Dateien sind das, worum es bei FHS geht.
Geschichte
Der Filesystem Hierarchy Standard wurde auf Initiative des initiative Dateisystemhierarchie Standardgruppe. Bevor die ersten Versionen des Filesystem Hierarchy Standards erstellt wurden, gab es bereits eine Reihe von Konventionen zur Klassifizierung von Dateien Unix-Dateisysteme.[1][2] Vor der Ankunft von Paketmanager Softwareinstallation und -verwaltung auf Unix-Plattformen erfolgte oft manuell und Ad-hoc-Basis hingerichtet.
- Am 14. Februar 1994 wurde FSSTND v1.0[3] veröffentlicht, wonach der 1.1[4] und 1,2[5] Versionen folgten.
- Am 26. Oktober 1997 wurde die FHS v2.0[6] veröffentlicht.
- Am 4. Dezember 2000 wurde FHS v2.1[7] veröffentlicht, mehr als ein halbes Jahr später folgte die Version 2.2.[8]
- Am 29. Januar 2004 wurde die FHS v2.3 werd[9] veröffentlicht.
- Am 3. Juni 2015 wurde die FHS v3.0 veröffentlicht.[10]
Dateieigenschaften
Die Dateien im Dateisystem werden in Abhängigkeit von ihrer Funktion und ihren Eigenschaften innerhalb eines gut organisierten Systems klassifiziert. Einige Eigenschaften der Verzeichnisse und Dateien sind in den Tabellen farblich gekennzeichnet.
Statisch vs. Variable
| Farbcode | Eigenschaften |
|---|
Statisch
| - Der Inhalt eines statischen Ordners oder Verzeichnisses wird normalerweise während der Systeminstallation im Verzeichnis abgelegt. Auf den Inhalt eines statischen Verzeichnisses kann in der Regel nur vom Benutzer zugegriffen werden Systemadministrator, der Benutzer mit dem Namen 'Wurzel' kann beim Installieren, Aktualisieren oder Aktualisieren von Software geändert werden.
|
Variable
| - Ein variabler Ordner oder ein Verzeichnis dient zum Speichern temporärer und variabler Daten und Dateien. Die variablen Dateiverzeichnisse werden normalerweise benannt
var oder tmp.
- Um ein System zu optimieren, werden variable Verzeichnisse manchmal als separate, schnell zugängliche bezeichnet Partitionen auf einen Festplatte erstellt. Während der Format für diese variablen Verzeichnisse können die am schnellsten erreichbaren Zylinder einer Festplatte reserviert werden.
|
Wesentlich vs. Optional
| Farbcode | Eigenschaften |
|---|
Wesentlich
| - Diese statischen Verzeichnisse enthalten wesentliche Teile des Systems, die u. a. beim Hochfahren und Arbeiten im System benötigt werden Einzelbenutzermodus.
|
Optional
| - Optionale Verzeichnisse müssen nicht in einem Dateisystem vorhanden sein, das dem FHS-Standard entspricht. Diese Verzeichnisse werden innerhalb des FHS definiert, um ihre Speicherorte innerhalb des Dateisystems zu reservieren und ihre Namen aufzuzeichnen. Der Inhalt eines optionalen Verzeichnisses kann entweder statisch oder variabel sein.
|
Dateien teilen
Im Filesystem Hierarchy Standard sind alle Dateien und Verzeichnisse (Ordner) unter dem Wurzelverzeichnis "/". Dies ist auch dann der Fall, wenn sich die Dateien an einem anderen physischen Ort (einem anderen Computer) befinden, z Netzwerkdateisystem. Dateien können mit anderen Hosts über Netzwerke geteilt werden, wenn sie eine Reihe von Bedingungen erfüllen. Architekturunabhängig Dateien können normalerweise zwischen verschiedenen Hosts geteilt werden, während Konfigurationsdateien im Allgemeinen nicht geteilt werden können. Einige Beispiele sind in der folgenden Tabelle aufgeführt.
| Teilbar | Nicht teilbar |
|---|
| Statisch | /usr/share/man/opt
| /Boot/usw
|
|---|
| Variable | /var/mail/var/spool/news
| /var/run/var/lock
|
|---|
Es gibt keine allgemeine Regel, nach der in allen Fällen zwischen gemeinsam nutzbaren und nicht gemeinsam nutzbaren Dateien unterschieden werden kann. Manchmal kann Architekturabhängigkeit eine Einschränkung darstellen. Als Ergebnis kann eine Datei mit einem Host mit derselben Architektur gemeinsam genutzt werden, während diese Datei möglicherweise nicht mit einem Host mit einer anderen Architektur gemeinsam genutzt werden kann.
Sekundäre und tertiäre Hierarchien
Neben der primären Hierarchie an der Wurzel des Dateisystems existieren im FHS sekundäre und tertiäre Hierarchien. Die sekundären und tertiären Hierarchien sind normalerweise Spiegelungen der primären Hierarchie. Die sekundäre und tertiäre Hierarchie enthalten Dateisysteme mit einer besonderen Funktion in Bezug auf die Dateien in der primären Hierarchie. Sekundäre und tertiäre Hierarchien finden Sie in /opt, /usr, /usr/local, /var und /var/opt.
Dateisystem
Die folgenden Beschreibungen gelten für die FHS-2.3-Spezifikation[9] herausgegeben von der Linux Foundation. Die Beschreibungen in den folgenden Tabellen sind für andere Versionen oder andere Implementierungen des FHS möglicherweise nicht korrekt.
/
Das Schrägstrich, /, gibt dem Wurzelverzeichnis des Dateisystems auf dem Gastgeber Auf.
| Verzeichnis | Beschreibung, Funktionen und Anforderungen |
|---|
/ | - Dies ist das Wurzelverzeichnis für das ganze Dateisystem.
- Benutzer dürfen keine Verzeichnisse oder Dateien im Stammverzeichnis erstellen.
|
/Behälter
| - Wesentlich Befehlszeilebinär's von allen Benutzern verwendet und in Einzelbenutzermodus verwendet werden, wie z
montieren, Katze, ls und cp.- Es sind keine Unterverzeichnisse erlaubt in
/Behälter Aussehen. - Die (harte oder symbolische Verknüpfung zum) Bourne-Schale
Sch muss in der sein /BehälterVerzeichnis.
|
/Boot
| - Dateien für die Bootloader und der Anlaufen des Systems, wie z. B. Datendateien für
RODEN oder LILO und drin.- Das Kerne muss rein
/ oder in /Boot Stand.
|
/das V
| - Gerätedateien zur Datenübertragung über Peripheriegeräte, wie Tastaturen (
tty), Festplatten (hda oder sda) und das leere "Vakuum" und Null-Geräte/dev/null und /dev/zero.- Im
/das V muss (einen Link zu) ein Programm haben MAKEDEV mit denen Gerätedateien erstellt werden können.
|
/usw
| - Gastgeber-Spezifisch Konfigurationsdateien für das ganze System.
- Unter dem
/uswHierarchie sollte keine Binärdateien enthalten. - Im Allgemeinen in
/usw viele kleine Konfigurationsdateien gespeichert.
|
/etc/opt
| - Enthält Verzeichnisse mit Konfigurationsdateien für die Anwendungen in
/opt.
|
/etc/sgml
| - Konfigurationsdateien für SGML.
|
/etc/X11
| - Konfigurationsdateien für die X Window-System, Ausgabe 11.
- In diesem Verzeichnis a
Xconfig-, ein XF86Config- oder ein XmodmapDatei. - Unterverzeichnisse können unter anderem Konfigurationsdateien enthalten für:
xinit, xdm und Fenstermanager Stand.
|
/etc/xml
| - Konfigurationsdateien für XML.
|
/Zuhause
| - Verzeichnis mit den Home-Verzeichnisse des Benutzer, das Dateien und persönliche Konfigurationsdateien speichert.
|
/lib
| - Bibliothek's mit Objektcode für Kernelmodule und Fahrer und der binärist in
/Behälter/ und /sbin/.- Unentbehrlicher Objektcode zum Booten des Systems und zum Laden und Ausführen von Programmen.
- Die (Links zum)
libc.so-Bibliotheken und die links/Lader ld.so muss sich in diesem Verzeichnis befinden. - Die (Link zum) C-Präprozessor brauche den namen
/lib/cpp haben.
|
/lib
| - Bibliotheken mit Objektcode für ein bestimmtes Rechnerarchitektur wie
lib32 oder lib64 für 32- und 64-Bit Prozessoren.
|
/Medien
| - Mount-Punkte vor dem Wechseldatenträger wie CD-ROMs, USB-Sticks, usw.
|
/mnt
| - Temporärer Mountpunkt für ein Dateisystem.
|
/opt
| - Verzeichnisse für optional Add-ons und andere Softwarepakete.
- Die Unterverzeichnisse in
/opt muss der Name eines Softwarepakets sein (Paket) oder ein Lieferant (Anbieter) tragen, wie /opt/<Paket> und /opt/<Anbieter>. Das Anbieter muss ein sein LANANA Anmeldung haben. - Die Verzeichnisse mit den Namen
/opt/bin, /opt/doc, /opt/include, /opt/info, /opt/lib und /opt/man sind der Systemadministration vorbehalten. - Für die spezifischen Dateien für Add-ons, Unterverzeichnisse wie
/opt/<Paket>/bin und /opt/<Paket>> Mann erstellt werden. - Konfigurationsdateien und Variablendateien sollten in Hierarchien wie
/etc/opt/<Paket> oder /var/opt/<Paket> untergebracht werden.
|
/proc
| - Ein virtuelles oder Pseudo-Dateisystem, das als Schnittstelle für den Datenaustausch zwischen Kernel und Anwendungen.
- Durch
/proc können Anwendungen Datenstrukturen können mit dem Kernel ausgetauscht werden, unter anderem mit Informationen über den Zustand von Prozesse und die Verwendung der Erinnerung.
|
/Wurzel
| - Heimatverzeichnis der Root-Benutzer.
|
/sbin
| - Wesentlich System-Binärdateien vor dem nur root-Systemadministration, Konfiguration, Booten und Initialisierung, wie z
drin, ip und fdisk.- Im
/sbin muss (ein Link zu) schließen Stand.
|
/srv
| - Standortspezifische Daten, die von Diensten auf dem System bereitgestellt werden, wie z
ftp und Lebenslauf, wird geliefert.
|
/tmp
| - Temporäre Dateien (siehe auch
/var/tmp). Diese Daten bleiben häufig zwischen Neustarts nicht bestehen. /tmp ist oft in der Größe begrenzt, wenn es vom Systemspeicher bereitgestellt wird.
|
/usr
| - Wurzel des sekundäre Hierarchie für Programme und schreibgeschützte Benutzerdaten.
- Enthält die meisten (Multi-)Benutzerdienstprogramme und Anwendungen.
|
/var
| - Wurzel des sekundär
/var Hierarchie mit Dateien zum Speichern von Daten, die sich während einer Sitzung häufig ändern, wie Protokoll- und Spooldateien und temporäre E-Mail-Dateien.
|
/usr
Das /usrVerzeichnis ist das zweitgrößte Verzeichnis im Dateisystem. Die Abkürzung steht für „unix system resources“ und hat nichts mit „user“ zu tun. Es ist ein gemeinsames Verzeichnis für alle Benutzer des Systems und enthält nur schreibgeschützt-Daten. Das bedeutet, dass die /usrVerzeichnis kann mit mehreren Hosts mit einem FHS-kompatiblen Dateisystem geteilt werden. Hostspezifische Daten oder veränderbare Daten sollten an anderer Stelle gespeichert werden.
| Verzeichnis | Beschreibung, Funktionen und Anforderungen |
|---|
/usr | - Wurzel der sekundären
/usr-Hierarchie. - Um Kompatibilität mit älteren Konfigurationen zu erreichen, beinhaltet
/usr oft die folgenden symbolischen Links:/usr/spool -> /var/spool/usr/tmp -> /var/tmp/usr/spool/locks -> /var/lock
|
/usr/bin
| - Binärdateien und Befehle von allen Benutzern geteilt, wie z Python-, perl- und tclDolmetscher.
|
/usr/games
| - Spiele und Lernsoftware.
|
/usr/include
| - Standard Header-Dateien für allgemeine Anwendungen.
|
/usr/lib
| - Bibliotheken mit Objektcode für Programmierung, Anwendersoftware und Binärdateien im
/usr/bin/ und /usr/sbin/.
|
/usr/lib
| - Bibliotheken mit Objektcode für ein bestimmtes Rechnerarchitektur wie
lib32 oder lib64 für 32- und 64-Bit Prozessoren.
|
/usr/local
| - Das tertiäre
/usr/local Hierarchie für lokale Daten, spezifisch für diesen Host.- Die Dateien im
/usr/localVerzeichnis sind für die Verwendung auf dem lokalen Host vorgesehen, damit /usr/local sollte nicht in ein Netzwerk eingebunden werden.
|
/usr/sbin
| - Nicht wesentliche Systembinärdateien, wie z Dämonen für verschiedene Netzwerkdienste.
|
/usr/share
| - Das tertiäre
/usr/share Hierarchie mit architekturunabhängig gemeinsam nutzbare Dateien, wie Dokumentationsdateien.
|
/usr/src
| - Quellcode, wie den Kernel-Quellcode mit Header-Dateien.
|
/usr/X11R6
| - X Window-System, Version 11, Version 6.
- wenn
/usr/X11R6 existiert, müssen folgende Links erstellt werden:/usr/bin/X11 -> /usr/X11R6/bin/usr/lib/X11 -> /usr/X11R6/lib/X11/usr/include/X11 -> /usr/X11R6/include/X11
|
/usr/local
Tertiäre Hierarchie für lokale, nicht teilbar Daten und Dateien, die für diesen Host spezifisch sind.
| Verzeichnis | Beschreibung, Funktionen und Anforderungen |
|---|
/usr/local | - Das
/usr/local/Das Verzeichnis ist für die Verwendung auf dem lokalen Host vorgesehen und sollte daher nicht in einem Netzwerk gemountet werden.
|
/usr/local/bin
| - Lokale Binärdateien
|
/usr/local/etc
| - Hostspezifische Systemkonfigurationsdateien für lokale Binärdateien.
- Mai als Link:
/usr/local/etc -> /etc/local
|
/usr/local/games
| - Lokale Binärdateien für Spiele und Lernsoftware
|
/usr/local/include
| - Lokale Header
|
/usr/local/lib
| - Binäre Bibliothek.
|
/usr/local/lib
| - Muss umgesetzt werden als
/lib oder /usr/lib existiert.
|
/usr/local/man
| - Lokale Handbuchseiten
|
/usr/local/sbin
| - Binärdateien des lokalen Systems
|
/usr/local/share
| - Lokal freigegebene Dateien
|
/usr/local/src
| - Quellcode
|
/usr/share
Die tertiäre Hierarchie für teilbar Daten und Dateien, auf die verschiedene Hosts in einem Netzwerk zugreifen können.
| Verzeichnis | Beschreibung, Funktionen und Anforderungen |
|---|
/usr/share | - Die Architektur- unabhängige gemeinsame Datendateien wie Dokumentation.
|
/usr/share/dict
| - Glossare.
|
/usr/share/doc
| - Dokumentation.
|
/usr/share/games
| - Statische Daten für Spiele.
|
/usr/share/info
| - GNU Info-Systemverzeichnisse.
|
/usr/share/locale
| - Gebietsschema (lokale) Informationen.
|
/usr/share/man
| - Handbuch
MannSeiten.
|
/usr/share/misc
| - Sonstiges.
|
/usr/share/nls
| - Support-Kataloge in der Sprache des Benutzers.
|
/usr/share/sgml
| - Freigegebene SGML-Dateien.
|
/usr/share/termininfo
| - Verzeichnisse für die Termininfo-Datenbank.
|
/usr/share/tmac
| - troff-Makros, die nicht mit grotf geliefert werden.
|
/usr/share/xml
| - Freigegebene XML-Dateien.
|
/usr/share/zoneinfo
| - Informationen zur Zeitzone.
|
/var
/var enthält variable Datendateien. Dazu gehören Spool-Verzeichnisse und Protokolldateien sowie temporäre Dateien.
- Einige Teile von
/var können nicht zwischen verschiedenen Hosts geteilt werden, wie z /var/log, /var/lock und /var/run. - Andere Dateien können geteilt werden, insbesondere die Dateien in
/var/mail, /var/cache/man, /var/cache/fonts und /var/spool/news.
| Verzeichnis | Beschreibung, Funktionen und Anforderungen |
|---|
/var | - Wurzel der sekundären
/var-Hierarchie.- Benutzeranwendungen sollten keine Dateien im Stammverzeichnis der
/varVerzeichnis erstellen.
|
/var/konto
| - Die aktuell aktiven Protokolle mit Prozessdaten.
|
/var/cache
| - Platz für die Aufbewahrung von Cache-Daten im Softwarebereich. Die Daten werden lokal in zeitaufwendigen IOOperationen oder Berechnungen.
|
/var/crash
| - Speicherplatz zum Speichern von Crash-Dump-Daten.
|
/var/spiele
| - Platz zum Speichern temporärer Daten aus Spielen.
|
/var/lib
| - Hierarchie mit persistenten Informationen über den Zustand des Systems wie:
- Daten, die sich während der Programmausführung ändern;
- Datenbanken, Verpackungssystemdaten usw.
|
/var/lock
| - Dateien sperren. Dateien, die verfolgen, welche Ressourcen und Dateien verwendet werden.
|
/var/log
| - Diverse Logfiles.
|
/var/mail
| - Briefkasten von Benutzern.
|
/var/opt
| - Variable Daten der Pakete in
/opt sollte aufbewahrt werden in /var/opt/, wahr <subdir> der Name des Unterverzeichnisses in /opt Hier werden die statischen Daten eines Add-On-Softwarepakets gespeichert
|
/var/run
| - Informationen zum System seit dem letzten Booten, z. B. Informationen zu aktuell angemeldeten Benutzern und aktiven Dämonen.
|
/var/spule
| - Spool-Aufträge, die auf die Verarbeitung warten, z. B. eine Druckwarteschlange und ungelesene E-Mails.
|
/var/tmp
| - Temporäre Dateien, die zwischen aufeinanderfolgenden Neustarts aufbewahrt werden sollten.
|
/var/yp
| - Datenbank des Netzwerkinformationsdienstes (NIS).
|
Siehe auch
Verweise
Externe Links