Fedora 17’s unified filesystem (/usr-move)

John Ellson john.ellson at comcast.net
Sat Jan 28 18:41:59 UTC 2012


On 01/27/2012 05:57 PM, John Ellson wrote:
> On 01/27/2012 08:10 AM, Harald Hoyer wrote:
>> Hello Testers and rawhide Users,
>>
>> Fedora 17 will locate the entire base operating system in /usr. The 
>> directories
>> /bin, /sbin, /lib, /lib64 will only be symlinks:
>>   /bin → /usr/bin
>>   /sbin → /usr/sbin
>>   /lib → /usr/lib
>>   /lib64 → /usr/lib64
>>
>
> Mostly worked as described.
>
>
> One issue is that the default user's PATH needs to be cleaned up:
>     
> /usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/guest/.local/bin:/home/guest/bin
>
...
>
> There may be a similar problem with ldconfig.    At the moment  
> "ldconfig -p" show most libs being resolved from /lib instead of from 
> /usr/lib.
>

I'm not against this change,  but it would be better if it resulted in a 
performance gain rather than a performance loss.

I wrote a test to stat() the 2000+ files in /usr/bin/*, or /bin/*,  100 
times.

The time cost of a stat() of /usr/bin/foo was ~ 12.4 microseconds; the 
time cost of a stat() of /bin/foo was ~17.8 microseconds.

So to me, it is important that the default PATHs are changed to minimize 
the traversal of softlinks.

At the moment, having /bin early in the PATH means that a softlink has 
been *introduced* into most lookups, thus degrading performance.
The same issue exists for libs.


John


More information about the devel mailing list