Frage Wie kann ich das Layout des Ubuntu-Dateisystems verstehen?
In Windows sind vielleicht nur ein paar wichtige Ordner (wichtig, ich meine wichtig in meinem logischen Bild des Windows-Dateisystems) im Installationslaufwerk (in meinem Fall) C:\
). Nämlich Program Files
und Windows
. Ich bleibe einfach weg von Windows
Ordner und die "add remove Programmdateien" ist gut genug, um die program files
Ordner von Windows. Natürlich gibt es einen Ordner namens Users
wo die Benutzer (die keine Administratoren sind) nur auf ihre Ordner zugreifen können.
Daher gibt es ein klares Bild von dem Windows-Dateisystem. In Ubuntu, wenn ich den Ort erreiche /
Es gibt eine riesige Liste von Ordnern, von denen die meisten keine Ahnung haben, was sie enthalten. Das /bin
Ordner scheint das Äquivalent zu sein Windows
Ordner in Windows. Das /usr
Ordner scheint wie das Äquivalent des Users
Ordner in Windows. Aber auch die /home
Ordner sieht aus wie es die Rechnung passen kann.
Bitte verstehen Sie, dass ich verstehe, dass Ubuntu (Linux) einen anderen Charakter hat als Windows, d. H. Es muss nicht exakt das Äquivalent von Windows-Funktionen in Ubuntu sein. Alles, was ich suche, ist ein etwas schärferes Bild des Ubuntu-Dateisystems.
Diese Frage ist Teil einer größeren Frage, die ich aufspalte, um sie beantwortbarer zu machen. Die ursprüngliche Frage finden Sie hier:
http://sgsawant.wordpress.com/2012/05/17/whats-the-äquivalent-of-add-or-remove-programs-in-ubuntu/
202
2018-05-17 18:12
Ursprung
Antworten:
Sie können dies zum Beispiel auf Wikipedia nachlesen. Ein Ausschnitt:
Das Dateisystemhierarchie Standard (FHS) definiert die Hauptverzeichnisse und deren Inhalte in Linux-Betriebssystemen. In den meisten Fällen handelt es sich um eine Formalisierung und Erweiterung der traditionellen BSD-Dateisystemhierarchie.
Die FHS wird von der Linux Foundation verwaltet, einer Non-Profit-Organisation, die aus großen Software- und Hardwareherstellern wie HP, Red Hat, IBM und Dell besteht.
Die aktuelle Version ist 3.0, veröffentlicht am 3. Juni 2015.
Eine visuelle Darstellung mit einer kurzen Beschreibung:

