Umount

Aus Foxwiki
Version vom 15. Juli 2024, 11:17 Uhr von Dirkwagner (Diskussion | Beiträge) (Textersetzung - „Kategorie:Linux/Dateisystem/Befehl“ durch „Kategorie:Linux/Dateisystem“)

umount entfernt Dateisysteme aus der Dateisystemhierarchie

Beschreibung

Datenträger und Netzwerk-Mounts sollten aus der Dateisystemhierarchie entfernt werden, bevor sie aus dem System entfernt werden

  • umount führt Dateisystemhierarchie Befehl zur Sicherung aller im Cache gehaltenen Daten aus.
  • Weil das eine Weile dauern kann, ist es wichtig, mit dem Entfernen des Geräts so lange zu warten, bis der Schreibvorgang beendet ist.

umount kann nur inaktive Dateisysteme absetzen. Das bedeutet, dass

  • kein anderes Dateisystem auf dem abzusetzenden System aufgesetzt sein darf
  • kein Prozess ein Verzeichnis des abzusetzenden Systems als Arbeitsverzeichnis benutzen darf
  • kein Benutzer auf dieses Dateisystem zugreifen darf

Ein Dateisystem nicht ausgehängt werden kann, wenn es »belegt« ist, zum Beispiel wenn darauf befindliche Dateien geöffnet sind, wenn sich das Arbeitsverzeichnis eines Prozesses dort befindet oder eine dortige Auslagerungsdatei in Benutzung ist.

  • Ein »lockeres« Aushängen vermeidet dieses Problem, kann aber andere Probleme hervorrufen. Siehe die Beschreibung zu --lazy unten.
  • Andernfalls wird eine Meldung der Form ...device busy ausgegeben.

Installation

Der Befehl umount ist Teil des Pakets util-linux, welches heruntergeladen werden kann von: Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.

Syntax

# umount -a [-dflnrv] [-t Dateisystemtyp] [-O Option …]
# umount [-dflnrv] {Verzeichnis|Gerät}
$ umount -h|-V

Parameter

  • Ein Dateisystem wird durch das Verzeichnis angegeben, in dem es eingehängt wurde.
  • Die Angabe des speziellen Gerätes, auf dem sich das Dateisystem befindet, kann unter Umständen auch funktionieren.
    • Aber diese Vorgehensweise ist veraltet, hauptsächlich deswegen, weil dies nicht funktionieren würde, wenn das Gerät in mehr als einem Verzeichnis eingehängt ist.

Optionen

