extremely slow "ls" on a cleared fatty ext3 directory on FC4/5
hennebry at web.cs.ndsu.nodak.edu
Mon Aug 14 18:43:14 UTC 2006
On Sun, 13 Aug 2006, Robinson Tiemuqinke wrote
that /tmp on an ext3 filesystem had held 5 million plain files,
that he deleted most of them,
that though the files are gone
just listing the remaining 8 files of /tmp
takes 20 minutes.
> -bash-3.00# ls -alFdh /tmp*
> drwxrwxrwt 4 root staff 4.0K Aug 12 23:17 new_tmp/
> drwxrwxrwt 4 root staff 131M Aug 12 20:30 tmp/
> Anyone know why the former fatty directory still looks
> unchanged and takes hours to traverse even after
> 99.999999% files got removed?
Another poster stated that on ext3,
directories can grow, but not shrink.
> If there are any ways to fix this kind of problem
> without rebooting machine? I'm afraid of the commands
> "rsync -avHn /tmp/ /new_tmp/; rm -rf /tmp/ && mv
> /new_tmp/ /tmp" because other applications are
> accessing /tmp/ as well.
If /tmp is its entire partition, I think that the only way
is to reformat the partition.
You don't necessarily have to reboot, but you will need to kick off
anyone using /tmp .
If /tmp is a soft link to /fred/tmp and /fred is its entire partition,
you might be able to do something like this.
# cd /fred
# mkdir new.tmp
# cd new.tmp
# ln ../tmp/* . # hard links won't work on directories
# cd ..
# mv tmp old.tmp
# # 'twould be best if no one tried to use /tmp at this point
# mv new.tmp tmp
# rm -r old.tmp
There might still be problems if someone had the
original /tmp as the current directory or just open.
Mike hennebry at web.cs.ndsu.NoDak.edu
"it stands to reason that they weren't always called the ancients."
-- Daniel Jackson
More information about the Ext3-users