Empty directory 60M in size; used to contain 1.7 million files
Andrew Pantyukhin
infofarmer at FreeBSD.org
Mon Nov 27 11:39:35 PST 2006
On 11/27/06, Dan Nelson <dnelson at allantgroup.com> wrote:
> In the last episode (Nov 27), Peter Schuller said:
> > Observe:
> >
> > hyperion# ls -la
> > total 61634
> > drwxr-xr-x 2 xxx yyy 63047168 Nov 18 21:33 .
> > drwxr-xr-x 6 xxx yyy 512 Oct 8 16:39 ..
> > hyperion# find .
> > .
> > hyperion#
> >
> > The one special circumstance is that the directory previously
> > contained 1.7 million small files, that are now deleted. This is on
> > FreeBSD 6.1 with UFS2 + softupdates. No snapshots exist of the
> > filesystem.
> >
> > 1.7 million files may be extreme, but I don't see why an empty
> > directory would ever consume more than one inode?
>
> Directories are only shrunk when a file is created and the slack
> directory space can be trivially truncated. This is to avoid useless
> compaction during "rm -rf"-style activities of a directory that will
> just be deleted anyway.
Shouldn't it be done after a timeout? I can imagine scenarios
when millions of small files are created and deleted in different
dirs. Should it result in no disk space (and a clueless user)?
More information about the freebsd-questions
mailing list