Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 21 Mar 2001 20:52:04 -0800 (PST)
From:      Julian Elischer <julian@elischer.org>
To:        "David O'Brien" <obrien@freebsd.org>
Cc:        Matt Simerson <mpsimerson@hostpro.com>, freebsd-hackers@freebsd.org
Subject:   Re: In general, how to upgrade by rebuilding..
Message-ID:  <Pine.BSF.4.10.10103212048520.11447-100000@InterJet.elischer.org>
In-Reply-To: <20010321204041.A1425@dragon.nuxi.com>

next in thread | previous in thread | raw e-mail | index | archive | help
I would also add that new kernels are almost always capable of running old
binaries but the reverse is often not true.. Old kernels can often not run
new binaries. (new API additions etc.)
So alwyas make and install a new kernel first. (Even if you call it
kernel.new or something) that way if it is bad you can still boot you old
system. Then build and install your new system, running on the new kernel.

On Wed, 21 Mar 2001, David O'Brien wrote:

> First let me say to anyone reading the email I am replying to: 
> 
>  ____           _   _  ___ _____        _         _   _     _     
> |  _ \  ___    | \ | |/ _ \_   _|    __| | ___   | |_| |__ (_)___ 
> | | | |/ _ \   |  \| | | | || |     / _` |/ _ \  | __| '_ \| / __|
> | |_| | (_) |  | |\  | |_| || |    | (_| | (_) | | |_| | | | \__ \
> |____/ \___/   |_| \_|\___/ |_|     \__,_|\___/   \__|_| |_|_|___/
>                                                                 
> 
> 
> On Wed, Mar 21, 2001 at 12:58:04PM -0700, Matt Simerson wrote:
> >   # cd /usr/src
> >   # make buildkernel KERNEL=<KERNEL_CONFIG_FILE_NAME> 
> >   # cd /usr/src; make buildworld
> >   # make installworld
> >   # make installkernel
> >   # mergemaster
> >   # reboot
> 
> 
> The order or "make buildworld" and "make buildkernel" are 100% totally
> BACKWARDS.
> 
> Lets explain why:  There are times when the kernel source is changed to
> use constructs of newer compiler/assembler/linker tools.  Thus the kernel
> will not build with an older set of tools.  The what "make buildkernel"
> does is use the tools (ie, those built from the most up to date sources)
> that are built during "make buildworld" to compile a new kernel.  Thus
> "make buildworld" must PROCEED "make buildkernel".
> 
> Second, the install order above is not the conservative, careful
> approach.  One should issue "make installkernel && reboot" after the
> "make buildkernel" to ensure the new kernel works sufficiently well.  If
> not, one can always fall back to ``kernel.old''.  Since there is no
> ``world.old''; after one does the "make installworld" backup tapes are
> the only way of taking the system back to its previous state.
> 
> -- 
> -- David  (obrien@FreeBSD.org)
>           GNU is Not Unix / Linux Is Not UniX
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-hackers" in the body of the message
> 


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




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.10.10103212048520.11447-100000>