Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 1 Mar 2004 17:04:29 -0500
From:      Andrew J Caines <A.J.Caines@halplant.com>
To:        FreeBSD Hackers <FreeBSD-Hackers@FreeBSD.org>
Subject:   Recovering from RELENG_5_1 -> RELENG_5.2 world/kernel statfs fubar?
Message-ID:  <20040301220429.GA11963@hal9000.halplant.com>

next in thread | raw e-mail | index | archive | help
[ nb. There's a question at the bottom. The rest is for context and the
  archives, since I couldn't find this kind of detail there. ]


System running RELENG_5_1 (5.1-p12, IIRC) built RELENG_5_2 and started
installworld before installkernel in flagrant violation of the correct
method and dire warnings of 20031112 in UPDATING.

The installworld borked early on during an mtree process and for reasons I
can't quite determine the output which should have eneded up in a file
didn't. From the datestamps, most or much of /bin and /usr got updated.

Booting the old (5.1) kernel made it almost to single user, but /bin/sh
wouldn't play. With the help of CD 2 from my 5.1 set I put the new kernel
in place and booted it, expecting the worst, however almost everything
runs fine - desktop, tools, apps and even the not-yet-installed linux.ko.


The problems I still have that /usr/bin/make was the old one, so there was
no simple installkernel/world option to fix things.

# /usr/bin/make
Bad system call (core dumped)

I replaced /usr/bin/make with /usr/obj/home/src/usr.bin/make/make and
after being much confused relaced /usr/obj/home/src/make.i386/make too
since this one appears to be used instead of /usr/bin/make - part of the
bootstrap, presumably.

With make appearing to work, a "make installkernel KERNCONF=MYKERNEL"
bombed on the first "install". Unlike make, /usr/bin/install seems to run
ok, despite being the old 5.1 version and doesn't core:

# /usr/bin/install -v
usage: install [-bCcpSsv] [-B suffix] [-f flags] [-g group] [-m mode]
...

After a bit of digging in /usr/obj and /usr/src, it looks like
usr.bin/install has been replaced with usr.bin/xinstall, which gets
installed as /usr/bin/install. Replacing /usr/bin/install with
/usr/obj/home/src/i386/home/src/usr.bin/xinstall/xinstall made no
difference and althugh this new /usr/bin/install seems to run ok, the
installkernel still bombed with a signal 12:

# make installkernel KERNCONF=MYKERNEL
...
mkdir -p /boot/kernel
install -p -m 555 -o root -g wheel kernel /boot/kernel
*** Signal 12

This looks like it's doing the same kind of bootstrap jiggery-pokery, but
I can't find another install after digging deep with find and make
debugging output. Since install is static, it's not a so problem.

Other seemingly broken bits I've found so far include logging through
syslog (which is running), sockstat -4, csh (which I don't use and know is
tcsh and is a contrib, but I can't find any sign of anything resenbing a
csh binary in /usr/obj).


How can I dig myself out of this hole so I can installkernel and
installworld with my shiney new 5.2.1 build?


I'm sure I've glossed over or missed much critial information, so please
let me know whatis relevant and needed. For starteds, here are lists of
all files in /bin, /lib, /usr/bin, /usr/lib and /sbin installed during the
last installworld[1]. and all files not installed during the recent
aborted installworld[2].

I'm AJC_Z0 (09:00 - 18:00 EST) and AJ_Z0 in #freebsd on FreeNode IRC.


[1] http://halplant.com:88/misc/51.files.lastinstallworld
[2] http://halplant.com:88/misc/51.files.ALL


-Andrew-
-- 
 _______________________________________________________________________
| -Andrew J. Caines-   Unix Systems Engineer   A.J.Caines@halplant.com  |
| "They that can give up essential liberty to obtain a little temporary |
|  safety deserve neither liberty nor safety" - Benjamin Franklin, 1759 |



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040301220429.GA11963>