Today I successfully upgraded my FreeBSD home nas server from 10.3 to 11.0. This is the final release of version 11.0, though the official announcement is expected to be made on September 28.
After the system upgrade, I need to also upgrade the 2 zpools (tank and zroot) so they can have new features. Upgrading
tank was easy, all I needed to do was running this command:
# zpool upgrade tank This system supports ZFS pool feature flags. Enabled the following features on 'tank': sha512 skein
zroot, in addition to running the above command (by replacing the actually zpool name to
zroot), I also need to update the boot code.
root@nas:~ # zpool upgrade zroot This system supports ZFS pool feature flags. Enabled the following features on 'zroot': sha512 skein If you boot from pool 'zroot', don't forget to update boot code. Assuming you use GPT partitioning and da0 is your boot disk the following command will do it: gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 da0
What’s the boot code? Good question. Not sure what it is, I’ll find out later by reading the FreeBSD document.
The boot disk in my server is not
da0. How do we find out what it is?
root@nas:~ # gpart show => 34 125045357 ada4 GPT (60G) 34 1024 1 freebsd-boot (512K) 1058 4194304 2 freebsd-swap (2.0G) 4195362 120850029 3 freebsd-zfs (58G)
In my case, it’s
ada4, and the partition the boot sits on is
So, I can now proceed to update the boot code:
root@nas:~ # gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 ada4 partcode written to ada4p1 bootcode written to ada4
After rebooting the machine, the system is still working.