> > With Linux ext2, and some other systems, when you create files in a
> > new directory, the file system remembers their order:
>
> No - it merely seems too.
>
> > $ touch one two three four
> > $ ls -U
> > one two three four
>
> Then try 'rm three; touch five'
Moreover, it isn't true even for the case when we create a list of files
in empty directory. Example: assuming that /tmp has 1Kb blocks,
mkdir /tmp/A
cd A
touch `perl -e 'print "a"x255'`
touch `perl -e 'print "b"x255'`
touch `perl -e 'print "c"x255'`
touch `perl -e 'print "d"x255'`
touch A
ls -U
will give you (lots of a) (lots of b) (lots of c) A (lots of d).
With 4Kb blocks you'll need 16 long names instead of 4 - the effect
will be the same.
The reason is quite simple - at some point you get no space for long
name and it goes into the next directory block, but there's still enough
for a short name, so it gets created in the first block.
IOW, there's no warranties at all.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/