Subject: Re: Kernel compilation fails
To: None <current-users@NetBSD.org>
From: Luke Mewburn <lukem@NetBSD.org>
List: current-users
Date: 11/04/2003 10:27:34
On Mon, Nov 03, 2003 at 11:29:56AM -0500, Allen Briggs wrote:
  | The easiest update is to use build.sh to build a full set, install &
  | reboot the new kernel, then update userland from the tar sets, as you
  | say.  The other thing that I've done is to go ahead and just make
  | an ISO image to install from.

I concur.


My steps are:

    a)	Build a full release
		% ./build.sh -U release
	or build the distribution sets and my custom kernel
		% ./build.sh -U distribution sets kernel=/path/to/kernelconf

    b)	Install new kernel, and reboot to single user mode.
	If this fails, roll back to the old kernel.

    c)	From single user mode with the disks mounted read-write,
	extract all sets except etc.tgz
		# for i in /RELEASEDIR/i386/binary/sets/[bcgmt]*.tgz; do
			pax -zrpe -f $i
		  done

    d)	Run postinstall from an extracted etc.tgz
		# mkdir -p /tmp/etcdist
		# cd /tmp/etcdist
		# pax -zrpe -f /RELEASEDIR/i386/binary/sets/etc.tgz
		# ./etc/postinstall -s `pwd` check
	If I'm happy with the changes
		# ./etc/postinstall -s `pwd` fix
	Clean up the junk
		# cd /
		# rm -rf /tmp/etcdist

    e)	Reboot to get new userland.


FWIW: There is a work in progress to add a build.sh to create a .iso
(from a populated RELEASEDIR), using mkisofs from pkgsrc.
When that's incorporated I would do:
	./build.sh -U release sourcesets iso
and burn the CD so I have a bootable recovery CD with the binaries
and source of the system that I'm running.  More news once it's in.


Luke.