FreeBSD UEFI Boot partition

手動インストール、起動パーティション復旧

Create the bootcode partition:
for UEFI Boot:

 gpart add -a 4k -s 260M -t efi ada0
 # Create a FAT32 partition
 newfs_msdos -F 32 -c 1 /dev/ada0p1
 mount -t msdosfs -o longnames /dev/ada0p1 /mnt
 mkdir -p /mnt/EFI/BOOT
 cp /boot/loader.efi /mnt/EFI/BOOT/BOOTX64.efi
 umount /mnt

https://wiki.freebsd.org/RootOnZFS/GPTZFSBoot#Manually_Installing_FreeBSD_on_ZFS

Real Hardware Gotchas
These are some issues that benno@ ran into when using real hardware (ie, not qemu) in early development:
Filesystem not seen. FreeBSD’s FAT32 code appears to sometimes create filesystems that the UEFI code can’t properly read. If the filesystem is small enough, use FAT16 or FAT12 instead. Please submit a PR with details if you are able to reproduce this.

https://wiki.freebsd.org/UEFI

UEFI 仕様は FAT12FAT16FAT32 ファイルシステムのサポートを義務付けています。
EFI システムパーティション - ArchWiki