[Bug 267535] freebsd-update does not create proper deep boot environment backups

From: <bugzilla-noreply_at_freebsd.org>
Date: Wed, 02 Nov 2022 23:37:51 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=267535

            Bug ID: 267535
           Summary: freebsd-update does not create proper deep boot
                    environment backups
           Product: Base System
           Version: 13.1-RELEASE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: bin
          Assignee: bugs@FreeBSD.org
          Reporter: freebsd@juicer.orange-carb.org

freebsd-update assumes that the system is using a "shallow" boot environment as
created by the Auto ZFS option to bsdinstall(8). However, the zfsbe rc(8)
script also supports a "deep" boot environment in which the boot environment is
divided into subordinate datasets. (I am using the terms defined in bectl(8) at
"Boot Environment Structures.")

In deep boot environments, The action taken by freebsd-update (bectl create)
results in an empty copy of the ROOT dataset that holds the subordinate
datasets. In other words, freebsd-update is backing up the wrong thing, and
therefore there is no backup of the real boot environment, contrary to
expectations. This is unhelpful at best, and at worst provides a false sense of
security should a restore be necessary.

What should happen is that freebsd-update should determine if this is a shallow
or deep boot environment. In the latter case, it should instead run "bectl
create -r" to correctly back up the deep boot environment.

Thank you for a useful utility.

-- 
You are receiving this mail because:
You are the assignee for the bug.