Was genau passiert, wenn Sie ein Laufwerk "mounten"?

1175
agz

Welche grundlegenden Dinge passieren, wenn Sie ein Laufwerk mounten? Selbst wenn ein Laufwerk nicht gemountet ist, ist es für den Computer sichtbar (z. B. sudo fdisk -l / diskutil -list). Wenn ein Laufwerk gemountet ist, passiert nur, dass das Betriebssystem einen Pfad zum Gerät angibt, oder gibt es ein "magisches" Dateisystem?

2

3 Antworten auf die Frage

0
davidgo

Es gibt ein Dateisystem "Magie".

Es kann hilfreich sein, Ihr Festplattensystem in Schichten zu betrachten. Die unterste Ebene ist das Blockgerät, dann die Partitionen und dann das Dateisystem.

Wenn ein Laufwerk gemountet ist, ermittelt das Mount-Programm in Verbindung mit dem Kernel und möglicherweise / etc / fstab, welches Dateisystem sich auf der Partition befindet, und implementiert dann (über Kernel-Aufrufe) Standard-Dateisystemaufrufe, um die Bearbeitung des Dateisystems zu ermöglichen, einschließlich Lesen, Schreiben, Auflisten, Berechtigungen usw.

In der Tat können Sie problemlos weitere Ebenen hinzufügen, und es funktioniert alles auf dieselbe Weise. (Eine gängige Methode ist LVM, die sich zwischen der Partition und den Dateisystemen befindet und die Möglichkeit bietet, Festplatten zu vergrößern, hinzuzufügen und zu entfernen, sogar auf einem laufenden Dateisystem.) Ich erwähne dies, weil es zeigt, dass mehr dahinter steckt, als dem Gerät lediglich einen Pfad zu geben.

Auf ähnliche Weise werden unterschiedliche Kernel unterschiedliche Dateisysteme unterstützen (z. B. könnten dies ReiserFS, Btrfs usw. sein). Es ist auch möglich, ein Dateisystem (das immer noch gemountet und ausgehängt werden kann) mithilfe von Dateien im "Benutzerbereich" (Sicherung) zu implementieren. Dies ermöglicht beispielsweise das Einhängen von virtuellen Dateisystemen, die nicht Teil des Kernels sind, oder sogar von virtuellen Dateisystemen. Ich habe beispielsweise FTP-Verzeichnisse und sogar Remote-Pfade über ssh als Dateisysteme (und natürlich NFS und SAMBA-Freigaben) sowie verschlüsselte Dateien und das Zusammenführen mehrerer Verzeichnisse für ein vereinheitlichtes Dateisystem - all dies sind "magische" Arten, die über den Kernel ausgeführt werden, normalerweise mit Hilfe des Befehls mount.

0
sourcejedi

Wenn ein Dateisystem von einem Blockgerät aus gemountet wird, werden mehrere Vorbereitungen getroffen, einschließlich

  • Lesen von Dateisysteminformationen wie Dateisystemtyp, Version, Optionen, freier Speicherplatz ...
  • Überprüfen, ob das Dateisystem beim letzten Mal ordnungsgemäß heruntergefahren (nicht angehängt) wurde
  • Überprüfen, ob das Blockgerät schreibgeschützt ist (Disketten- / SD-Kartenumschaltung, CD-ROM / DVD).
  • Wiedergabe der im "Journal" des Dateisystems aufgezeichneten Vorgänge, sofern vorhanden.
0
Jalal Hajigholamali

Wenn Sie ein Linux-Dateisystem wie ext2, ext3, ext4, .. mounten, wird eine Kopie des Super-Blocks des Dateisystems für weitere Aktionen im Speicher abgelegt