[CentOS] Can't umount flash drive because an application has it locked

Fri May 21 00:38:19 UTC 2010
MHR <mhullrich at gmail.com>

This occasionally happens to me when I've been editing an OOo document
that resides on a flash drive I use with one of my laptops.  I've
tried poking around in ps to find out which process has the drive
locked, and I can't figure it out.  Nothing directly refers to the
flash drive except one of the hald processes, and it's just scanning
the drive (I tried killing that and it made no difference).

My usual sequence of events is as follows:

1. Plug in the flash drive.
2. Wait for it to appear on the desktop.
3. Start up a terminal window (which recognizes the flash drive and
runs sudo to allow execute permissions on the drive).
4. Run the script that unzips the files I want.
5. Open the file with the OO writer, edit it for a while, then save
and close it.
6. Update the zip archive (on the flash drive).
7. Close the terminal window.
8. Umount the drive, which fails.

I've tried waiting for as much as five minutes, running sync -
nothing.  The last three times this happened, I had to shut down the
laptop (which I was going to do anyway) in order to free the flash
drive.  This takes several minutes, which can be precious when I need
to bag the laptop in a hurry.

There's nothing in any of the syslogs.  The laptop was just updates to
the L&G CentOS 5.5.

What am I missing?

Thanks.

mhr