HEADS UP: /bin and /sbin are now dynamically linked

Tim Kientzle kientzle at acm.org
Wed Nov 26 10:07:43 PST 2003

Matthew D. Fuller wrote:
> On Tue, Nov 25, 2003 at 01:41:53PM -0500 I heard the voice of
> Garance A Drosihn, and lo! it spake thus:
>>It is a bit more complicated than that, because programs may
>>include embedded references to other files.  So, I think
>>some developer would *have* to do a little up-front work for
>>any program that would be optionally-added to /rescue.
> Oh, sure; nothing's ever as easy as it should be   :)
> The advantage of this method is it's simple, cheap, automatic, and lets
> us say "You can try setting ADDITIONAL_RESCUE=usr.sbin/foo in make.conf
> and it may work", without putting extra burden on developers or people
> who don't wanna.  It may only be a fifth of a loaf, but...

... but a /rescue that doesn't work is useless.

The one critical property of /rescue is that it MUST WORK
when /bin and /sbin are both hosed.  Your technique here
cannot gaurantee this.

Testing /rescue is not a simple exercise.  You must first
break both /bin and /sbin and unmount /usr.  You must then
test EVERY part of /rescue, since adding or removing one
program can potentially break other programs (whose hard-coded
references to that program may need to be adjusted).  There
are (fortunately) a few shortcuts (I spent a long time poring
over the output of 'strings /rescue/rescue' to check for hard-coded
references), but it's still not pretty.


More information about the freebsd-current mailing list