‘freebsd-update updatesready’ is confusing

© 2026 Gregory D. Weber

Activities of March 16, 2026. Published March 16, 2026.

For several days now I’ve been awaiting an update to FreeBSD to fix vulnerabilities reported in the nightly security run. I used to use freebsd-update fetch install, but that was slow (several seconds wait), so I switched to checking for updates with freebsd-update updatesready. It is significantly faster.

But today, although freebsd-update updatesready told me there were no updates available, I happened to run freebsd-update fetch install in addition, and it did fetch and install the updates I had been waiting for.

root@gdweber:~ # freebsd-update updatesready
src component not installed, skipped
No updates are available to install.
root@gdweber:~ # freebsd-update fetch install
src component not installed, skipped
Looking up update.FreeBSD.org mirrors... 3 mirrors found.
Fetching metadata signature for 14.3-RELEASE from update1.freebsd.org... done.
Fetching metadata index... done.
Fetching 2 metadata patches.. done.
Applying metadata patches... done.
Inspecting system... done.
Preparing to download files... done.
Fetching 104 patches.....10....20....30....40....50....60....70....80....90....100.. done.
Applying patches... done.
The following files will be updated as part of updating to
14.3-RELEASE-p9:

etc.

A closer look at man freebsd-update shows me that updatesready will “Check if there are fetched updates ready to install.” Note the word “fetched”. So if there are updates available (therefore in some sense “ready”), but not fetched, it will answer “No updates available to install” and return exit code 2.

It pays to read the fine print!