Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Lösung des Rätsels der Linux-Dateiplatzierung: Wo landen Dateien am besten?

Lösung des Rätsels der Linux-Dateiplatzierung: Wo landen Dateien am besten?

王林
王林nach vorne
2023-06-08 21:42:351100Durchsuche
  • Stellen Sie sich vor, Sie starren auf eine Reihe obskurer Verzeichnisnamen in Linux. Sie möchten wissen, wo Sie einen bestimmten Dateityp ablegen sollten. Also habe ich die Dateien nach dem Zufallsprinzip in /usr/share abgelegt, in der Hoffnung, dass dies korrekt gemacht wurde.
  • Ein paar Tage später wird Ihnen klar, dass es in /var/local sein sollte.

破解 Linux 文件安放之谜:哪里才是绝佳文件归宿?

  • Wir alle haben ähnliche Erfahrungen gemacht. Die Verzeichnisstruktur von Linux kann sehr verwirrend sein und manchmal ergibt sie keinen Sinn. Was bedeuten diese Namen eigentlich? Wo ist der „richtige“ Ort für die Datei?
  • Machen Sie sich bereit, Ihr Linux-Verzeichnis zu entschlüsseln, während wir uns auf eine Reise durch die Zeit begeben, um Ihre Zukunft stressfreier zu gestalten. In diesem Artikel verraten wir, was diese Namen bedeuten und wo sich gängige Dateitypen befinden.
  • /bin

破解 Linux 文件安放之谜:哪里才是绝佳文件归宿?

  • Dies ist der primäre Speicherort für ausführbare Binärdateien, die das System benötigt (daher der Name „bin“). Diese grundlegenden Binärdateien werden vom System während des Startvorgangs benötigt, um einen erfolgreichen Abschluss sicherzustellen. Hier finden Sie grundlegende Befehle wie ls und top.
  • Wenn /usr/bin beim Booten nicht verfügbar ist, wird /bin manchmal als symbolischer Link auf der obersten Ebene bereitgestellt.
  • /boot
  • Dieses Verzeichnis enthält alle Schlüsseldateien, die zum tatsächlichen Booten des Betriebssystems erforderlich sind. Dazu gehören Kerneldateien, Bootloader-Dateien (wie GRUB) und EFI-Dateien für moderne UEFI-Systeme.
  • Für Linux-Systeme ist dieses Verzeichnis eines der wichtigsten Verzeichnisse, denn wenn hier etwas schief geht, kann Ihr System möglicherweise nicht starten oder Sie wissen nicht einmal, wo Sie anfangen sollen.
  • /dev
  • /dev ist die Abkürzung für „Gerät“ und ist der Ort, an dem Linux Verweise auf die meisten angeschlossenen Geräte auf Ihrem System speichert, sowohl physische als auch virtuelle. Hier finden Sie Verweise auf Festplatten, USB-Peripheriegeräte, virtuelle Terminals und sogar leere Geräte, auf die Sie Dinge richten können, damit sie verschwinden.
  • Wenn Sie über die Befehlszeile auf ein Gerät zugreifen, auch wenn es sich nicht um physische Hardware handelt, besteht die Möglichkeit, dass es vorhanden ist.
  • /etc
  • Höchstwahrscheinlich haben Sie schon einmal im Verzeichnis /etc recherchiert. Hier speichert Linux alle seine Kernkonfigurationsdateien, nicht nur für seine eigenen Programme, sondern auch für die von Ihnen installierten Programme von Drittanbietern.
  • Wenn Sie die Art und Weise ändern müssen, wie das Programm ausgeführt wird, die Kernnetzwerkeinstellungen oder Crontab, sind diese alle in diesem Verzeichnis vorhanden.

