Ich bin kürzlich auf ein Problem gestoßen, bei dem ein eingehängtes SSHFS-Dateisystem sich weigerte, ausgehängt zu werden.
Ich habe versucht, es von Nautilus aus auszuhängen, indem ich mit der rechten Maustaste auf die Einhängung klickte und Aushängen auswählte, aber dies schlug mit einer Fehlermeldung fehl. Die Fehlermeldung besagte, dass das Gerät nicht ausgehängt werden konnte, und gab als Grund an: „mount disagrees with the fstab“.
Ich habe dann die fstab (sudo vi /etc/fstab
) bearbeitet und den Eintrag für das Gerät auskommentiert. Ich versuchte erneut, das Gerät in Nautilus auszuhängen, aber dieses Mal meldete es mir, dass ich das Gerät nicht aushängen könne, weil ich nicht root sei und das Gerät nicht in der fstab aufgeführt sei. Ich habe dann die zuvor kommentierte Zeile auskommentiert und die Datei erneut gespeichert.
Zeit, sich schmutzig zu machen. Ich versuchte, umount
manuell auszuführen, aber es schlug fehl:
$ sudo umount /mnt/shareumount: /mnt/share: device is busy. (In some cases useful info about processes that use the device is found by lsof(8) or fuser(1))$
Das wurde jetzt persönlich, da die vorherigen Meldungen nichts darüber aussagten, dass das Gerät in Gebrauch war. Ich beendete alle Anwendungen und versuchte es erneut. Dieselbe Fehlermeldung.
Ich folgte den Anweisungen und führte man lsof
gefolgt von man fuser
aus, um mehr über die empfohlenen Befehle herauszufinden. fuser war der Gewinner.
fuser ermöglicht es Ihnen, detaillierte Informationen über Prozesse herauszufinden, die bestimmte Dateien oder Sockets verwenden. Zusätzlich zu den Informationen können Sie damit Prozesse, die auf die Datei oder den Socket zugreifen, beenden. Das war genau das, wonach ich gesucht hatte.
Nachdem ich mich über die fuser-Syntax informiert hatte, führte ich den folgenden Befehl aus:
$ sudo fuser -km /mnt/share/mnt/share/: 9004c$
Dieser Befehl bedeutet im Grunde „Finde jeden Prozess, der auf den /mnt/share-Einhängepunkt zugreift, und töte ihn“. Da ich mir nicht sicher war, wer der Eigentümer der Prozesse ist, die beendet werden sollten, führte ich ihn mit sudo aus, um sicherzustellen, dass alle Prozesse beendet werden konnten.
Die Antwort /mnt/share/: 9004c
bedeutet, dass ein Prozess mit der ID 9004 beendet wurde.
Dieser Befehl antwortete fröhlich mit nichts, was ein gutes Zeichen ist, da es bedeutet, dass der Befehl umount erfolgreich war.
Endlich ist das Mount ausgehängt. Wenn ich mich jetzt nur noch daran erinnern könnte, was ich zu tun versuchte, als dieses Problem auftrat…
Habe ich Ihnen geholfen?
- Schicken Sie mir ein Trinkgeld per Paypal.
- Helfen Sie mit dem Hosting dieser Website mit meinem Linode Empfehlungscode.