Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 1 Mar 2019 13:30:02 +0100
From:      Miroslav Lachman <000.fbsd@quip.cz>
To:        Lee Damon <nomad@castle.org>, freebsd-stable@freebsd.org
Subject:   Re: source upgrade FBSD10 -> 11 (then 12)
Message-ID:  <d79aa6cb-b6e1-9913-a5c0-b7f2af838407@quip.cz>
In-Reply-To: <04a54d93-9132-5d6d-b8a7-c8a4dd8de8c5@castle.org>
References:  <04a54d93-9132-5d6d-b8a7-c8a4dd8de8c5@castle.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Lee Damon wrote on 2019/02/28 17:18:
> I have three old FBSD 10 boxes that I need to upgrade. Ordinarily I do 
> this by building a new box with the latest OS then migrating services 
> and data. Unfortunately I don't have that option this time, the upgrade 
> has to happen in-place. My plan is to go from 10 to 11 then from 11 to 12.
> 
> I was looking at the "Upgrading FreeBSD" part of 
> https://www.freebsd.org/releases/11.1R/installation.html#upgrade but 
> unfortunately it seems to be missing a critical URL or two:
> 
> "The procedure for doing a source code based update is described in and ."
> 
> I tracked down where I think it points and the instructions appear to be 
> just for same-version updates. Can I safely move /usr/src out of the way 
> then check out the stable/11 and compile/install it or are there other 
> things I need to do?

The upgrade procedure is the same for major upgrade (10.x to 11.x ) as 
for minor upgrade (10.3 to 10.4).

It is recommended to upgrade to the latest 10.x then to 11.x but 
sometimes I did source upgrade with skipping the whole branch - from 8.4 
to 10.1 or 10.2. It worked with one exception but this must be tested first.

If you plan to upgrade from 10.x to 11.2 then everything you need is 
described in /usr/src/Makefile

Just checkout the sources in to /usr/src as usual and then

For individuals wanting to upgrade their sources (even if only a
delta of a few days):

  1.  `cd /usr/src'   (or to the directory containing your source tree).
  2.  `make buildworld'
  3.  `make buildkernel KERNCONF=YOUR_KERNEL_HERE'     (default is GENERIC).
  4.  `make installkernel KERNCONF=YOUR_KERNEL_HERE'   (default is GENERIC).
       [steps 3. & 4. can be combined by using the "kernel" target]
  5.  `reboot'    (in single user mode: boot -s from the loader prompt).
  6.  `mergemaster -p'
  7.  `make installworld'
  8.  `mergemaster'      (you may wish to use -i, along with -U or -F).
  9.  `make delete-old'
10.  `reboot'
11.  `make delete-old-libs' (in case no 3rd party program uses them anymore)


I always skip step 5. doing all without reboot but beware of dragons!

On upgrade from latest 10 (10-STABLE or 10.4-RELEASE) you may see 
notices on "make installkernel" phase:

kldxref: unknown metadata record 4 in file atacard.ko
kldxref: unknown metadata record 4 in file atp.ko

They can be safely ignored.

More details about the upgrade process
https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html

Kind regards
Miroslav Lachman



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?d79aa6cb-b6e1-9913-a5c0-b7f2af838407>