Ich habe gelesen, dass es möglich ist, eine Festplatte, die ansonsten ausgelastet ist, mit der Option "Lazy" zu "mounten". Die Manpage hat dazu folgendes zu sagen:
umount - Dateisysteme aushängen
-l Träge aussteigen. Trennen Sie das Dateisystem jetzt von der Dateisystemhierarchie und bereinigen Sie alle Verweise auf das Dateisystem, sobald es nicht mehr ausgelastet ist. Diese Option ermöglicht das Aufheben der Bereitstellung eines ausgelasteten Dateisystems. (Erfordert Kernel 2.4.11 oder neuer.)
Aber worum würde es dabei gehen? Ich habe überlegt, warum wir Partitionen überhaupt entfernen:
- So entfernen Sie die Hardware
- Ausführen von Vorgängen auf dem Dateisystem, die beim Mounten nicht sicher sind
In beiden Fällen besteht IMHO lediglich darin, durch ein verzögertes Aufheben der Bereitstellung herauszufinden, ob die Bereitstellung des Datenträgers tatsächlich aufgehoben wurde, und Sie können mit diesen Aktionen fortfahren. Die einzige Anwendung für umount -l
scheint für unerfahrene Benutzer zu sein, die das Gefühl haben, etwas erreicht zu haben, was sie nicht erreicht haben.
Warum würden Sie ein fauler unmount verwenden?
Dies wird implementiert, um mehr Zeit für die Ausführung von Folgeaufgaben in Verwaltungsaufgaben zu gewinnen.
Wenn weitere, davon unabhängige Aufgaben in der Pipeline warten, können Sie die Bereitstellung verzögern und mit anderen Aufgaben im Stapel fortfahren.
Beispiel : Task 1 und Task 2 sind zwei Verwaltungsaufgaben, die hintereinander geplant sind.
Diese kopiert eine große Anzahl von Dateien von einer Projektpartition auf eine Sicherungspartition, z. B. / mnt / backupProj, die am Ende dieser Aufgabe sofort bereitgestellt und wieder entfernt wird. Das Kopieren nimmt viel Zeit in Anspruch.
Führt eine Reihe von Aktualisierungen der Datenbankansicht auf einem dedizierten Server durch.
Aufgabe 2 ist offensichtlich völlig unabhängig von Aufgabe 1, sodass wir die Bereitstellung von / mnt / backupProj verzögern können, ohne auf den Abschluss der Sicherungsaufgabe zu warten.
quelle
Ich verwende Lazy Umount in Fällen, in denen es offensichtlich aus verschiedenen Gründen nicht funktioniert hat (z. B. wenn der NFS-Server nicht funktioniert), auch wenn der ursprüngliche Inhalt des Verzeichnisses angezeigt werden soll, über das das Mount gemountet wurde. In beiden Fällen ist der Mount belegt. Ich denke, es gibt andere Randfälle, aber diese 2 sind die häufigsten Gründe, warum ich die Option verwendet habe.
quelle
--force
für den NFS-Fall.Betrachten Sie einen Bind-Mount, wie Sie bei der Arbeit mit möglicherweise sehen
chroot
:Wenn Sie einen Daemon auf Ihrem System haben, der ständig abfragt
/proc
(ich sehe Sie anksysguardd
), können Sie nichtumount /mnt/proc
. Lazy lässt Sieumount
in diesem Fall.quelle
--force
stattdessen hier verwenden?USB-Laufwerke werden manchmal aufgrund eines Hardwarefehlers blockiert. Selbst wenn Sie das Laufwerk physisch wieder anschließen, erhalten Sie einen anderen Gerätenamen. Der alte Gerätename kann normalerweise nicht abgehängt werden. betrag -l zwang den toten eintritt zu verschwinden.
quelle
Angenommen, Sie müssen wirklich das Volume ändern, auf dem eine Software ein Protokoll schreibt, z. B. ein Webserver, aber es hat viel Verkehr und kann für den Vorgang nicht ausgeschaltet werden, und der Protokollierungspfad kann nicht geändert werden.
Mit Lazy Unmount können Sie die Bereitstellung des Volumes sicher aufheben, während die Software noch ausgeführt wird, ein anderes Volume auf demselben Bereitstellungspunkt bereitstellen und die Software anweisen, die Dateien erneut zu öffnen.
Da Sie die Software nicht ausschalten mussten, gingen im Idealfall keine Anforderungen und im Wesentlichen auch keine Protokolleinträge verloren, da sie noch auf den alten Mount geschrieben wurden, bis die Dateien erneut geöffnet wurden (wie gut die Software das Öffnen der Datei handhabt) Dateien liegt bei der Software).
Um die Manpage zu paraphrasieren, bedeutet dies, dass wenn das Volume geöffnete Dateien hat, wenn es nicht gemountet ist, es in Wirklichkeit gemountet bleibt, aber nur über das Dateisystem nicht zugänglich ist und erst dann wirklich nicht gemountet wird, wenn die zuletzt geöffnete Datei geschlossen wird.
quelle
lsof
geöffnete Dateien auf dem alten Mountpoint angezeigt? Ich frage mich auch, wie es offene Dateien auf dem alten und dem neuen Volume unterscheiden würde.Ich verwende encfs, um einen Teil meiner sensiblen Daten zu verschlüsseln.
Wenn die Festplatte gemountet ist, erstellt Nautilus eine Vorschau (ich bin mir nicht sicher) und sperrt die Dateien. Wenn ich es aushängen möchte, heißt es, dass es von einem anderen Prozess gesperrt ist.
Durch das langsame Aufheben der Bereitstellung wird der Ordner aus meiner Hierarchie entfernt und ausgeblendet. Am Ende des Hintergrundprozesses wird die Bereitstellung erfolgreich aufgehoben.
quelle