binary upgrade of a remote box

Doug Hardie bc979 at
Sat Jun 21 01:34:18 UTC 2014

On 20 June 2014, at 05:24, Victor Sudakov <vas at> wrote:

> Colleagues,
> I have some remote boxes running outdated versions of FreeBSD like
> 8.2-RELEASE-p6 or even 7.4-RELEASE-p5
> What's the least painful way of updating those systems to something
> like RELENG_9_2 ? 
> I am comfortable with the "make world" method and have done this
> remotely before, but those boxes are too weak to compile their own
> world, and the disks are too small. Mounting /usr/{src,obj} from a
> remote host is not an option because of relatively slow and unreliable
> WAN links.
> I am very uncomfortable with "freebsd-update upgrade", at least it's
> not something I would risk remotely.
> Any more ideas of a way to perform a smooth binary upgrade?

Here is the approach I use:

I keep one system that is purely for development/test.  Its large enough to hold and build the entire system.  Note, these machines are all remote.  I use freebsd-update to keep it up to date.  I then rebuild kernels and userland on it since I need to have non-defaults in the kernel and changes to sendmail to support STARTTLS.  That machine is also configured as a NFS server.

On the actual production machines, I mount /usr/src, /usr/obj, and /usr/ports via NFS and then to an install kernel and installworld.  Once that is done, I use mergemaster and then reboot the machine.  Upgrades across major versions often require additional steps like recompiling all my local apps.  Those then have to be transferred to the production machines.

I have a terminal controller setup to enable me to access the server's console ports via TCP.  Thats just in case there are issues.  It does get used much more often that I would like.

More information about the freebsd-questions mailing list