This however isn't relevant. Upgrades inside the same major version are always supported and tested (12.2 -> 12.3), as well as upgrades from one to another supported version are (12.3 -> 13.1).12.3 was released a few months after 13.0.
This is a small server so nothing fancy. Certainly no DRM. Mainly just running sysutils/cbsd to dick around. Nothing production so if it breaks down it's not a disaster. But that doesn't prevent me from wanting to do things properlyEven if not, I think you should be ok, just remember to pkg upgrade -f because things like drm kmods will have changed.
I would argue that by definition any upgrade is "risky".BEs greatest advantage is when you are trying something risky, l
Why chroot?create new BE, and chroot to it.
bectl create
NOTE:
gpart bootcode needs to be done on all boot devices, obviously if
it's UEFI boot, you need to do something different.
The -c on pkg-static does a chroot, so you need to do the mount
of devfs command before it.
bectl create 13.1-RELEASE
bectl mount 13.1-RELEASE /mnt
freebsd-update upgrade -b /mnt -d /mnt/var/db/freebsd-update -r 13.1-RELEASE
freebsd-update -b /mnt -d /mnt/var/db/freebsd-update install
freebsd-update -b /mnt -d /mnt/var/db/freebsd-update install
freebsd-update -b /mnt -d /mnt/var/db/freebsd-update install # yes run three times
gpart bootcode -b /mnt/boot/pmbr -p /mnt/boot/gptzfsboot -i 1 ada0
mount -t devfs devfs /mnt/dev # pkg needs devfs mounted
pkg-static -c /mnt upgrade -f
umount /mnt/dev
bectl umount 13.1-RELEASE
bectl activate 13.1-RELEASE
shutdown -r now # only one reboot!
bectl destroy -o 13.0-RELEASE
– not 12.2 to 12.3 to 13.1 …
… I’d just go straight from 12.2 to 13.1. …
-b
option, just like you can use DESTDIR
with make install[world|kernel]
, to do the upgrade in some BE mounted somewhere.chroot
Good to know. Thanks!<https://www.freebsd.org/releases/13.1R/installation/#upgrade-binary> there's the upgrade path from 12.3 to 13.1.
I think the method I posted which does a pkg-static -c may do the right thing. I've not checked because I've honestly not cared to check.Can you upgrade packages whilst changed and then find the log, post-exit?
… from 12 … Be aware that once booted into 13.x if you do a zpool upgrade you should update the bootcode …
bootcode
argument of gpart(8)… To update old ESP partitions, users should stop using the gpart(8) utility. …
Simpler yes. But then you need to reboot again after completing the upgrade to run the upgraded system. The other methods allow you to upgrade the system and reboot once to wind up in the upgrade.A simpler option is to create a new BE, activate and reboot. Now you are running under the new BE. And then do the install.
That will work as well. But it will sacrifice an often overlooked advantage of BEs: You can do a full upgrade of everything with just one single rebootA simpler option is to create a new BE, activate and reboot. Now you are running under the new BE. And then do the install.
… I've not checked … The -c does a chroot, but because you are not running it from within a chroot, it should push logs and other data to the currently mounted /var (or …
-c
more than once.Exactly! But to some (including me) one more reboot may be preferable to fat fingering something!But "sixes and threes" "horses for courses" "your system your choice".
I've done both methods. They both work fine. The key is pick a process and stick with it. It doesn't matter what anyone else says; in the end the goal is a correctly upgraded system and happy users. I like a single reboot because it only affects me. If it were @WORK I'd do two reboots just to have extra cup of coffee.Exactly! But to some (including me) one more reboot may be preferable to fat fingering something!
the -c