Rebuilding, Got Questions

Danny Pansters danny at ricin.com
Tue Aug 15 21:41:37 UTC 2006


On Tuesday 15 August 2006 20:44, beno wrote:
> Hi;
> The box I've taken over has BSD 5.3 so I need to upgrade. This is a big
> jump and the console is half a world away so I have some questions:
> * Can I do all of the steps of the installation without reverting to
> single user mode?
> * Where do I find the src to download?? All I find are ISOs. Is there no
> *.tgz file anywhere?
> * I'm upgrading from 5.3 to 6.1. Will I have to run "mergemaster -p"
> before running "buildworld"?
>
> Do I need anything more in /etc/make.conf than the following?
> CFLAGS= -O -pipe
> NO_BLUETOOTH=  true    # I have no need of this
> NO_SENDMAIL=   true    # I use qmail
>
> The current /etc/make.conf has this and I don't understand why:
>
> # -- use.perl generated deltas -- #
> # Created: Wed Dec 21 21:11:27 2005
> # Setting to use base perl from ports:
> PERL_VER=5.8.5
> PERL_VERSION=5.8.5
> PERL_ARCH=mach
> NOPERL=yo
> NO_PERL=yo
> NO_PERL_WRAPPER=yo
>
> Should I leave the above? Merge the two? Throw out the above and just
> use what I've written (above that)? Will that screw up the installation?
> Will that screw up perl?

Not sure about perl, I only have

PERL_VER=5.8.8
PERL_VERSION=5.8.8

on 6.1

> Here is my procedure. Look good?
>

I'd recommend to first 

rm -rf /usr/obj/* 

to be sure you don't have any stale object files, and copy your old kernel to 
another name so you can revert back to that known one at any time.

> cd /usr/src
> make -j4 buildworld // single CPU system
> make buildkernel
> make installkernel

> reboot

I wouldn't do this, because after reboot your kernel and userland are sure to 
be out of sync and that may cause problems preventing you from fully 
(multi-user) booting. Or what if the rc scripts have changed (but not 
installed yet) and your NIC doesn't come up because of that...

If you are willing to risk not rebooting to single user, then don't do a 
reboot after installkernel. Instead, first (optionally but recommended):

mergemaster -p

p means preen mode, for when for example a user and group needs to be added to 
your user database. You want to use this before installworld (or skip it and 
pay attention to /usr/src/UPDATING and while running mergemaster after 
installworld).

> make installworld

> mergemaster -p

without the -p. Should you need to merge some config files, press "l" to keep 
the left sided line/version, "r" to keep the right sided.

> reboot
>

The above recipe (with or without mergemaster -p) is what I've been using for 
as long as I can remember. It's pretty safe and if you don't have a serial 
console hooked up at your remote site, it's probably the best you can do. 
(also shut down all services except ssh before installworld). 

Well, if you're experienced and not too whimpy you *could* also use the dist 
tarballs from a recent install CD, extract them or copy first then juggle 
with some mountpoints to see if anything breaks, go back and forth a bit if 
needed... so you'd replace your /bin, your /sbin, .. etc, one by one and in 
the end reboot. 

HTH,

Dan

> TIA,
> beno
> _______________________________________________
> freebsd-questions at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to
> "freebsd-questions-unsubscribe at freebsd.org"


More information about the freebsd-questions mailing list