Subject: Update disaster narrowly averted today!
To: None <current-users@netbsd.org>
From: walt <wa1ter@myrealbox.com>
List: current-users
Date: 09/07/2003 15:28:39
Hi all,

I hope this will help a few people avoid disaster with today's update.

First you must include COMPAT_16 in your kernel config file before
compiling a new kernel.  (I did that.)

I then compiled the system, which went without a hitch.  Next, I
compiled a new kernel, which also went smoothly.  I then moved my
new kernel to / to be ready for the next reboot.

Now, should I reboot the new kernel before installing the new userland,
or after?  Christos's post to this group said I should reboot first,
but Neil's post indicated he had trouble when he did that, so I decided
to install userland and THEN reboot the new kernel.

That didn't go so well.  Partway thru the install everything quit with
an error message that libc.so.12.103 could not be found.  Everything I
did thereafter gave me the same error.

So I booted my install floppies from about a month ago and looked in
/lib and sure enough, libc.so was a symlink to libc.so.12.103 which
was not there.  I had libc.so.12.102, but not 103.

Fortunately the new libc was in /usr/obj/lib/libc where my recent
compile had left it, so I copied it to /lib and that problem was
solved.  I rebooted the system and then completed the install of
userland.  There were missing man files, but at least I have a
useable system now.

The trick would be to copy the new libc.so.12.103 to /lib BEFORE
doing the install of userland, just in case you run into the same
problem.

I just updated my source tree again and found lots of new updates,
so perhaps I just picked the wrong moment to update.  I'm about
to recompile and try again.