Man kann mit lsof (steht für "list open files") nachschauen, ob noch was geöffnet ist. Wenn ich zum Beispiel unter Kubuntu etwas über die grafische Oberfläche, sei es im Dateimanager, oder im Applet der KDE-Leiste etwas mounte, dann ist es unter /media/* eingebunden. Mit lsof in Kombination mit grep sucht man dann einfach nach diesem Pfad:
lsof | grep '/media/'
Auch wenn ich nur im Terminal mit der Bash mit den Füßen im Verzeichnis stehe gibt lsof dann etwa so was aus:
bash 12345 USERNAME cwd DIR 8,81 16384 1 /media/USERNAME/ABC4-123
KDE warnt dann allerdings auch und hängt dann nicht aus, so lange ich noch mit dem Fuß drauf stehe. Erst wenn ich aus dem mounted Verzeichnis mit cd heraus hüpfe und lsof nichts mehr findet unter dem Pfad des mounts, dann lässt es sich umounten. sync kann auch nicht schaden um Puffer zurückzuschreiben auf Massenspeicher.
Man kann auch auf den Device Node mit lsof zielen, sieht dann etwa so aus:
lsof /dev/sdf1
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
bash 12345 USERNAME cwd DIR 8,81 16384 1 /media/USERNAME/ABC4-123
Dafür muss man aber den entsprechenden Device Node wissen. Kann man sich mit file anschauen, etwa so:
sudo file -s /dev/sd*