Solved Why is BE still on old version?

I just upgraded from 13.2 to 13.3
A bectl list gives me
Code:
BE                                 Active Mountpoint Space Created
13.2-RELEASE-p11_2024-07-10_160446 -      -          692K  2024-07-10 16:04
13.2-RELEASE-p12_2024-07-14_152044 -      -          5.98M 2024-07-14 15:20
13.2-RELEASE-p2_2023-12-20_095538  NR     /          69.7G 2023-12-20 09:55
13.2-RELEASE-p2_2023-12-22_145154  -      -          10.8G 2023-12-22 14:51
13.2-RELEASE-p9_2024-06-03_180020  -      -          952M  2024-06-03 18:00
13.3-RELEASE-p3_2024-07-14_152238  -      -          7.70M 2024-07-14 15:22
default                            -      -          29.0G 2022-04-06 11:59

Shouldn't be the 13.3-RELEASE-p3 automatically the new BE after the update?
I did a
bectl activate -t 13.3... for test, and it seems to work properly.
But before I kill the 13.2....-p2 (which also bothers me, why not ...-p12) I thought I ask you guys.

thanks in advance
 
bectl activate -t is only for for the "next boot". If you "bectl activate 13.3-RELEASE-p3_2024-07-14_152238" then bectl list, you should see the "R" move. N is "booted into Now" R is "Next Reboot"

if you do "-t" and reboot, that is only in effect until you reboot again.
 
Thanks, mer, but I know this; that's why I said "for test"
I want to ensure I don't kill my machine, if I switch permanently to the 13.3-BE and destroy the at-the-moment-default 13.2, which I very much like to do, 'cause in consumes ~70G on my 256G nvd0-pool containing my sys (/, /usr, etc.
- /home/ is outsourced)

Thanks SirDice,
my /boot/loader.conf contains nothing special, at least nothing I understand has to do with the BE:
# More info about booting:
# verbose_loading="YES"
# boot_verbose="YES"
geom_mirror_load="YES"
kern.geom.label.disk_ident.enable="0"
kern.geom.label.gptid.enable="0"
cryptodev_load="YES"
zfs_load="YES"
tmpfs_load="YES"
kern.vty=vt
efi_max_resolution="1920x1080"
#machdep.max_ldt_segment="2048" #evtl. nötig für Wine

#VM - entweder bhyve = vmm ODER virtualbox
# bhyve virtual machine monitor
# vmm_load="NO"
# VirtualBox
vboxdrv_load="YES"

# zum brennen von DVDs
hw.ata.atapi_dma="1"

#Don't wait for USB
hw.usb.no_boot_wait=1


Do I understand you right, that I have to change to a new BE, while the update will never change it?
What happens if I don't do it (forget)? In extreme some day I boot a 18.x with a 13.2-BE? This cannot work, does it?

Thanks for all inputs.
 
The usual upgrade procedure does all changes to the currently active BE ("default" by default), but creates some BE snapshots along the way so you can go back if needed. It looks like at some point in time you changed to "13.2-RELEASE-p2_2023-12-20_095538" as the active BE, and didn't return to default. Further upgrades would then happen on this active BE named "13.2-RELEASE-p2_2023-12-20_095538".

If your currently active "13.2-RELEASE-p2_2023-12-20_095538" is actually 13.3 (check freebsd-version -ku), it is probably the most current BE, although badly named. The "13.3-RELEASE-p3_2024-07-14_152238" and the other BEs will be just old snapshots from the upgrade procedures. And "default" is probably stuck at the time around when you switched to "13.2-RELEASE-p2_2023-12-20_095538".

You can mount BEs to inspect them, see bectl mount {BE} {mountpoint}. To clean up you could destroy unneeded BEs (including default), and then rename "13.2-RELEASE-p2_2023-12-20_095538" to "default".
 
I just upgraded from 13.2 to 13.3
A bectl list gives me
Code:
BE                                 Active Mountpoint Space Created
13.2-RELEASE-p11_2024-07-10_160446 -      -          692K  2024-07-10 16:04
13.2-RELEASE-p12_2024-07-14_152044 -      -          5.98M 2024-07-14 15:20
13.2-RELEASE-p2_2023-12-20_095538  NR     /          69.7G 2023-12-20 09:55
13.2-RELEASE-p2_2023-12-22_145154  -      -          10.8G 2023-12-22 14:51
13.2-RELEASE-p9_2024-06-03_180020  -      -          952M  2024-06-03 18:00
13.3-RELEASE-p3_2024-07-14_152238  -      -          7.70M 2024-07-14 15:22
default                            -      -          29.0G 2022-04-06 11:59

