Skip to main content

Published: in Videos

How to upgrade freebsd 15.0 to 15.1 using new FreeBSD-base (pkgbase) method

By Sam Sheridan - 30th September, 2026

FreeBSD 15.0 reaches end of life today, 30 September 2026. So if you are still running it, now is the time to move to 15.1. In my previous post I covered systems updated with freebsd-update. This time I take a 15.0 machine installed with the packaged base system (pkgbase) through the upgrade to 15.1-RELEASE, following the official upgrade instructions step by step.

Watch the full video:

Check which method applies to you

pkg which /usr/bin/uname

If it returns a FreeBSD-runtime package, your system uses pkgbase and this guide is for you. If it says /usr/bin/uname was not found in the database, follow my freebsd-update guide instead.

Before starting on a live system, make sure you have a working backup and read the 15.1 release notes and errata. I use doas in the video. If you use sudo, substitute that, or run the commands as root.

Create a boot environment

doas bectl create -r pre-15.1
doas bectl list

If anything goes wrong, you can boot back into this environment from the loader menu.

Bring 15.0 up to date

doas pkg upgrade -r FreeBSD-base

My machine was already current, but apply any updates before moving on.

Upgrade the base system to 15.1

This is the step that actually moves the system to 15.1. It changes the ABI and release version that pkg uses, then upgrades the base packages. Copy the command from the pkgbase section of the upgrade instructions rather than typing it from memory.

pkg lists what will be installed, upgraded and removed, including the kernel. Read that list before accepting it, and read any messages printed afterwards. If you use local_unbound, the instructions say to regenerate its configuration before restarting it.

Upgrade third-party kernel modules

doas pkg upgrade -r FreeBSD-ports-kmods

Check for failed configuration merges

find /etc /usr/local/etc -name '*.pkgnew'

Any files listed are configuration updates that pkg could not merge. Nothing was reported on my machine.

Update the boot loader

Check whether your machine boots with UEFI or BIOS:

sysctl machdep.bootmethod

Then follow the matching section of the instructions. My machine uses BIOS and runs on Proxmox, so the disk is vtbd0 rather than ada0:

gpart show
doas gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 vtbd0

The -i value must be the index of your freebsd-boot partition, and the device must be your own disk. On a ZFS mirror, repeat this for every disk. Otherwise the system may not boot if the first disk fails.

Reboot and check

doas reboot
freebsd-version -kru

It should now report 15.1-RELEASE. Before making other changes, I create a new boot environment and remove the old one:

doas bectl create post-15.1
doas bectl destroy pre-15.1

A note for NVIDIA users

Some NVIDIA driver packages are built for 15.0 and loaded on 15.1. On my desktop, this made the system reboot as soon as Hyprland started. If you use an NVIDIA card, install the system source and the ports tree and build the drivers from source after upgrading.

Tags:

freebsd open source cybersecurity

Got Questions?

Find quick answers to common IT support questions

How quickly can you respond to IT issues?

While many companies claim a 15-minute response, we guarantee a one-hour response time for urgent issues. This realistic timeframe allows our expert team to mobilise properly and arrive fully prepared to diagnose and resolve the problem efficiently - ensuring quality support rather than a rushed service.

How long has Sheridan Computers been established?

Sheridan Computers was established in 2001, so we've been looking after business IT for 25 years.

Browse the Knowledge Base

IT Emergency?

Give us a call.

Help & Support
Standard Support Hours

Monday - Friday 8:00 - 17:00
Saturday Closed
Sunday Closed
Other Ways to Reach Us
24/7 Emergency Support

Critical issues? Our emergency team is available 24/7 for clients with 24/7 cover.

Emergency Support Line