ubuntuusers.de

eine oder mehrere Anwendungen halten den Datenträger belegt

Status: Ungelöst | Ubuntu-Version: Ubuntu 18.04 (Bionic Beaver)
Antworten |

wolfgang-p

Anmeldungsdatum:
1. März 2008

Beiträge: 665

Wohnort: Wedel

Moin,

wieder mal habe ich ein Problem mit meinem Ubuntu 18.04 mit Gnome3-Desktop:

Per USB-Hub habe ich an mein Notebook eine 1-TB-SSD-Festplatte angeschlossen. Sie enthält meine Bakups. Wenn ich die Platte nach Gebrauch aushängen will, kommt die Fehlermeldung

Eine oder mehrere Anwendungen halten den Datenträger belegt.

Tatsächlich aber ist nicht eine einzige Anwendung auf dem Rechner geöffnet, außer dem Dateimanager. Dort aber steht der Kurser auf "Persönlicher Ordner", nicht auf dem Gerät 1TB-Festplatte. Das System fragt mich, ob ich die Platte trotzdem aushängen will. Wenn ich dazu ja sage, dann wird die Platte ausgehängt, aber der ganze Rechner hängt sich auf. Ausschalten und Neustarten geht dann ur über den Hardwareknopf am Gerät

Sowas verstehe ich nicht. Weiß jemand Rat?

verdooft

Anmeldungsdatum:
15. September 2012

Beiträge: 4436

Vielleicht kommst du damit auf die Spur:

lsof | grep /media/whatever

Braucht vielleicht sudo.

https://unix.stackexchange.com/questions/3109/how-do-i-find-out-which-processes-are-preventing-unmounting-of-a-device

Weiter unten steht noch was zu fuser, lsof mit +f, etc.

wolfgang-p

(Themenstarter)

Anmeldungsdatum:
1. März 2008

Beiträge: 665

Wohnort: Wedel

Danke, @verdooft.

Der von dir genannte Befhel bringt folgende Info:

wolfgang@wolfgang-ThinkPad-P70:~$ lsof | grep /media/whatever
wolfgang@wolfgang-ThinkPad-P70:~$ sudo lsof | grep /media/whatever
[sudo] Passwort für wolfgang: 
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
      Output information may be incomplete.
wolfgang@wolfgang-ThinkPad-P70:~$

Und nun?

verdooft

Anmeldungsdatum:
15. September 2012

Beiträge: 4436

/media/whatever hast du duch den eingehängten Datenträger ersetzt?

Bei mir klappt es damit (testweise habe ich eine Textdatei mit Kate, dem Standardeditor unter Plasma, und ein Bild in Gimp geöffnet):

sudo fuser -m /media/user/datentr/
/media/user/datentr:  7210c  7282c  7299c

ps -p 7210 -o comm=
kate
ps -p 7282 -o comm=
gimp-2.10
ps -p 7299 -o comm=
script-fu

lsof zeigt mehr an:

sudo lsof | grep /media/user/datentr/
gimp-2.10 7282              user  cwd       DIR               8,49          4096      90710 /media/user/datentr/verzeichnis
gmain     7282 7284         user  cwd       DIR               8,49          4096      90710 /media/user/datentr/verzeichnis
gdbus     7282 7285         user  cwd       DIR               8,49          4096      90710 /media/user/datentr/verzeichnis
async     7282 7286         user  cwd       DIR               8,49          4096      90710 /media/user/datentr/verzeichnis
worker    7282 7287         user  cwd       DIR               8,49          4096      90710 /media/user/datentr/verzeichnis
worker    7282 7288         user  cwd       DIR               8,49          4096      90710 /media/user/datentr/verzeichnis
worker    7282 7289         user  cwd       DIR               8,49          4096      90710 /media/user/datentr/verzeichnis
swap\x20w 7282 7304         user  cwd       DIR               8,49          4096      90710 /media/user/datentr/verzeichnis
script-fu 7299              user  cwd       DIR               8,49          4096      90710 /media/user/datentr/verzeichnis
gmain     7299 7301         user  cwd       DIR               8,49          4096      90710 /media/user/datentr/verzeichnis

wolfgang-p

(Themenstarter)

Anmeldungsdatum:
1. März 2008

Beiträge: 665

Wohnort: Wedel

Wenn ich versuche, die Platte mittels "Laufwerke" auszuhängen, kommt folgende Meldung:

Fehler beim Aushängen des Dateisystems. Error unmounting /dev/sdb1: target ist bussy (udisks-error-quark, 14).

Mir sagt sowas nichts, was mir helfen könnte.

Den von dir geannten Befehl muss ich nochmal korrekt wiederholen. Geht gleich los.

verdooft

Anmeldungsdatum:
15. September 2012

Beiträge: 4436