-a --all Alle in /proc/self/mountinfo (oder in der veralteten /etc/mtab) aufgeführten Dateisysteme werden ausgehängt, außer den proc-, devfs-, devpts-, sysfs-, rpc_pipefs- und nfsd-Dateisystemen. Diese Liste der Dateisysteme kann durch die Angaben in der Aushängeoption --types ersetzt werden.
-A --all-targets hängt alle Einhängepunkte des aktuellen Einhängenamensraums für das angegebene Dateisystem aus. Das Dateisystem kann durch einen der Einhängepunkte oder dessen Gerätenamen (oder UUID usw.) angegeben werden. Wenn diese Option zusammen mit --recursive verwendet wird, werden alle innerhalb dieses Dateisystems eingebetteten Dateisysteme rekursiv ausgehängt. Diese Option wird nur auf Systemen unterstützt, auf denen /etc/mtab ein Symlink auf /proc/mounts ist.
-d --detach-loop gibt auch das Loop-Gerät frei, sofern das ausgehängte Gerät ein Loop-Gerät war. Diese Option ist für die von mount(8) initialisierten Geräte nicht notwendig, in diesem Fall ist die »Autoclear«-Funktionalität standardmäßig aktiviert.
- --fake führt alles aus, außer den tatsächlichen Systemaufruf oder die Ausführung des Umount-Hilfsprogramms; die Aushängung des Dateisystems wird »vorgetäuscht«. Diese Option kann zum Entfernen von Einträgen aus der veralteten /etc/mtab verwendet werden, die zuvor mit der Option -n ausgehängt wurden.
-f --force erzwingt die Aushängung (im Falle eines unerreichbaren NFS-Dateisystems). Beachten Sie, dass diese Option nicht gewährleisten kann, das sich der Umount-Befehl nicht aufhängt. Es wird dringend empfohlen, absolute Pfade ohne Symlinks zu verwenden, um unerwünschte »readlink«- und »stat«-Systemaufrufe auf unerreichbaren NFS-Dateisystemen beim Aushängen zu vermeiden.
-i --internal-only ruft das Hilfsprogramm /sbin/umount.Dateisystem nicht auf, selbst wenn es existiert. Standardmäßig wird ein solches Hilfsprogramm aufgerufen, wenn es existiert.
-N --namespace Namensraum führt die Aushängung im angegebenen Einhänge-Namensraum aus. Der Namensraum ist entweder die Kennung des in diesem Namensraum laufenden Prozesses (PID) oder eine spezielle Datei, die diesen Namensraum repräsentiert. umount wechselt in den Namensraum, wenn es die Datei /etc/fstab liest, in die Datei /etc/mtab (oder /run/mount) schreibt und den Systemaufruf umount(2) aufruft, anderenfalls läuft es im ursprünglichen Namensraum. Das bedeutet, dass der Ziel-Einhängenamensraum keine Bibliotheken oder anderes Notwendiges enthalten muss, um den Befehl umount(2) auszuführen. Siehe mount_namespaces(7) für weitere Informationen.
-n --no-mtab hängt aus, ohne in die /etc/mtab zu schreiben.
-O --test-opts Option … hängt nur die Dateisysteme aus, für welche die angegebene Option in /etc/fstab gesetzt ist. Mehrere Optionen können in einer durch Kommata getrennten Liste angegeben werden. Jeder Option kann ein no vorangestellt werden, um zu veranlassen, dass für diese Option keine Aktion ausgeführt werden soll.
-q --quiet unterdrückt Fehlermeldungen der Form »nicht eingehängt«.
-R --recursive hängt jedes der angegebenen Verzeichnisse rekursiv aus. Das Absteigen in die Verzeichnishierarchie wird angehalten, wenn eine Aushängeaktion in der Kette scheitert, aus welchen Gründen auch immer. Die Beziehung zwischen den Einhängepunkten wird durch die Einträge in /proc/self/mountinfo bestimmt. Das Dateisystem muss durch den Pfad zum Einhängepunkt angegeben werden; ein rekursives Aushängen anhand des Gerätenamens (oder UUID) wird nicht unterstützt. Seit Version 2.37 werden auch alle über-eingehängten Dateisysteme ausgehängt (mehrere Dateisysteme im gleichen

Einhängepunkt).

-r --read-only versucht, das Dateisystem schreibgeschützt erneut einzuhängen, wenn das Aushängen fehlschlug.
-t --types Typ … gibt an, dass die Aktionen nur auf die Dateisysteme des angegebenen Typs angewandt werden sollen. Mehrere Typen können in einer durch Kommata getrennten Liste angegeben werden. Der Liste der Dateisystemtypen kann ein no vorangestellt werden, um zu veranlassen, dass für alle angegebenen Typen keine Aktion ausgeführt werden soll. Beachten Sie, dass umount die Informationen zu den eingehängten Dateisystemen vom Kernel bezieht (aus /proc/mounts) und sich die Dateisystemnamen von denen in der Datei /etc/fstab unterscheiden können (z. B.  »nfs4« und »nfs«).
-v --verbose aktiviert den ausführlichen Modus.
-V --version zeigt Versionsinformationen an und beendet das Programm.
-h --help zeigt einen Hilfetext an und beendet das Programm.

Konfiguration

UMGEBUNGSVARIABLEN

