11.2-BETA3 -> 11.2-RC1: no conversion from grub to native loader

Status
Not open for further replies.

styno

Patron
Joined
Apr 11, 2016
Messages
466
TL/DR: old board, usb sticks, no EFI, no new loader after upgrade - had to mess around to make things work.

After upgrading from the GUI, the system rebooted back to 11.2-BETA3. The boot environments look like this, but it never reaches 11.2-RC1:
upload_2018-10-20_12-53-30.png


After investigating the boot process I noticed that it still booted to grub and all but the 11.2-RC1 environment is available from the list.
From the changes to 11.2-RC1: Aha!
The boot loader has changed from GRUB to the native FreeBSD boot loader. This should resolve several issues that some users experienced with GRUB. GRUB was introduced as a temporary solution until the FreeBSD boot loader had full support for boot environments, which it now has.

As this board is a decade+ old (Asus DSBV-D) and it boots from two Sandisk Cruser USB drives, I had little hope to find someone with the same issue this early in the testing process, so I took another config backup and went along fixing this myself.

Some reading-up on the native loader showed that the following command should install the loader with capabilities to boot from a zfs boot pool.
gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i1 da0
But this expects a 'freebsd-boot' partition and gpart show indicates the boot partition is labeled "efi". Note: this old board has no EFI capabilities.

=> 34 31260605 da0 GPT (15G)
34 1024 1 efi (512K)
1058 6 - free - (3.0K)
1064 31259568 2 freebsd-zfs (15G)
31260632 7 - free - (3.5K)


In the end, renaming efi to freebsd-boot and writing the boot code solved this for me.
Please note that I am only doing this procedure on one of the boot devices so I am able to boot back into grub on da1 in case something goes wrong or I have to rollback.
!!DON'T!! just copy paste the following commands if you are troubleshooting an issue and you don't know how to recover from a system that no longer boots at all.
There are a lot of variables that differ from system to system and the following commands may only be applicable to this case.
gpart modify -i 1 -t freebsd-boot da0
gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 da0


I have no idea how it got into this situation, 11-1-RELEASE was a clean install back in december on two mirrored USB devices (mirror setup during install on zeroed media)
 

kdragon75

Wizard
Joined
Aug 7, 2016
Messages
2,457
Great work on the testing. Have you filed a bug report with this information?
 

styno

Patron
Joined
Apr 11, 2016
Messages
466
Status
Not open for further replies.
Top