Das geht hier bequem per Autovevollständigung, also:

sudo fuser -m /media/

Dann Tabulator, Tabulator... bis der komplette Pfad da ist. Mit den Pids kann man dann durch ps die Prozessnamen rausfinden.

Anscheinend kann man auch mit /dev/sdb1 arbeiten:

sudo fuser -m /dev/sdb1
/dev/sdb1:            4986c

ps -p 4986 -o comm=
bash

wolfgang-p

(Themenstarter)

Anmeldungsdatum:
1. März 2008

Beiträge: 665

Wohnort: Wedel

so, hier nochmal:

wolfgang@wolfgang-ThinkPad-P70:~$ sudo lsof | grep /media/SD1TB
[sudo] Passwort für wolfgang: 
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
      Output information may be incomplete.
wolfgang@wolfgang-ThinkPad-P70:~$ 

Rätsel ☹

verdooft

Anmeldungsdatum:
15. September 2012

Beiträge: 4436

Gib mal das ein:

sudo fuser -m /dev/sdb1

per

sudo fuser -vmM /media/user/datentr/

gehts sogar direkt übersichtlich:

                     BEN.        PID ZUGR.  BEFEHL
/media/user/datentr:
                     root     kernel mount /media/user/datentr
                     user   7210 ..c.. kate
                     user   7673 ..c.. geany
                     user   7753 ..c.. gimp-2.10
                     user   7769 ..c.. script-fu

Mit

findmnt

kannst du schauen, wie der Datenträger genau eingehängt ist.

/media/SD1TB

ist untypisch, weil normal der Linuxbenutzer zwischen media und dem Datenträger steht.

wolfgang-p

(Themenstarter)

Anmeldungsdatum:
1. März 2008

Beiträge: 665

Wohnort: Wedel

Gleich ...

Musste den Rechner per Hardwareknopf ausschalten und neu starten. Wenn ich die Platte dann am USB-Port anschließe, wird sie zwar erkannt, aber nicht eingehängt. Es kommt die Meldung:

Einhängen nicht möglich. Eine Operation steht noch aus.

Das klingt ja so, als wäre irgendwo in einer Art Warteschleife noch ein Vorgang, der abgeschlossen werden muss. Aber ich wüsste keinen. Man muss doch das System sozusagen abbrechen können, ohne dass da noch irgendwo was ist, was sich immer wieder meldet und dann noch Fehler verursacht. Solche Probleme hatte ich unter Ubuntu 16.04 nie.

wolfgang-p

(Themenstarter)

Anmeldungsdatum:
1. März 2008

Beiträge: 665

Wohnort: Wedel

So ...:

wolfgang@wolfgang-ThinkPad-P70:~$ sudo fuser -m /dev/sdb1
[sudo] Passwort für wolfgang: 
wolfgang@wolfgang-ThinkPad-P70:~$ sudo fuser -m /dev/SD1TB
Angegebener Dateiname /dev/SD1TB existiert nicht.
wolfgang@wolfgang-ThinkPad-P70:~$ sudo fuser -m /dev/sdb1
wolfgang@wolfgang-ThinkPad-P70:~$ sudo fuser -vmM /media/wolfgang/SD1TB
Der angegebene Dateiname »/media/wolfgang/SD1TB« ist kein Einhängepunkt.
wolfgang@wolfgang-ThinkPad-P70:~$ sudo fuser -vmM /media/wolfgang/SD1TB1
                     BEN.        PID ZUGR.  BEFEHL
/media/wolfgang/SD1TB1:
                     root     kernel mount /media/wolfgang/SD1TB1
wolfgang@wolfgang-ThinkPad-P70:~$ 

Seltsam, jetzt habe ich SD1TB, das kann ich jedoch nicht anklicken.
Und ich habe SD1TB1, das ist jetzt die eingehängte Platte.

MIt Root-Rechten könnte ich im Midnight-Commander den Eintrag "SDB1TB" löschen. Das habe ich bei einer SD-Karte im Kartenleser des Notebooks auch schon mal so gehabt. Aber warum diese Einträge entstehen ist mir ein Rätsel. Entweder bin ich an der Stelle zu dämlich, oder Linux macht hier irgendwie Mist.

verdooft

Anmeldungsdatum:
15. September 2012

Beiträge: 4436

Aktuell scheint nichts weiter offen zu sein, außer das Mounten selbst. Wenns irgendwann wieder nicht aushängbar ist, kannst du damit mal nachschauen. Merke ich mir ebenfalls, weils für USB-Sticks auch mal praktisch sein kann.

Theoretisch kann auch mal ein Index für Dateisuchen aktualisiert/aufgebaut werden, was das Aushängen für längere Zeit blockiert. Oder eine fehlerhafte Software beendet den Zugriff auf die Datei nicht korrekt.

Antworten |