Upgrade to 14.2, can’t boot | Page 2

Ok, Then you can try this
Boot from LiveCD under UEFI, you need to set your BIOS to UEFI only and disable the legacy BIOS so you can set the boot var using efibootmgr

Check if the disk that you want to convert from freebsd-boot to EFI is correct one. In the example bellow is da0

gpart show

Delete freebsd-boot, freebsd-swap on da0

gpart delete -i 1 da0
gpart delete -i 2 da0

create ESP

gpart add -a 4k -l efiboot0 -t efi -s 260M "da0"

Format ESP

newfs_msdos "/dev/gpt/efiboot0"

Create new SWAP to the rest of the freespace between ESP and freebsd-zfs (Note: You must NOT have any free space at the end of the disk otherwise you will need to specify the start offset for the partition)
gpart add -a 1m -l swap0 -t freebsd-swap “da0”

mount the ESP partition

mkdir /tmp/boot/
mount -t msdosfs /dev/da0p1 /tmp/boot

Copy the EFI and create the boot record in the UEFI

mkdir -p /tmp/boot/efi/EFI/BOOT
cp /boot/loader.efi /tmp/boot/efi/EFI/BOOT/BOOTX64.efi
efibootmgr --create --activate --label "FreeBSD" --loader "/tmp/boot/efi/EFI/BOOTX64.efi"


umount /tmp/boot
shutdown -r now

Note:
By default the efi partitons is also mounted under /boot/efi so the update of the future efi could be easy but this is valid only for the first disk, when you are using for example raid1 you need to update the efi on the secondary disk by hand. So check your /etc/fstab

Read more here: Source link