Im Grunde hat Linux die Verzeichnisstruktur basierend auf der Funktion dessen, was benötigt wird, um das System so sicher wie möglich zu machen, mit der minimalen Anzahl von benötigten Berechtigungen aufgeteilt. Sonst muss jemand viel vermeidbare Arbeit verrichten.
Denken Sie daran, dass Unix und Linux als Mehrbenutzersysteme erstellt wurden und Windows für einen einzelnen Benutzer erstellt wurde. Alles andere kann aus dieser Idee erklärt werden. Sie können jedes Verzeichnis erklären, wenn Sie darüber nachdenken, dass es Multi-User und Sicherheit ist.
3 Beispiele:
Sie werden sehen, dass Dateien und Verzeichnisse, die nur Administratoren sind, in demselben Verzeichnis gesammelt werden: das s in /sbin
und /usr/sbin
und /usr/local/sbin
steht für System. Ein normaler Benutzer kann nicht einmal Programme starten, die sich dort befinden. Dateien, die ein normaler Benutzer starten kann, befinden sich in / bin, / usr / bin, / usr / local / bin, basierend darauf, wo er am logischsten sein sollte. Aber wenn sie nur Admin sind, sollten sie zum s
Version dieses Verzeichnisses.
Es gibt ein berühmtes Dienstprogramm namens fuser
. Sie können Prozesse damit beenden. Wenn ein normaler Benutzer diese verwenden könnte, wäre er in der Lage, Ihre Sitzung zu beenden.
Das gleiche gilt für /home
: / home / user1 ist die Eigenschaft von user1. / home / user2 ist die Eigenschaft von user2. user2 hat nichts zu tun, was in user1 zu Hause ist (und andersherum auch: user1 hat nichts zu tun, was in user2 zu Hause ist). Wenn sich alle Dateien in / home befinden würden und kein Benutzername darunter wäre, müssten Sie jeder Datei und jedem assess Berechtigungen geben, wenn jemand diese Dateien schreiben / entfernen darf. Ein Albtraum, wenn Sie Dutzende von Benutzern haben.
Zusatz in Bezug auf Bibliotheken.
/lib/
, /usr/lib/
, und /usr/local/lib/
sind die ursprünglichen Orte, von vor multilib
Systeme existierten und existierten, um das Zerbrechen von Dingen zu verhindern. /usr/lib32
, /usr/lib/64
, /usr/local/lib32/
, /usr/local/lib64/
sind 32- / 64-Bit-Multilib-Erfindungen.
Es ist keineswegs ein statisches Konzept. Andere Linux-Varianten haben dieses Layout optimiert. Zum Beispiel; derzeit werden Sie sehen Debian und Ubuntu viel Änderung im Layout der FHS, da SSD mit Read-Only-Dateien besser dran ist. Es gibt eine Bewegung in Richtung eines neuen Layouts, bei dem Dateien in ein "schreibgeschütztes" Verzeichnis / eine schreibbare Gruppe aufgeteilt werden, so dass wir eine root-Partition haben können, die schreibgeschützt (Partition für eine ssd) und beschreibbar ist (Sata Festplatte).
Das neue Verzeichnis, das dafür verwendet wird (nicht im Bild) ist /run/
.
240
2018-05-17 18:18
Gib diesem Befehl einen Versuch ...
man 7 hier
Ich hoffe es hilft
95
2018-05-17 19:58
Späte Antwort - Ich habe eine Roadmap für Anfänger erstellt. Wenn sie nach einer Datei suchen, aber nicht wissen, wo sie suchen sollen, können sie mit der Karte grob navigieren. Sie können ein hochauflösendes PNG herunterladen Hier. Sie können den zugehörigen Beitrag finden Hier. Ich werde sowohl die Datei als auch die Post aktualisieren, wenn es die Zeit erlaubt, und hilfreiche Kommentare enthalten.

