---
name: "boot1.efi"
section: "8"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["freebsd"]
url: "https://new.carta.tech/boot1.efi"
---

# boot1.efi(8)

UEFI chain loader

## NAME

**boot1.efi** – UEFI chain loader

## DESCRIPTION

**boot1.efi** has been deprecated and will be removed from a future release. [loader.efi(8)](/loader.efi/8.md) handles all its former use cases with more flexibility.

On UEFI systems, **boot1.efi** loads */boot/loader.efi* from the default root file system and transfers execution there. Some systems may need to use [gptboot.efi(8)](/gptboot.efi/8.md) when [loader.efi(8)](/loader.efi/8.md) cannot be used directly on the ESP (EFI System Partition).

### Initialization

Before looking for the boot device, **boot1.efi** does the following initialization

- Sets up the console using the default UEFI console routines.

- Discovers all possible block devices on the system.

- Initializes all file system modules to read files from those devices

### Boot Device Selection

**boot1.efi** uses the following sequence to determine the root file system for booting:

- If ZFS is configured, **boot1.efi** will search the for zpools that are bootable, preferring the zpool on the boot device over the others.

- If UFS is configured, **boot1.efi** will search all UFS partitions for a bootable partition. It will prefer the lowest numbered bootable partition on the boot device over all other choices. It will fall back to partitions on other devices if none are found.

A partition is considered bootable if it can load */boot/loader.efi* from it. Command line arguments to the next boot stage are read from the first existing file of */boot.config* or */boot/config* in that order.

### Caveats

- The order in which file systems are tried is undefined.

- No encryption support is available.

- There's no way to interrupt the boot process to select booting from some other location.

- When configuring a serial console for FreeBSD, but not for UEFI, no output will show up on the serial console from boot1.efi.

- There's no support for marking partitions as the preferred one. See [gptboot.efi(8)](/gptboot.efi/8.md).

- There's no support for boot-once functionality. See [gptboot.efi(8)](/gptboot.efi/8.md).
