Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 May 1998 11:59:31 +1000
From:      "John Saunders" <john.saunders@scitec.com.au>
To:        <freebsd-stable@FreeBSD.ORG>, "Dan Swartzendruber" <dswartz@druber.com>
Subject:   Re: make buildworld/installworld question
Message-ID:  <00a101bd8780$c29dd850$6cb611cb@saruman.scitec.com.au>

next in thread | raw e-mail | index | archive | help

Dan Swartzendruber <dswartz@druber.com> wrote:

>Until now, when I've been updating, I been doing like the "Making the
world"
>your own tutorial on www.freebsd.org.  I.e. for the build server, going to
>single-user mode, doing make buildworld, make installworld, building a new
>kernel and rebooting.  For the clients, going single-user, mounting
/usr/src
>and /usr/obj via NFS and doing make reinstall.  Here's my question: do I
>really need to go single-user?  It makes the downtime significantly greater
>(particularly for the build server).  Will Bad Things happen if I do the
>make installworld on a live box?


I've done 'make world' in both single user mode and multi user
. One thing to watch is that the /usr/libexec/ld.so file gets
updated. The last time I did 'make world' in multi user mode it
didn't. I tend to 'ls -lt' in the standard directories to check
on what didn't get updated.

Probably the best way is...

In multi user mode:

# (cd /usr/obj ; chflags -R noschg usr ; rm -rf usr)
# cd /usr/src ; make includes
# make buildworld

In single user mode:

# make installworld
# cd /sys/i386/conf ; config KERNELFILE
# cd ../../compile/KERNELFILE ; make kernel install

For a machine where uptime isn't critical I just shutdown to
single user mode and do the entire sequence.

Of course you can't do single user mode remotely so the only
way is to do the entire upgrade from multi user mode. Just check
on the files that don't get updated and copy them over from the
/usr/obj directories. To update ld.so was a bit tricky. I used.

# cp /usr/obj/.../ld.so ld.so.new
# chown bin.bin ld.so.new
# chflags noschg ld.so
# ln ld.so ld.so.old
# ln -f ld.so.new ld.so
# rm ld.so.new
# chflags noschg ld.so

Then reboot and delete ld.so.old.

Cheers.
--   .   +-------------------------------------------------------+
 ,--_|\  | John Saunders    mailto:John.Saunders@scitec.com.au   |
/  Oz  \ | SCITEC LIMITED   Phone +61294289563  Fax +61294289933 |
\_,--\_/ | "By the time you make ends meet, they move the ends." |
      v  +-------------------------------------------------------+



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?00a101bd8780$c29dd850$6cb611cb>