From owner-freebsd-stable Thu Feb 21 22:17: 0 2002 Delivered-To: freebsd-stable@freebsd.org Received: from whale.sunbay.crimea.ua (whale.sunbay.crimea.ua [212.110.138.65]) by hub.freebsd.org (Postfix) with ESMTP id 5F61937B404; Thu, 21 Feb 2002 22:16:31 -0800 (PST) Received: (from ru@localhost) by whale.sunbay.crimea.ua (8.11.6/8.11.2) id g1M6GA173851; Fri, 22 Feb 2002 08:16:10 +0200 (EET) (envelope-from ru) Date: Fri, 22 Feb 2002 08:16:10 +0200 From: Ruslan Ermilov To: Daniel Frazier Cc: stable@FreeBSD.ORG, Bruce Evans , Marcel Moolenaar , Peter Wemm Subject: Re: src upgrade 4.0-RELEASE to 4-STABLE fails on make installworld... Message-ID: <20020222061610.GB73284@sunbay.com> References: <3C73D7C2.3000502@magpage.com> <20020220181526.GB49599@sunbay.com> <3C73EC1B.9080100@magpage.com> <20020221090710.GB13262@sunbay.com> <3C7523DC.3060106@magpage.com> <3C752C88.9080704@magpage.com> <3C753449.1080300@magpage.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3C753449.1080300@magpage.com> User-Agent: Mutt/1.3.27i Sender: owner-freebsd-stable@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Thu, Feb 21, 2002 at 12:54:17PM -0500, Daniel Frazier wrote: > Daniel Frazier wrote: > > >Daniel Frazier wrote: > > > >>Ruslan Ermilov wrote: > >> > >>>On Wed, Feb 20, 2002 at 01:34:03PM -0500, Daniel Frazier wrote: > >>>[...] > >>> > >>>>I was upgrading to yesterday's 4-STABLE. The second time I cvsup'd was > >>>>around 1500 GMT and I used RELENG_4 in my supfile. Sorry, thought I > >>>>had > >>>>made that clear... > >>>> > >>>>did that too. Here's the steps I took: > >>>> > >>>>1. A while back I installed 4.0-RELEASE and sorta forgot about the > >>>>box for > >>>>a while. > >>>>2. yesterday I cvsup'd using RELENG_4_1_1_RELEASE > >>>>3. started a make buildworld > >>>>3. read the post "4.0-RELEASE -> 4.5-STABLE now possible..." > >>>>4. killed the make buildworld > >>>>5. cvsup'd using RELENG_4 > >>>>6. make buildworld > >>>>7. make buildkernel KERNCONF=whatever > >>>>8. make installkernel KERNCONF=whatever > >>>>9. make installworld > >>>>10. gasped in horror as the make installworld died. > >>>> > >>>>Also, while attempting to recover from this I noticed that almost > >>>>everything > >>>>in /bin had lost it's ABI type and had to be re-brandelf'd. Dunno > >>>>what was > >>>>up with that... > >>>> > >>>>Regardless, I've decided to just nuke /usr/obj and /usr/src and have > >>>>another > >>>>go at it. Hopefully my userland isn't too hosed to get thru it this > >>>>time. > >>>> > >>>> > >>>I can confirm that to be a real problem after actually having tried to > >>>installworld with an empty DESTDIR. > >>> > >>>The problem is that many installation tools that we copy and run during > >>>installworld have /bin/sh hardcoded in them (e.g. make(1)), and after > >>>the new /bin/sh is installed, make(1) attempted to run the new /bin/sh, > >>>as opposed to /tmp/install.XXXX/sh available through a PATH. > >>> > >>>The workaround was to temporarily remove "sh" from the SUBDIR list in > >>>bin/Makefile, for installworld stage. > >>> > >>>Another (late) problem was with host's makewhatis(1) which puts > >>>/bin:/usr/bin before the supplied ${PATH}. Commenting out this > >>>line in /usr/bin/makewhatis before installworld did the trick. > >>> > >>>These are workarounds. The correct solution would be to make > >>>sure that none of the tools from the PATH that we use during > >>>installworld run non-PATH utils (from /bin, /usr/bin, etc.), > >>>like Peter did for install(1) in xinstall.c,v 1.9. > >>> > >>> > >> > >> > >>sweet! I'm make installing the kernel again right now, I'll try your > >>workarounds as soon as it's ready to make installworld. At least > >>this was confirmed as a problem rather than operator error. Makes me > >>feel better, at least... > >> > > > >well, that didn't work. make installworld died with: > > > >-------------------------------------------------------------- > > >>> Rebuilding man page indices > >-------------------------------------------------------------- > >cd /usr/src/share/man; make makedb > >makewhatis /usr/share/man > >makewhatis /usr/share/perl/man > >rm -rf /tmp/install.68925 > >ELF binary type not known. Use "brandelf" to brand it. > >*** Signal 6 > > > >Stop in /usr/src. > >*** Error code 1 > > > >Stop in /usr/src. > > > > > >could this be a result of my previous make installworld dying? > > > > great, now everything's borked. almost nothing in /bin or /usr/bin > works, including make. most spew an error regarding brandelf, > although as far as I can tell they are branded correctly: > > > [terrapin]/usr/src # file /usr/bin/make > /usr/bin/make: ELF 32-bit LSB executable, Intel 80386, version 1 > (FreeBSD), statically linked, stripped > [terrapin]/usr/src # make > ELF binary type not known. Use "brandelf" to brand it. > Abort trap > [terrapin]/usr/src # /bin/ls -la > ELF binary type not known. Use "brandelf" to brand it. > Abort trap > [terrapin]/usr/src # file /bin/ls > /bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), > statically linked, stripped > [terrapin]/usr/src # > > anyone have an idea on how I can recover from this? or should I just > (grrr!) reinstall from scratch? I hate having to resort to that... > in fact, never had to before...(with FreeBSD at least...) > Marcel already explained most of the details. The net effect is that at this point you should boot with the new -STABLE kernel, and everything will work. I've tried it here, and it works flawlessly, with these two work-arounds and buildworld, buildkernel, installkernel, installworld, and reboot(8) executed in a sequence. Cheers, -- Ruslan Ermilov Sysadmin and DBA, ru@sunbay.com Sunbay Software AG, ru@FreeBSD.org FreeBSD committer, +380.652.512.251 Simferopol, Ukraine http://www.FreeBSD.org The Power To Serve http://www.oracle.com Enabling The Information Age To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message