Meine /home
Partition ist auf /dev/sda1
. Meine /
Partition ist auf /dev/sda2
.
Immer wenn ich eine Datei in einer Partition erstelle, wird sie in der Partition unter dem Verzeichnis /home
angezeigt ./
/home
Das Windows-Äquivalent besteht darin, eine Datei auf dem Laufwerk D zu erstellen. Die Datei ist dann auch auf dem Laufwerk C sichtbar.
Wie ist das möglich ?
Antwort1
Wenn Sie bisher nur mit Dateisystemen wie Windows oder Einzelfestplatten-/Partitionssystemen gearbeitet haben, sind Sie möglicherweise nicht mit dem Konzept von Einhängepunkten vertraut. (Obwohl Windows mittlerweile auch das Einhängen von Festplatten an einem Einhängepfad unterstützt, ist dies dort nicht so üblich wie unter Linux/Unix.)
Ihr Dateisystem in Linux/Unix ist eine verschachtelte Dateihierarchie. (Ordner sind auch Dateien ...)
Sie beginnen mit /
. Die Wurzel von allem. In Ihrem Fall ist dies auf Partition /dev/sda2
. Mit /home
auf /dev/sda1
erhalten Sie am Ende
/
dev/
pts/
- (Sachen)
sys/
home/
rebecca/
txtfile.txt
bob/
usw. (es gibt noch viele weitere Verzeichnisse, dies ist nur ein Beispiel)
Der Pfad von /
-> /home/rebecca/textfile.txt
soll also so transparent wie möglich sein. Es sieht also so aus, als ob es textfile.txt
in der /
Partition wäre, aber das ist es eigentlich nicht. Es ist in der /home/
Partition. Es ist nur soDasPartition befindet sich mounted
im /
Verzeichnis als /home
.
Versuchen Sie diese drei Befehle:
df /
df /home/
df /home/rebecca/textfile.txt
<-- einen echten Pfad zu einer Datei verwenden
Der df
Befehl zeigt Ihnen alle Ihre realen und virtuellen Dateisysteme an, die zum Zeitpunkt der Ausführung des Befehls auf Ihrem System gemountet sind. Die Verwendung df
wie in den obigen Beispielen dient zum Filtern der Ausgabe, damit Sie weniger Dinge gleichzeitig untersuchen können.
Kurz zusammengefasst- so funktionieren Unix- und Linux-Einhängepunkte, die dafür sorgen, dass alle Ihre verschiedenen Festplatten als eine einzige zusammenhängende Datei- und Verzeichnisstruktur erscheinen.
Antwort2
In einem POSIX-Dateisystemallesexistiert irgendwo im Stammverzeichnis des Dateisystems, das sich unter befindet /
. Auf Ihrer Stammpartition, die Sie unter gemountet haben /
, befindet sich ein Verzeichnis, /home
. Dieses Verzeichnis wird (vermutlich) alsEinhängepunkt(also der Ort, an dem sich ein gemountetes Dateisystem wie eine Partition befindet) für die home
Partition. Dort erstellte DateienSindIn der Partition wird eine Datei erstellt home
, deren Inhalt am Einhängepunkt dieser Partition sichtbar ist.
Ungeachtet der Probleme, die durch das Verschwinden des Inhalts entstehen /home
, würden Sie Folgendes tun:
# umount /home; mount /dev/sda1 /mnt; ls /mnt
Sie würden den Inhalt von dem sehen, washattewar in /home
, jetzt sichtbar bei /mnt
.
Tun Sie dies nicht wirklich. Dies ist ein demonstratives Gedankenexperiment.
Sie können eine Liste der an welchen Einhängepunkten eingehängten Dateisysteme sehen, indem Sie die Ausgabe des mount
Befehls beobachten, wenn keine Parameter angegeben sind.
Antwort3
Das Dateisystem (die Partition), das Ihre eigenen Dateien enthält, kann an beliebiger Stelle im Dateisystembaum platziert werden, der mit beginnt /
. Normalerweise befindet es sich unter /home
und Sie haben darin ein Verzeichnis, das Ihren Benutzernamen trägt. Sie könnten beispielsweise haben /home/rebecca
: .
UNIX-basierte Systeme (einschließlich Linux-basierter Systeme) verwenden ein einzelnes Root-Dateisystem ( /
). Windows-Systeme verwenden ein Dateisystem mit mehreren Root-Verknüpfungen ( C:
, D:
, usw.).
Wenn Sie eine Datei an einen Ort schreiben, müssen Sie sich normalerweise keine Gedanken darüber machen, in welche Partition sie geschrieben wird, solange genügend Speicherplatz zum Speichern des Dateiinhalts vorhanden ist.