Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    23.09.1 to 24.03 Beta Not Setting Proper Boot Environment

    Plus 24.03 Development Snapshots (Retired)
    2
    23
    1.6k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      Lurick LAYER 8
      last edited by

      Not exactly sure what's going on or how to debug this best but I was having issues between 24.03 beta builds where it would always boot back into a temp environment so I restored back to a previous snapshot of the VM where I was on 23.09.1 and tried to start "fresh".
      Upgrading to the current 24.03.b.20240307.0536 build will create a backup boot environment called "default_20240307064036" and then set that to active which causes the system to boot up in 23.09.1 instead of staying on "default" which would boot into the newest beta build. So it would seem the system is setting the copied/backup boot environment as the target boot environment which is definitely not the right behavior.

      5e74cf16-f6d0-4a6d-95ef-83b3dbd73ac7-image.png

      L cmcdonaldC 2 Replies Last reply Reply Quote 0
      • L
        Lurick LAYER 8 @Lurick
        last edited by

        To add, what I was seeing prior to the snapshot revert was similar but not exactly the same. Instead the system would constantly set the previous boot environment as a temp boot environment and no matter how many times I rebooted it would always reboot into that temp environment until I deleted that boot environment marked as a temp boot environment and then rebooted and it would boot fine until the next build.

        1 Reply Last reply Reply Quote 0
        • cmcdonaldC
          cmcdonald Netgate Developer @Lurick
          last edited by

          @Lurick

          Go to update settings and check the defer reboot option. Try the upgrade again. Now take a screenshot of the BE list

          L 1 Reply Last reply Reply Quote 0
          • L
            Lurick LAYER 8 @cmcdonald
            last edited by Lurick

            @cmcdonald said in 23.09.1 to 24.03 Beta Not Setting Proper Boot Environment:

            @Lurick

            Go to update settings and check the defer reboot option. Try the upgrade again. Now take a screenshot of the BE list

            Sure thing, this is after updating to today's build from 24.03.b.20240307.0536 and deferring the reboot:

            8eef65f2-cc3f-4f01-9bc7-7590645d6db7-image.png

            cmcdonaldC 1 Reply Last reply Reply Quote 0
            • cmcdonaldC
              cmcdonald Netgate Developer @Lurick
              last edited by

              @Lurick

              Perfect, that's what it should look like. Now run the following commands:

              bectl mount default
              touch /tmp/be_mount.XXXX/verbose_rc
              bectl unmount -f default
              

              Reboot and watch the console.

              You see a ton more output. I need this output 😀

              L 1 Reply Last reply Reply Quote 1
              • L
                Lurick LAYER 8 @cmcdonald
                last edited by

                @cmcdonald Sounds good, is there a file that will be written to as well I can grab?
                Otherwise I'll try to figure out how to grab all the console output from proxmox.

                cmcdonaldC 2 Replies Last reply Reply Quote 0
                • cmcdonaldC
                  cmcdonald Netgate Developer @Lurick
                  last edited by

                  @Lurick unfortunately no, the filesystem is read-only until later in the boot process. Maybe record a video of the proxmox console? You can email me at cmcdonald<at>netgate.com

                  L 1 Reply Last reply Reply Quote 1
                  • cmcdonaldC
                    cmcdonald Netgate Developer @Lurick
                    last edited by

                    This post is deleted!
                    1 Reply Last reply Reply Quote 0
                    • L
                      Lurick LAYER 8 @cmcdonald
                      last edited by

                      @cmcdonald
                      A bit confused because it's doing this but it keeps booting into the non-temp boot environment which is the old version. So it seems to be behaving backwards to what it should be doing?

                      Current Boot Environment: default_20240308062713 
                        Temporary Boot Environment: default                
                       Next Boot Environment: default_20240308062713
                      

                      I did this and didn't see any additional output after rebooting either:

                      [24.03-BETA][admin@]/root: bectl mount default_20240308062713
                      boot environment is already mounted
                      Failed to mount bootenv default_20240308062713 at temporary path (null)
                      [24.03-BETA][admin@firewall]/root: bectl mount default
                      /tmp/be_mount.2qOj
                      [24.03-BETA][admin@firewall]/root: touch /tmp/be_mount.2qOj/verbose_rc
                      [24.03-BETA][admin@firewall]/root: bectl unmount -f default
                      

                      I did capture a couple videos though, will send those over shortly.

                      L 1 Reply Last reply Reply Quote 0
                      • L
                        Lurick LAYER 8 @Lurick
                        last edited by

                        Sent both videos with links.

                        cmcdonaldC 1 Reply Last reply Reply Quote 1
                        • cmcdonaldC
                          cmcdonald Netgate Developer @Lurick
                          last edited by

                          @Lurick

                          What version of CE did you upgrade from?

                          L 1 Reply Last reply Reply Quote 0
                          • L
                            Lurick LAYER 8 @cmcdonald
                            last edited by

                            @cmcdonald I can't even remember at the moment, I might not have even done that since I think I started on 22.01 from the ISO but maybe it was the CE version available around that time. So maybe 2.5?

                            cmcdonaldC 1 Reply Last reply Reply Quote 0
                            • cmcdonaldC
                              cmcdonald Netgate Developer @Lurick
                              last edited by

                              @Lurick

                              The problem is your boot loader is REALLY old. As old as whatever the first version you installed was. So old in fact that the loader at that time didn't even understand temporary boot environments.

                              We recently started updating the boot loader on EFI but haven't done the BIOS path yet. I'm working on that today.

                              In the mean time, I will circile back after lunch and give you instructions on how to update the boot loader manually.

                              L 1 Reply Last reply Reply Quote 1
                              • L
                                Lurick LAYER 8 @cmcdonald
                                last edited by

                                @cmcdonald That makes sense, yah the VM has been around for a while now so that's not surprising!

                                cmcdonaldC 1 Reply Last reply Reply Quote 0
                                • cmcdonaldC
                                  cmcdonald Netgate Developer @Lurick
                                  last edited by

                                  @Lurick

                                  What's the output from

                                  gpart show
                                  
                                  L 1 Reply Last reply Reply Quote 0
                                  • L
                                    Lurick LAYER 8 @cmcdonald
                                    last edited by

                                    @cmcdonald

                                    /root: gpart show
                                    =>       40  157286320  da0  GPT  (75G)
                                             40       1024    1  freebsd-boot  (512K)
                                           1064        984       - free -  (492K)
                                           2048    2097152    2  freebsd-swap  (1.0G)
                                        2099200  155185152    3  freebsd-zfs  (74G)
                                      157284352       2008       - free -  (1.0M)
                                    
                                    cmcdonaldC 1 Reply Last reply Reply Quote 1
                                    • cmcdonaldC
                                      cmcdonald Netgate Developer @Lurick
                                      last edited by cmcdonald

                                      @Lurick said in 23.09.1 to 24.03 Beta Not Setting Proper Boot Environment:

                                      @cmcdonald

                                      /root: gpart show
                                      =>       40  157286320  da0  GPT  (75G)
                                               40       1024    1  freebsd-boot  (512K)
                                             1064        984       - free -  (492K)
                                             2048    2097152    2  freebsd-swap  (1.0G)
                                          2099200  155185152    3  freebsd-zfs  (74G)
                                        157284352       2008       - free -  (1.0M)
                                      

                                      cool

                                      so you'll want to do the following (assuming default is still the upgraded BE and default_20240308062713 is the old BE.

                                      bectl mount default
                                      gpart bootcode -b /tmp/be_mount.XXXX/boot/pmbr -p /tmp/be_mount.XXXX/boot/gptzfsboot -i 1 da0
                                      bectl unmount -f default
                                      bectl activate -t default
                                      shutdown -r now
                                      

                                      You should now boot into default at which point it will set itself to be the Next Boot Environment (assuming that it does boot properly)

                                      L 1 Reply Last reply Reply Quote 1
                                      • L
                                        Lurick LAYER 8 @cmcdonald
                                        last edited by

                                        @cmcdonald Awesome, thanks!
                                        It booted up just fine and without issue, just had to fix the typo, haha :)
                                        Will monitor over the next couple of updates and make sure but hopefully that fixed it!

                                        cmcdonaldC 1 Reply Last reply Reply Quote 1
                                        • cmcdonaldC
                                          cmcdonald Netgate Developer @Lurick
                                          last edited by

                                          @Lurick

                                          And I will be teaching the pfSense-boot package how to update BIOS systems :)

                                          L 1 Reply Last reply Reply Quote 1
                                          • L
                                            Lurick LAYER 8 @cmcdonald
                                            last edited by

                                            @cmcdonald
                                            Awesome, just make sure you use default and not defaut ;)

                                            cmcdonaldC 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.