37
2017-11-20 18:18
Dieser folgende Text zeigt die Verzeichnisstruktur.
mtk4@laptop:/$ pwd
/
mtk4@laptop:/$ tree -L 1
.
|-- bin
|-- boot
|-- cdrom
|-- dev
|-- etc
|-- home
|-- lib
|-- lost+found
|-- media
|-- mnt
|-- opt
|-- proc
|-- root
|-- run
|-- sbin
|-- selinux
|-- srv
|-- sys
|-- tmp
|-- usr
|-- var
Die Hauptkomponenten sind hier:
/boot
: Enthält den Bootloader
/home
: Enthält die Home-Verzeichnisse der Benutzer.
/bin
: Alle ausführbaren Binärdateien und Befehle, die von allen Benutzern auf dem System verwendet werden, befinden sich hier.
/sbin
: Dies enthält die systemfähigen Binärdateien, die normalerweise von Systemadministratoren verwendet werden.
/lib
: Enthält die Systembibliotheken, die die Binärdateien in / bin und / sbin unterstützen.
/etc
: Enthält die Konfigurationsdateien für Netzwerk, Boot-Zeit usw.
/dev
: Hier werden die Gerätedateien angezeigt, d. H. USB, Endgerät oder ein anderes Gerät, das an das System angeschlossen ist.
/proc
: Enthält Informationen über den laufenden Prozess.
/tmp
: Dies ist das temporäre Verzeichnis, in dem viele Prozesse die erforderlichen temporären Dateien erstellen. Dies wird bei jedem Booten der Maschine gelöscht.
Für mehr Details, Thegeekstuff Link erklärt perfekt das generische Linux-Dateisystem.
36
2018-05-17 18:38
\Users
ist äquivalent zu /home
. Der Name von /usr
ist ein historisches Artefakt.
Das kombinierte Äquivalent von \Windows
und \Program Files
ist die Kombination von /bin
, /boot
, /etc
, /lib
, /sbin
, /tmp
, /usr
und /var
. Linux und Windows teilen die installierte Software anders auf. Windows unterscheidet zwischen dem Betriebssystem und den Companion-Programmen. Linux macht diese Unterscheidung nicht auf die gleiche Weise; Die meiste, wenn nicht die gesamte Software, kommt über Ubuntu (der Verteiler) und wird in derselben Verzeichnishierarchie installiert, und da die Software vom Paketmanager verfolgt wird, ist es nicht notwendig, jedes Programm in einem eigenen Verzeichnis zu speichern. Unter Linux:
/etc
ist für Systemkonfigurationsdateien: Konfigurationsdateien, die alle Benutzer betreffen, unabhängig davon, ob sie für das Betriebssystem als Ganzes oder für eine bestimmte Anwendung gelten.
/usr
ist für Systemcode und Daten (Programme, Bibliotheken, Dokumentation usw.).
/var
ist für variable oder temporäre Daten: temporäre Dateien, Protokolle, Paket-Manager-Datenbanken, Drucker-Spools, Spiel speichern, etc. Es gibt auch /tmp
für temporäre Dateien, die bei Neustarts gelöscht werden können.
/bin
, /lib
und /sbin
im Stammverzeichnis haben Gegenstücke in /usr
. Die Dateien, die sich außerhalb befinden /usr
sind diejenigen, die früh im Boot-Prozess benötigt werden. Dies ist ein Relikt aus der Zeit, als Platten klein waren und /usr
möglicherweise auf einem Dateisystem, das zwischen mehreren Workstations über das Netzwerk freigegeben ist, ist dies auf den meisten Systemen keine sinnvolle Unterscheidung.
/boot
enthält einige Dateien, die nur zum Starten des Betriebssystems und nicht für den täglichen Betrieb benötigt werden.
Es gibt zusätzliche Verzeichnisse, die nichts mit Windows zu tun haben:
/root
ist das Home-Verzeichnis des Root-Benutzers. Der root-Benutzer ist ein Administratorkonto, das nicht an einen bestimmten Benutzer gebunden ist. Es ist der Benutzer, auf den Sie beim Ausführen wechseln sudo
. Ubuntu lässt den root-Benutzer nicht standardmäßig anmelden.
/media
und /mnt
sind Mount-Punkte: Hier können Sie die Dateisysteme anderer Betriebssysteme und Remote-Laufwerke sehen. Das Windows-Äquivalent ist andere Laufwerkbuchstaben.
/proc
und /sys
Systeminformationen anzeigen Unter Windows müssen Sie durch Menüs blättern oder Systembefehle aufrufen oder Programme von Drittanbietern installieren, um diese Informationen anzuzeigen.
Ubuntu folgt wie andere Linux-Distributionen in der Regel dem Linux Dateisystemhierarchie Standard.
19
2018-05-17 18:48
Ubuntu organisiert (wie alle UNIX-artigen Systeme) Dateien in einer hierarchischen Struktur, in der Beziehungen in Teams aus Kindern und Eltern gedacht werden. Verzeichnisse können andere Verzeichnisse sowie reguläre Dateien enthalten, die die "Blätter" des Baums sind. Jedes Element des Baums kann Referenzen durch einen Pfadnamen sein; Ein absoluter Pfadname beginnt mit dem Zeichen / (das das Stammverzeichnis angibt, das alle anderen Verzeichnisse und Dateien enthält). Dann wird jedes untergeordnete Verzeichnis aufgelistet, das durchlaufen werden muss, um das Element zu erreichen. Jedes Verzeichnis wird durch ein / -Zeichen getrennt.
Ein relativer Pfadname ist einer, der nicht mit / beginnt; In diesem Fall wird der Verzeichnisbaum ausgehend von einem gegebenen Punkt durchlaufen, der sich abhängig vom Kontext, dem aktuellen Verzeichnis, ändert. In jedem Verzeichnis gibt es zwei spezielle Verzeichnisse, die aufgerufen werden. und .., die sich jeweils auf das Verzeichnis selbst und auf sein Elternverzeichnis beziehen.
Die Tatsache, dass alle Dateien und Verzeichnisse eine gemeinsame Wurzel haben, bedeutet, dass, selbst wenn mehrere verschiedene Speichergeräte auf dem System vorhanden sind, sie alle als Verzeichnisse irgendwo in der Struktur gesehen werden, sobald sie an der gewünschten Stelle montiert sind
Hier finden Sie Beispiele und weitere Informationen:
5
2018-05-17 18:18