破解 Linux 文件安放之谜:哪里才是绝佳文件归宿?

  • /home
  • Dies ist eines der aussagekräftigeren Top-Level-Verzeichnisse. Genau hier befindet sich das Home-Verzeichnis des Benutzers. Betrachten Sie es als einen separaten Bereich, den jeder Benutzer innerhalb des Betriebssystems hat. Normalerweise besitzen sie alle Dateien und Unterverzeichnisse in ihren entsprechenden Home-Verzeichnissen.
  • Wenn Sie dieses Verzeichnis auf einem gemeinsam genutzten Computer anzeigen, finden Sie möglicherweise viele Unterverzeichnisse, die nach jedem einzelnen Benutzer benannt sind. Nach der Anmeldung können Sie auf den meisten Systemen mit dem ~-Zeichen im Pfad auf Ihr Home-Verzeichnis verweisen. Der entsprechende Pfad ist /home/.
  • Dies ist der beste Ort, um persönliche Dateien zu speichern, die nur für Sie relevant sind. Bilder, Musikdateien, Tabellenkalkulationen oder der nächste tolle Roman sollten hier gespeichert werden. Sie sollten hier keine gemeinsam genutzten Programmkonfigurations- oder Systemebenendaten speichern.
  • /lib, /lib32, /lib64, …
  • Diese Verzeichnisse enthalten gemeinsam genutzte C-Bibliotheken und Kernelmodule. Diese Module und Bibliotheken bilden die Grundlage für die ausführbaren Binärdateien im zuvor erwähnten Verzeichnis /bin. Mit anderen Worten: Um das Betriebssystem tatsächlich zu starten und Standard-Binärdateien zu verwenden, benötigen wir die Bibliotheksdateien in diesen Verzeichnissen.
  • Hinweis: Wenn mehrere Bibliotheksdateien für verschiedene Architekturen vorhanden sind, werden Sie sehen, dass andere lib-Verzeichnisse vorhanden sind.
  • /lost+found
  • Dieses Verzeichnis ist sehr einfach. Hier finden Sie einige beschädigte Dateien, es wurden jedoch Versuche unternommen, sie wiederherzustellen. Dies wird normalerweise durch einen unerwarteten Stromausfall oder manchmal durch einen Hardwarefehler verursacht.
  • /media
  • Das ist auch sehr intuitiv. Dies ist ein Mountpunkt zum Mounten von Wechselmedien. In der Vergangenheit wurde es auf CDs, Disketten und sogar Zip-Laufwerken verwendet. Wenn Sie nun virtuelle ISO- oder CD-Images mounten, können diese hier zusammen mit USB-Flash-Laufwerken und anderen entfernbaren Flash-Medien angezeigt werden.
  • /mnt Dies ist ein allgemeinerer Mount-Punkt. Sie können hier Wechselmedien oder ein ganzes Dateisystem mounten. Heutzutage wird dies typischerweise zur Unterbringung externer Festplatten, NFS und anderer Remote-Dateispeicher verwendet.
  • Dieses Verzeichnis ist leer. Sie können entscheiden, was hier gemountet werden soll und wie es gemountet werden soll.
  • /opt
  • Dies ist die Abkürzung für „Option“ und wurde ursprünglich zur Unterbringung von Zusatzsoftwarepaketen verwendet. Diese Pakete sind in der Originalversion des Systems nicht enthalten und erfordern zusätzliche Kosten.
  • Heutzutage ist dies einer der wenigen Orte, an denen Sie Zusatzpakete installieren können (mit oder ohne zusätzliche Kosten). In einigen Fällen verwendet die Distribution möglicherweise überhaupt nicht /opt, aber dies ist ein Ort, an dem Sie Paketdaten von Drittanbietern und deren statische Konfigurationsdateien finden.
  • /proc
  • Dies ist ein einzigartiges Linux-Verzeichnis. Sie werden hier nichts speichern, und tatsächlich speichert das Betriebssystem hier nichts. Dies ist das Informationszentrum für den Linux-Kernel. Alle „Dateien“ in diesem Verzeichnis sind keine gewöhnlichen Dateien. Sie enthalten Metriken zu Prozessen, Speicher und anderen Subsystemen. Diese speziellen Dateien sind wie Fenster in die Funktionsweise des Kernels.
  • Durch einfaches Lesen der Dateien in diesem Verzeichnis können Sie einige der gleichen Daten erhalten, die auch andere Binärdateien erhalten.
  • /root
  • Dies ist ein weiteres einfaches, intuitives Verzeichnis. Dies ist das Home-Verzeichnis des Root-Benutzers. Wenn Sie als Root-Benutzer am System angemeldet sind, werden Sie feststellen, dass Ihr Home-Verzeichnis jetzt /root ist und nicht wie erwartet /home/root. Dies geschieht aus Sicherheitsgründen für den Fall, dass /home auf einer unzugänglichen oder, schlimmer noch, defekten Remote-Partition gemountet wird.
  • /run
  • Dieses Verzeichnis verwaltet weitere Start- und Laufzeitinformationen. Normalerweise finden Sie an diesem Ort die Prozess-ID oder PID-Datei. Diese Dateien beschreiben, wo ein Prozess ausgeführt wird, sodass andere Programme ihn später finden und steuern oder darauf verweisen können.
  • Zusätzlich können hier weitere temporäre Dateien wie Sperrdateien und Socket-Informationen abgelegt werden. Dieses Verzeichnis soll Laufzeitinformationen und keine persistenten Daten enthalten.
  • /sbin
  • Ähnlich wie /bin enthält das /sbin-Verzeichnis auch ausführbare Binärdateien, die das System benötigt. Der Unterschied besteht darin, dass die Binärdateien in diesem Verzeichnis spezielle Zwecke haben.Beide sind speziell für die Ausführung von Administratorfunktionen auf dem System konzipiert. Das bedeutet, dass sie leistungsstark genug sind, um erhebliche Änderungen oder Wartungsarbeiten am Betriebssystem vorzunehmen, weshalb sie normalerweise hier zu finden sind.
  • Hier finden Sie keine Binärdateien wie echo oder cat. Dieses Verzeichnis ist für Tools wie fdisk oder usermod reserviert.
  • /srv
  • Dies ist ein weiteres sehr vielseitiges Verzeichnis. In diesem Verzeichnis werden Dateien gespeichert, für deren „Bereitstellung“ das System verantwortlich ist. Wenn der Host beispielsweise ein Webserver wäre, könnten Sie hier alle Ihre HTML- und Bildressourcen platzieren.
  • /sys
  • Abhängig von der von Ihnen verwendeten Distribution und deren Version verfügen Sie möglicherweise über ein /sys-Verzeichnis auf Ihrem System. Dieses Verzeichnis ähnelt dem Verzeichnis /proc darin, dass es Geräte- und Kernelinformationen enthält, wird jedoch in einem strukturierteren Format dargestellt.
  • /tmp
  • Ein weiteres einfaches Verzeichnis. Dies ist ein Verzeichnis für temporäre Dateien. Sie können hier fast alles speichern, was Ihnen (oder dem Programm) gefällt, aber Sie können nicht erwarten, dass es ewig hält. Besonders zwischen Neustarts.
  • Wenn Sie einige unwichtige Daten bereitstellen oder das Ausgabeformat einer bestimmten Datei überprüfen müssen, ist die Platzierung hier eine Option. Ein zusätzlicher Bonus ist, dass es wahrscheinlich von selbst verschwindet, wenn Sie es vergessen.
  • /usr
  • Dieses Verzeichnis erfordert möglicherweise die Einführung eines speziellen Artikels. Gemäß der FHS-Spezifikation der Linux Foundation werden sie wie folgt beschrieben:
  • „Gemeinsam genutzte, schreibgeschützte Daten.“
  • Das bedeutet im Wesentlichen, dass sie problemlos zwischen Hosts übertragen werden können und dieselbe unveränderte Struktur und Hierarchie aufweisen sollten. Normalerweise enthält dieses Verzeichnis keine eindeutigen Hostdaten. Die Idee dahinter ist, dass das gesamte /usr problemlos im schreibgeschützten Modus auf einem anderen System gemountet werden kann.
  • In der Praxis wird dieses Verzeichnis jedoch tatsächlich zum Speichern beliebiger Informationen verwendet. In einigen Fällen finden Sie Dateien in /usr/share oder /usr/local. Sie finden auch Programmkompilierungen oder benutzerdefinierte Skripte, die in /usr/local/bin abgelegt sind.
  • Generell empfiehlt es sich, Konfigurations- oder Sonderdaten, die in keine der vorherigen Kategorien fallen, in unserem nächsten und letzten Verzeichnis abzulegen.
  • /var
  • Dies ist die Abkürzung für „Variable“ und hier werden die Variablendaten gespeichert.
  • Hier sind einige der Dinge, die traditionell hier gespeichert werden:
