Manchmal, wenn ich ein Gerät umounten möchte, z
sudo umount /dev/loop0
Ich werde die Nachricht bekommen
umount: /mnt: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
Ich löse dieses Problem normalerweise, indem ich ein Konsolenfenster schließe (in meinem Fall xfce4-terminal) und dann umount
.
Was bedeutet dieses Problem? Gibt es eine intelligentere Lösung?
Antworten:
Dies bedeutet, dass ein Prozess ein Arbeitsverzeichnis oder ein geöffnetes Dateihandle unter dem Mountpunkt hat. Am besten beenden Sie den fehlerhaften Prozess, ändern das Arbeitsverzeichnis oder schließen das Datei-Handle, bevor Sie die Bereitstellung aufheben.
Unter Linux gibt es jedoch eine Alternative. Mit
umount -l
Anrufen ein "fauler" Unmount. Das Dateisystem wird weiterhin eingehängt, Sie können es jedoch nicht sehen oder verwenden, außer bei Prozessen, die es bereits verwenden. Wenn das fehlerhafte Programm beendet wird (mit welchen Mitteln auch immer), "beendet" das System die Bereitstellung des Dateisystems.quelle
lsof
ist wahrscheinlich der beste Weg.lsof | grep loop0
?Sie können auch verwenden
fuser
, um alle Prozesse mit dem bereitgestellten Dateisystem abzubrechen.Optionen:
Überzeugen Sie sich selbst bei sayshell .
quelle
In Anbetracht Ihrer "üblichen Lösung" bedeutet dies, dass die Shell, die Sie in Ihrem Konsolenfenster ausführen, ein Verzeichnis in einem Dateisystem auf diesem Gerät als aktuelles Arbeitsverzeichnis hat.
Linux und Unixe im Allgemeinen möchten unbedingt ein Dateisystem bereithalten, wenn ein Prozess ein aktuelles Arbeitsverzeichnis in diesem Dateisystem hat.
Sie können einfach
cd
im Konsolenfenster ein Verzeichnis in oder unter verlassen,/mnt
anstatt das Konsolenfenster und die darin ausgeführte Shell zu beenden.quelle
Ich bin heute auf dasselbe Problem gestoßen, und es ist mir gelungen, es zu lösen. Mein Problem ergibt sich aus dem Mounten eines Verzeichnisses in mein aktuelles Arbeitsverzeichnis. Wenn ich also "umount" ausführe, ist es passiert. Die Lösung besteht darin, das aktuelle Verzeichnis zu ändern und dann "umount .." auszuführen. ich hoffe es klappt.
quelle
Ich habe eine Situation entdeckt, die das Abmelden eines Geräts beeinträchtigen kann, das ich als Antwort freigeben möchte, obwohl diese Frage sehr alt ist.
Wenn auf dem Computer NFS-Freigaben gehostet sind und eine dieser NFS-Freigaben von dem Gerät gesichert wird, das Sie trennen möchten, müssen Sie die Freigabe beenden (am besten durch Beenden des NFS-Dienstes, z. B.
sudo service nfs-kernel-server stop
bei neueren Versionen von Ubuntu ). Der NFS-Server wird möglicherweise nicht in lsof oder fuser angezeigt, was die Identifizierung des Problems erschwert.quelle
Für mich kamen die „Gerät beschäftigt“ Fehler, wenn ich in diesem Ordner war , und ich war zu versuchen ,
umount
es// Basierend auf @klapaucius Kommentar
quelle