Subject: Re: Why are the kernel modules located in /usr?
To: Jason Thorpe <thorpej@shagadelic.org>
From: Garrett D'Amore <garrett_damore@tadpole.com>
List: tech-kern
Date: 02/19/2006 21:26:04
Jason Thorpe wrote:
>
> On Feb 19, 2006, at 11:38 AM, Eric Haszlakiewicz wrote:
>
>> Well, if you going to do that, you might as well just
>> mv /usr/* / && rmdir /usr && ln -s / /usr
>
> That's more or less what Sun did...
Not quite.  /sbin is still distinct, as is /etc.  /sbin is that way
pretty much so you can have a minimal root fs and share /usr.  Granted,
its not really useful to do that anymore. :-)

Sun also, btw, has kernel modules in both /kernel and /usr/kernel.  The
distinction here being that kernel modules that need to be present (or
*might* conceivably need to be present) before /usr is mounted are in
/.  This includes all NICs, bus drivers, and mass storage.

As a former sun developer that had to worry about bizarre boot ordering
dependencies (and a taboo against static binaries -- for good reason), I
can tell you that having to deal with split / and /usr was a royal pain
in the arse.  Trying to configure WIFI for /usr mounted over wifi as an
example.  I did make it work, but eventually we decided it was much
simple to abandon the effort since it was not reasonable that anyone
would want to do that.

    -- Garrett

-- 
Garrett D'Amore, Principal Software Engineer
Tadpole Computer / Computing Technologies Division,
General Dynamics C4 Systems
http://www.tadpolecomputer.com/
Phone: 951 325-2134  Fax: 951 325-2191