From owner-freebsd-current@FreeBSD.ORG Wed Nov 26 10:07:42 2003 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id ECD3616A4CF for ; Wed, 26 Nov 2003 10:07:42 -0800 (PST) Received: from kientzle.com (h-66-166-149-50.SNVACAID.covad.net [66.166.149.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id B12DF43FCB for ; Wed, 26 Nov 2003 10:07:40 -0800 (PST) (envelope-from kientzle@acm.org) Received: from acm.org ([66.166.149.54]) by kientzle.com (8.12.9/8.12.9) with ESMTP id hAQI7ekX057478; Wed, 26 Nov 2003 10:07:40 -0800 (PST) (envelope-from kientzle@acm.org) Message-ID: <3FC4EBE9.40109@acm.org> Date: Wed, 26 Nov 2003 10:07:37 -0800 From: Tim Kientzle User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.4) Gecko/20031006 X-Accept-Language: en-us, en MIME-Version: 1.0 To: "Matthew D. Fuller" References: <20031123012222.GB11523@dragon.nuxi.com> <20031123042635.GB677@saboteur.dek.spc.org> <3FC16644.7070005@acm.org> <20031124114006.GA60761@dragon.nuxi.com> <20031124210748.GG15294@wombat.localnet> <20031124224144.GC67578@dragon.nuxi.com> <20031125160934.GH12248@over-yonder.net> <20031126161637.GO12248@over-yonder.net> In-Reply-To: <20031126161637.GO12248@over-yonder.net> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit cc: freebsd-current@freebsd.org Subject: Re: HEADS UP: /bin and /sbin are now dynamically linked X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: kientzle@acm.org List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 Nov 2003 18:07:43 -0000 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. Tim