!!!offene Dateien anzeigen

Immer mal wieder habe ich das Problem, dass ich gemountete
Netzwerk-Shares oder auch USB-Sticks o.ä. nicht einfahc unmounten
kann. Ich bekomme dann z.B. die folgende Fehlermeldung:

{{{
  thinkpad:~# umount /srv/dokumente/
  umount: /srv/dokumente: device is busy
  umount: /srv/dokumente: device is busy
  umount: /srv/dokumente: device is busy
  thinkpad:~#                                       
}}}

Was ist jetzt das Problem? Irgendein Programm hat noch einen
Filelock auf eine Datei, die auf dem gemounteten Laufwerk ist. Dies
kann im trivialsten Fall daran liegen, daß ich ein Dokument mit
einer Textverarbeitung geöffnet habe und noch nicht geschlossen
habe. Es gibt aber auch Programme, die einen Lock erzeugen, die
nicht so offensichtlich sind. Ein immer wieder gerne genommener
Kandidat ist __famd__. Dieses Programm überwacht Änderungen an
Dateien. Dies benutzt z.B. der KDE Konqueror, um im Falle einer
Änderung an einer Datei seine Ausgabe zu ändern, falls die
betreffende Datei gerade angezeigt wird. Bevor man nun alle
verdächtigen Programme absucht, gibt es den __lsof__-Befehl, der
alle offenen Filelocks des Systems anzeigen kann. Da ich dessen
Namen jedoch immer wieder vergesse und jedesmal neu nach "show open
file locks" bei Google suche, habe ich ihm hier einen eigenen
Wiki-Artikel gewidmet. Man gibt nun z.B. folgendes ein:

{{{
  lsof | grep "/srv/dokumente"
}}}

In der ersten Spalte der Ausgabe steht der Name des Programms und
in der zweiten dessen PID. Meistens weiss man dann sofort, was los
ist. -- ThomasBayen