APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

Lazy umount

© September 2008 Anthony Lawrence

I was actually looking for something else when I noticed that Linux umount has a "-l" option. What that does is solve the problem of "file system busy" (see Why can't I unmount my CDROM?). Well, of course it doesn't really unmount a busy file system, but it does let you say that you want that done as soon as possible, I don't know when this was added, but it works as advertised.

    Lazy unmount. Detach the filesystem from the filesystem hierarchy
    now, and cleanup all references to the filesystem as soon as
    it is not busy anymore. (Requires kernel 2.4.11 or later.)

The following was done on a Fedora 9 system:

# create a couple of small filesystems to play with
lvcreate -L 2G -n test1fs VolGroup00
lvcreate -L 2G -n test2fs VolGroup00
mkfs -t ext3 /dev/VolGroup00/test1fs
mkfs -t ext3 /dev/VolGroup00/test2fs
mkdir /testdir
mount /dev/VolGroup00/test1fs /testfs
cd /testfs

OK, now login on another screen and try to unmount that. Of course we'll be told that it is "busy":

# umount /testfs
umount: /testfs: device is busy

No surprise there. To fix, we'd track down the process interfering with our desire by way of lsof or fuser, kill it off and proceed with our unmount. But with -l, we can do it now:

# umount -l /testfs

No complaints, and a check of "mount" shows it is really gone. This doesn't interfere at all with the process that still has it open: you can create new files, delete old ones, move around.. but the moment you cd off the mount, you can't get back.

But while you are there, nothing stops us from mounting something else at the same point:

mount /dev/VolGroup00/test2fs /testfs
cd /testfs

In fact, as strange as it sounds, we could have mounted test1fs again.. about the only thing we can't do is "fsck /dev/VolGroup00/test1fs" - that will rightfully tell us that the device really is busy. Unfortunately, neither lsof nor fuser can tell me what process is keeping that unavailable, but there have to be limits somewhere, right?

I wouldn't recommend using this as a matter of course, but there certainly are times when it could be handy. If you know a process will finish up by itself, this can allow you to let it do so while you get on with whatever you need to do. It's a helpful addition.

Got something to add? Send me email.

(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

-> unmount busy file systems

1 comment

Inexpensive and informative Apple related e-books:

Are Your Bits Flipped?

Take Control of Numbers

Sierra: A Take Control Crash Course

Digital Sharing Crash Course

Photos for Mac: A Take Control Crash Course

More Articles by © Anthony Lawrence

Thu Sep 18 17:15:54 2008: 4565   JonR

I learned about lazy umount a few year ago, in the course of tearing my few remaining hairs out over stubborn USB devices that I was through with, but the system just couldn't seem to let go of.

Lazy umount has saved me from a lot of needless reboots. It's well named, isn't it? "Lazy" serves as a kind of tongue-in-cheek reminder to me, the user, that there may be a better, or at least an other, way out -- but...life is short.


Printer Friendly Version

Have you tried Searching this site?

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us

Printer Friendly Version

Anyone who puts a small gloss on a fundamental technology, calls it proprietary, and then tries to keep others from building on it, is a thief. (Tim O'Reilly)

Linux posts

Troubleshooting posts

This post tagged:


Unix/Linux Consultants

Skills Tests

Unix/Linux Book Reviews

My Unix/Linux Troubleshooting Book

This site runs on Linode