LIBMOUNT_FSTAB=<Pfad> setzt den standardmäßigen Ort der Fstab-Datei außer Kraft (wird für Suid ignoriert).
LIBMOUNT_MTAB=<Pfad> setzt den standardmäßigen Ort der Mtab-Datei außer Kraft (wird für Suid ignoriert).
LIBMOUNT_DEBUG=all aktiviert die Fehlersuch-Ausgabe von libmount.

Anwendung

AUSHÄNGEN OHNE SUPERUSER-RECHTE

  • Normalerweise kann nur der Superuser Dateisysteme aushängen.
  • Dennoch kann jeder ein Dateisystem aushängen, wenn die Datei fstab die Option user in der entsprechenden Zeile enthält. Weitere Details finden Sie in der Handbuchseite zu mount(8).
  • Seit Version 2.34 erlaubt umount Aushängevorgänge auch für Fuse-Dateisysteme, sofern die Einhängetabelle des Kernels die Kennung des Benutzers enthält.
  • In diesem Fall ist die Einhängeoption user= in der Datei fstab nicht erforderlich.
  • Seit Version 2.35 bricht der Befehl umount nicht ab, wenn die Zugriffsrechte des Benutzers gemäß den internen Sicherheitsregeln von libmount unzureichend sind.
  • Es gibt die Suid-Rechte ab und setzt als normaler Nicht-Root-Benutzer fort.
  • Dadurch werden Anwendungsfälle unterstützt, in denen keine Root-Rechte erforderlich sind (zum Beispiel bei Fuse-Dateisystemen, Benutzernamensräumen usw.).

LOOP-GERÄT

  • Unabhängig von der Datei /etc/mtab hängt der Befehl umount ein zuvor durch mount(8) initialisiertes Loop-Gerät automatisch aus.
  • In diesem Fall wird das Gerät mit dem Schalter »autoclear« initialisiert (siehe die Ausgabe von losetup(8) für weitere Details), anderenfalls ist es erforderlich, die Option --detach-loop zu verwenden oder losetup -d <Gerät> aufzurufen.
  • Die Autoclear-Funktionalität wird seit Linux 2.6.25 unterstützt.

EXTERNE HILFSPROGRAMME

Die Syntax der externen Aushänge-Hilfsprogramme

umount.Suffix {Verzeichnis|Gerät} [-flnrv] [-N Namensraum] [-t Type.Untertyp]

wobei Suffix den Dateisystemtyp angibt (oder den Wert eines uhelper=- oder helper=-Markers in der Mtab-Datei).

Die Option -t kann für Dateisysteme verwendet werden, die Untertypen unterstützen, zum Beispiel:

umount.fuse -t fuse.sshfs
  • Ein uhelper=soundso-Marker (unprivilegiertes Hilfsprogramm) kann in der Datei /etc/mtab erscheinen, wenn gewöhnliche Benutzer in der Lage sein sollen, einen Einhängepunkt auszuhängen, der in /etc/fstab nicht definiert ist (zum Beispiel für ein Gerät, das durch udisks(1) eingehängt wurde).
  • Ein helper=Typ-Marker der Mtab leitet alle Aushängeanfragen an das Hilfsprogramm /sbin/umount.Typ um, unabhängig von der Benutzerkennung (UID).
  • Beachten Sie, dass /etc/mtab als veraltet gilt und die helper=-Option und weitere Einhängeoptionen auf Anwendungsebene durch Libmount verwaltet werden.

Links

Dateien

  1. /etc/mtab, Tabelle der eingehängten Dateisysteme (veraltet, diese wird üblicherweise durch einen Symlink auf /proc/mounts ersetzt)
  2. /etc/fstab, Tabelle der bekannten Dateisysteme
  3. /proc/self/mountinfo, Durch den Kernel erstellte Tabelle der eingehängten Dateisysteme

Man-Pages

  1. umount(2)
  2. losetup(8)
  3. mount_namespaces(7)
  4. mount(8)

Intern

Weblinks

Kontrollfragen

Testfrage 1

Antwort1

Testfrage 2

Antwort2

Testfrage 3

Antwort3

Testfrage 4

Antwort4

Testfrage 5

Antwort5