Though there are several ways in which you can upgrade a FreeBSD system, in recent years FreeBSD has made the process significantly easier than the traditional source builds by the use of a smart utility called freebsd-update. Using freebsd-update, you can easily and quickly update your system to the latest binaries, and even run it via cron to automate system updates.

Updating

To simply run updates on your system, you can fetch and apply all recent updates using the freebsd-update utility.

# freebsd-update fetch
# freebsd-update install

Upgrading

Upgrading your system is also fairly easy, but requires a bit of extra work. Let's say for example, you have a FreeBSD < 8.2 system, and you want to upgrade to FreeBSD 8.2 Release. You can run the following process to do so:

# freebsd-update upgrade -r 8.2-RELEASE

After a bit of processing, freebsd-update will try to auto-replace your configuration files. Sometimes, however, it will happen that it can not replace them automatically, and it will ask you to make manual changes before proceeding. Simply make your changes and then continue.

# freebsd-update install

Patches will now be downloaded and applied, and configuration files will then be merged. The merging of configuration files will require user interaction, and may take quite some time. Be careful! A failed or ignored merge will cause the whole process to abort! The utility will continue to process and prepare to replace the kernel. The system will need to be rebooted, however, in order to replace the kernel and proceed.

# shutdown -r now

After rebooting, you can finish the upgrade process.

# freebsd-update install