Chapter 24. Updating and Upgrading FreeBSD

Restructured, reorganized, and parts updated by Jim Mock.
Original work by Jordan Hubbard, Poul-Henning Kamp, John Polstra and Nik Clayton.
Table of Contents
24.1. Synopsis
24.2. FreeBSD Update
24.3. Portsnap: a Ports Collection Update Tool
24.4. Updating the Documentation Set
24.5. Tracking a Development Branch
24.6. Synchronizing Source
24.7. Rebuilding world
24.8. Tracking for Multiple Machines

24.1. Synopsis

FreeBSD is under constant development between releases. Some people prefer to use the officially released versions, while others prefer to keep in sync with the latest developments. However, even official releases are often updated with security and other critical fixes. Regardless of the version used, FreeBSD provides all the necessary tools to keep the system updated, and allows for easy upgrades between versions. This chapter describes how to track the development system and the basic tools for keeping a FreeBSD system up-to-date.

After reading this chapter, you will know:

  • Which utilities are available to update the system and the Ports Collection.

  • How to keep a FreeBSD system up-to-date with freebsd-update, Subversion, or CTM.

  • How to compare the state of an installed system against a known pristine copy.

  • How to keep the installed documentation up-to-date with Subversion or documentation ports.

  • The difference between the two development branches: FreeBSD-STABLE and FreeBSD-CURRENT.

  • How to rebuild and reinstall the entire base system.

Before reading this chapter, you should:


Throughout this chapter, svn is used to obtain and update FreeBSD sources. To use it, first install the devel/subversion port or package.

All FreeBSD documents are available for download at

Questions that are not answered by the documentation may be sent to <>.

Send questions about this document to <>.