Shouldn't be the 13.3-RELEASE-p3 automatically the new BE after the update?
I did a
bectl activate -t 13.3... for test, and it seems to work properly.
But before I kill the 13.2....-p2 (which also bothers me, why not ...-p12) I thought I ask you guys.

thanks in advance
Don't rush for immediate actions before it's clear what your setup actually is like. In fact, in my experience freebsd-update never switches boot environments, but creates ones you can fall back to in case of failures/mistakes. Some of those will happen after part of an update having been done and at least one further run of freebsd-update still being required. If, for example, you'd have the default BE active and successfully did a complete sequence of freebsd-update, the default BE would still be active (but running the updated FreeBSD), and you'd have one or more "backup" BE's with their names depending on the FreeBSD version running when doing the update and the date and time of the update.

To me, your list of BE's looks light you might have switched the BE in the past and continued using the system from that BE. That's usually fine (and I had to do this myself), but if you aren't sure anymore about what had been done in the past, the safest option would be to boot into each one of the BE's and determine the actual version of the system. For that, freebsd-version -kru and uname -a will be your friend.
Do I understand you right, that I have to change to a new BE, while the update will never change it?
What happens if I don't do it (forget)? In extreme some day I boot a 18.x with a 13.2-BE? This cannot work, does it?
You'd just boot a by this time very outdated 13.2 FreeBSD. Then again, if you had done a zpool upgrade in the meantime, maybe you wouldn't...
 
Do I understand you right, that I have to change to a new BE, while the update will never change it?
The latter is true. Regarding the first part: you do not have to change to a new BE, you can choose to do so. If you decide to change or not, that's pretty much the same. A former discussion was here on the forum about that: bectl confusion

What happens if I don't do it (forget)? In extreme some day I boot a 18.x with a 13.2-BE? This cannot work, does it?
If you happen to forget, then the CreateBootEnv parameter has got you covered: BE-s are created automatically for ZFS on root systems! Have a look at my musing about automatic vs. manual management of BE-s (and more) here

About the space "savings" that you will receive after deleting certain BE-s: have a look at the underlying snapshots and see what deleting them will give you before you would actually delete them by deploying zfs-destroy(8) as a dry run: use dry-run ("No-op") deletion. Per snapshot related to the BE in question this should give you an accurate assesment of the potential free space gains. The space that becomes available by deleting a snapshot/BE is related to the diff's of its neighbouring (neighbouring as is created just before and just after it, time wise) snapshots. So deleting a particular snapshot BE may not give you much free space if it is closely created in time with its neighbours. Note: for actual BE management do not delete actual snapshots! Use bectl ( or beadm(8) ) for that; there is some BE-glue that has to be taken care of!
 
It looks like at some point in time you changed to "13.2-RELEASE-p2_2023-12-20_095538" as the active BE, and didn't return to default.
Yeah, I think I did - but I didn't thought it was forever...

However,
I will read all your inputs in detail tomorrow - see lots of useful stuff here which helps me a lot to understand the BEs better as I thought I did by what I got from the man page, only, try to reproduce, what I did, and clean up my snapshots.

Thank you all guys!
 
Thanks guys!
Nothing serious happened after all.
Just for to clear up, and close this thread:

What I did was - as you already figured and pointed out - at some point (presumbly around christmas 23) I changed my default BE from "default" to the one created by last update made, this "13.2something".

As I understand when updating two things happen:
1. An additional new BE is created, but it's not automatically the new default one, since:
2. also the currently as default used BE is updated; even if it is (stupidly, or for whatever reasons) not named "default", e.g. switched to that one as default.
Then the name may cause confusions, but it's just its name only that stick with the old version.
(freebsd-version -kru shows I'm running the most recent version of 13.3)

So I mounted "default", checked it was really not updated a long time, removed it, and renamed my "13.2something" to "default", as it is still designated with NR and / as the actual running, and being the one always rebooted next times - now is not only the default one, but also named "default".

Again:
Thank you all very much, guys.
Thanks for your patience.
Thanks for your elaborate explanations.

Again, I learned a lot.
And, what especially for me personally is important, got a bit more self-confident about FreeBSD.
(After messing with Windows too long, having lots of things experienced, had made me a bit uncertain, not to say paranoid about some stuff, especially updates ☺️)

Now I have to check the snapshots, and take out the garbage to get those 60G reduced.

Thanks.
Solved, because of your help.
 
Back
Top