OPNsense Forum

English Forums => General Discussion => Topic started by: frauholle on February 25, 2024, 10:12:06 AM

Title: BE and snapshots before upgrading
Post by: frauholle on February 25, 2024, 10:12:06 AM
Hello,

before doing an upgrade creating a new boot environment, setting this for next boot and booting into that seems to be the way to go. So upgrade is done on the new BE.

Normally after upgrading the system/kernel the plug-ins/packages will also be upgraded by me. Should I also create snapshots for this? If yes, from what? Or is creating the BE enough?

I did not find any information on what exactly a new BE means in terms of files and folders and how it relates to plug-ins/packages and upgrades thereof.

Can anyone please point me to more information on that?

Thanks,
FrauHolle
Title: Re: BE and snapshots before upgrading
Post by: Patrick M. Hausen on February 25, 2024, 11:27:03 AM
Quote from: frauholle on February 25, 2024, 10:12:06 AM
before doing an upgrade creating a new boot environment, setting this for next boot and booting into that seems to be the way to go. So upgrade is done on the new BE.
This is not necessary. The moment a "new" boot environment is created it is 100% identical to the one currently active and running.

Imagine you are running 23.7 and want to upgrade to 24.1 (I do not create a boot environment for every minor update but always for the major ones).
Further, your current up and running BE is aptly named "23.7"

Your version:
bectl create 24.1
bectl activate 24.1
shutdown -r now
# now perform the upgrade from the UI


My version:
bectl rename 23.7 24.1 # the current boot environment is now named "24.1"
bectl create 23.7 # a 100% identical snapshot is created named "23.7"
# now perform the upgrade from the UI


Quote from: frauholle on February 25, 2024, 10:12:06 AM
Normally after upgrading the system/kernel the plug-ins/packages will also be upgraded by me. Should I also create snapshots for this? If yes, from what? Or is creating the BE enough?
I do not understand. Updating/upgrading OPNsense is a one step process. There are no separate kernel or package updates for you to perform.

Quote from: frauholle on February 25, 2024, 10:12:06 AM
I did not find any information on what exactly a new BE means in terms of files and folders and how it relates to plug-ins/packages and upgrades thereof.
It contains everything that is in the root dataset. See:
root@opnsense:~ # df
Filesystem        1K-blocks    Used    Avail Capacity  Mounted on
zroot/ROOT/24.1    50316228 2294340 48021888     5%    /
devfs                     1       1        0   100%    /dev
/dev/gpt/efiboot0    266176    1872   264304     1%    /boot/efi
zroot              48021984      96 48021888     0%    /zroot
zroot/tmp          48022368     480 48021888     0%    /tmp
zroot/var/crash    48021984      96 48021888     0%    /var/crash
zroot/usr/home     48021984      96 48021888     0%    /usr/home
zroot/var/log      48110892   89004 48021888     0%    /var/log
zroot/var/audit    48021984      96 48021888     0%    /var/audit
zroot/var/mail     48022248     360 48021888     0%    /var/mail
zroot/var/tmp      48021984      96 48021888     0%    /var/tmp
devfs                     1       1        0   100%    /var/dhcpd/dev

So /boot/efi, /tmp, /usr/home, /var/(crash|log|audit|mail|tmp) are not part of the boot environment. Everything else is. That means kernel, OS, OPNsense software, plugins/packages, configuration - everything not in one of the directories listed above.

HTH,
Patrick