Subject: Re: HEADS UP: migration to fully dynamic linked "base" system
To: NetBSD-current Discussion List <current-users@netbsd.org>
From: Greywolf <greywolf@starwolf.com>
List: current-users
Date: 08/27/2002 22:03:46
On Tue, 27 Aug 2002, Jason R Thorpe wrote:

# On Tue, Aug 27, 2002 at 10:29:26PM -0400, Greg A. Woods wrote:
#
#  > > Subject: Re: HEADS UP: migration to fully dynamic linked "base" system
#  > >
#  > > Oh, I don't argue that a (hopefully) working /rescue will do the
#  > > trick. I'm just very opposed to having /rescue, since it will do exactly
#  > > what /bin was for, as opposed to /usr/bin.
#  >
#  > Very good point!
#
# No not a very good point, and here's why...
....
#
# I wouldn't exactly say there was any purposefulness in the current scheme,
# and certainly wouldn't make the assertion that /bin and /sbin are "for"
# single-user system recovery.

I would.

Even if it's by historical accident, the usefulness of a small (quickly
checked) but functional (independent) root filesystem cannot be argued
against.  It provides a much more stable point from which to restore a
system should the need arise.

I still argue that, in the current scheme, we used to have two points of
irrecoverable failure, init and sh, and I'm not even sure about the latter
(what with being able to specify, e.g., /bin/csh as an alternate shell at
single-user boot time).

With a dynamic scheme, we have just *doubled*++ our points of failure:
In addition to init and a working shell being not there, we now are
dependent upon /lib/libc.so, /libexec/ld.so, maybe /dev/zero (has this
changed?  we don't use this for mapping zero pages any more, do we?
Please say no...I know Solaris/SunOS did/do), any other libraries that
init or sh might depend upon, _/rescue notwithstanding_.

And how do we handle /lib et al?  Are we going to copy libraries between
/lib and /usr/lib (thus possibly getting out of sync), are we going to
symlink from /lib to /usr/lib backwards (i.e. point the relevant libs
in /usr/lib -> /lib), or what?

I see some good of it, but I will implore that it be made buildable
otherwise, as I really really don't want it.  Such a setup seems too
frail to me.  I know you've thought about it.  I know you see the needed
changes, and they're valid points, but they're things I will probably
never use.

And if we start requiring that / and /usr be mounted in single-user mode,
we may as well punt and go use Solaris.

				--*greywolf;
--
NetBSD is much like a tipi:  No windows, no gates, and an apache inside.