FreeBSD UEFI - hpaluch/hpaluch.github.io GitHub Wiki

FreeBSD under UEFI setup

Here is sample instalation of FreeBSD 14.1 on Proxmox in UEFI mode similaro to NetBSD UEFI

Proxmox VM:

  • OS Type: Linux 6.x - 2.6 kernel (intentional - to avoid emulating too old hardware)
  • Machine: Default (i440fx)
  • BIOS: OVMF (UEFI)
  • 1xCPU, host passtrough
  • 2GB RAM
  • Disk: Virtio BLK, 32GB

Installation ISO: -disc1.iso seems to be fine in UEFI mode.

Getting list of disks:

$ sysctl kern.disks

kern.disks: cd0 vtbd0

Protective PMBR:

fdisk vtbd0

...

Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 238 (0xee),(EFI GPT)
    start 1, size 67108863 (32767 Meg), flag 0
	beg: cyl 0/ head 0/ sector 2;
	end: cyl 1023/ head 255/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>

GPT partitions:

$ gpart show vtbd0

=>      40  67108784  vtbd0  GPT  (32G)
        40    532480      1  efi  (260M)
    532520  62382080      2  freebsd-ufs  (30G)
  62914600   3354624      3  freebsd-swap  (1.6G)
  66269224    839600         - free -  (410M)

EFI partition is already mounted:

$ df -h /boot/efi

Filesystem      Size    Used   Avail Capacity  Mounted on
/dev/vtbd0p1    260M    1.3M    259M     1%    /boot/efi

$ find /boot/efi -type f

/boot/efi/efi/freebsd/loader.efi
/boot/efi/efi/boot/bootx64.efi

Lowering screen resolution

Under Proxmox, FreeBSD EFI uses too high resolution. Fixed by adding to /boot/loader.conf:

efi_max_resolution="720p"

And reboot. (First I tried OVMF UEFI setup, but without effect...)

You can check resolution after boot using:

$ dmesg | fgrep efifb

VT(efifb): resolution 1280x720

More details are on:

⚠️ **GitHub.com Fallback** ⚠️