ZERO LENGTH DIRECTORY & fsck

Marc G. Fournier scrappy at hub.org
Wed Jul 28 08:25:36 PDT 2004


On Wed, 28 Jul 2004, Robert Watson wrote:

>
> On Tue, 27 Jul 2004, Marc G. Fournier wrote:
>
>> Is there anything that can be done to 'fix' this?  Under 4.x, using
>> unionfs (and don't respond if your only answer is "its broken"), if it
>> crashes, fsck finds a whack of the above ...
>
> It's broken. :-)  But in all honesty, this has been discussed extensively,
> and it's carefully documented in the man page.  So if you run into bugs,
> it should not be a surprise.

It doesn't surprise me, never has ... I've been most appreciatative of the 
work/time that ppl like David Schultz and Tor Egge (among others) have put 
in to help debug, and fix issues I've been able to provide core files for 
... over the past year, unionfs (at least for me) has gone from something 
that I can watch a server lock up daily running out of vnodes, to 
something that goes for >3 months before a crash/reboot ... its not 
perfect, but its 100x better then it was last year ...

>> Now, I think I understand the *why* for the error ... union creates a
>> 'mirror' of the file system, especially where a du/find is concerned,
>> and teh ZLDs are 'end nodes' that have no files under them ... but is
>> there a better way that fsck can handle those?  Its almost as if it
>> doesn't know what to do with them, so has to remove them all ...
>
> Are you using union mounting of UFS or unionfs?  Theory tells us that
> unionfs is a stacked file system layer, and shouldn't directly manipulate
> the on-disk layout of UFS, instead, issuing vnode operations that allow
> UFS to maintain its consistency guarantees.  Theory tells us that union
> mounting UFS relies on UFS doing the magic, which means it has more
> opportunity to currupt on disk storage.

unionfs ... basically, I run:

/sbin/mount_union -b <template>/usr <jailroot>/usr

and then run the jail with <jailroot> ...

the ZLD stuff is what fsck pumps out, generally after I've had a good 
uptime run on a server before it crashes ... for instance, yesterday one 
of my servers just shy of 52 days uptime crashed, and it took ~7hrs to 
fsck the file system, most of it was watching the ZLD messages scrolling 
up the screen ...

Today, I had one with only ~26days uptime crash, and the fsck took <20 
minutes, with just a few ZLDs ...

----
Marc G. Fournier           Hub.Org Networking Services (http://www.hub.org)
Email: scrappy at hub.org           Yahoo!: yscrappy              ICQ: 7615664


More information about the freebsd-stable mailing list