Druckerspulen
  • Sperrdateien
  • Debian apt und andere laufende Programm-Caches
  • E-Mail-Daten
  • Protokolle

Der Hauptzweck besteht darin, Behalten Sie das System bei. Alle zur Laufzeit verwendeten und geänderten dynamischen Daten werden im Verzeichnis /var gespeichert. Wenn Sie dynamische .conf-Dateien protokollieren oder speichern müssen, sind Sie hier richtig.

Darüber hinaus gibt es das Verzeichnis /var/local, das meiner Erfahrung nach oft zu einem umfassenden Speicherverzeichnis für verschiedene Konfigurationsdateien und andere Daten wird, die nicht ganz in andere Kategorien passen.

Zusammenfassung

Die hierarchische Struktur des Linux-Dateisystems ist sehr komplex und hat eine reiche Entwicklungsgeschichte. Sobald Sie mit der Bedeutung dieser Kurztitel vertraut sind, werden sie sehr intuitiv. Wenn Sie sich die Zeit nehmen, jedes Verzeichnis zu erkunden und den Standard selbst zu studieren, werden Sie nicht nur besser damit vertraut, wo Sie Ihre Dateien ablegen, sondern auch, wie Linux grundsätzlich funktioniert.

Das obige ist der detaillierte Inhalt vonLösung des Rätsels der Linux-Dateiplatzierung: Wo landen Dateien am besten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen