EFIBOOTMGR(8)EFIBOOTMGR(8)NAME
efibootmgr — manipulate the EFI Boot Manager
SYNOPSIS
efibootmgr [-a] [-A] [-b XXXX] [-B XXXX] [-c] [-d DISK] [-e
1|3|-1] [-E NUM] [-g] [-H XXXX] [-i NAME] [-l NAME] [-L LABEL]
[-n XXXX] [-N] [-o XXXX,YYYY,ZZZZ ...] [-O] [-p PART] [-q] [-t
seconds] [-T] [-u] [-U XXXX] [-v] [-V] [-w] [-@ file]
DESCRIPTION
efibootmgr is a userspace application used to modify the Intel Extensi‐
ble Firmware Interface (EFI) Boot Manager. This application can create
and destroy boot entries, change the boot order, change the next run‐
ning boot option, and more.
Details on the EFI Boot Manager are available from the EFI Specifica‐
tion, v1.02 or later, available from:
(link to URL http://developer.intel.com)
Note:
efibootmgr requires that the kernel support access to EFI non-
volatile variables (through /proc/efi/vars on 2.4 kernels,
/sys/firmware/efi/vars on 2.6 kernels). modprobe efivars should
do the trick.
OPTIONS
The following is a list of options accepted by efibootmgr:
-a | --active
Sets bootnum active
-A | --inactive
Sets bootnum inactive
-b | --bootnum XXXX
Modify BootXXXX (hex)
-B | --delete-bootnum
Delete bootnum (hex)
-c | --create
Create new variable bootnum and add to bootorder
-d | --disk DISK
The disk containing the loader (defaults to /dev/sda)
-e | --edd 1|3|-1
Force EDD 1.0 or 3.0 creation variables, or guess.
-E | --device NUM
EDD 1.0 device number (defaults to 0x80)
-g | --gpt
Force disk with invalid PMBR to be treated as GPT
-H | --acpi_hid XXXX
set the ACPI HID (used with -i)
-i | --iface NAME
create a netboot entry for the named interface
-l | --loader NAME
Specify a loader (defaults to \elilo.efi)
-L | --label LABEL
Boot manager display label (defaults to "Linux")
-n | --bootnext XXXX
Set BootNext to XXXX (hex)
-N | --delete-bootnext
Delete BootNext
-o | --bootorder XXXX,YYYY,ZZZZ
Explicitly set BootOrder (hex)
-O | --delete-bootorder
Delete BootOrder
-p | --part PART
Partition number containing the bootloader (defaults to 1)
-q | --quiet
Quiet mode - supresses output.
--test filename
Don't write to NVRAM, write to filename.
-t | --timeout seconds
Boot Manager timeout, in seconds.
-T | --delete-timeout
Delete Timeout variable.
-u | --unicode | --UCS-2
pass extra command line arguments as UCS-2 (default is ASCII)
-U | --acpi_uid XXXX
set the ACPI UID (used with -i)
-v | --verbose
Verbose mode - prints additional information
-V | --version
Just print version string and exit.
-w | --write-signature
write unique signature to the MBR if needed
-@ | --append-binary-args " 10 append extra variable args
from file (use - to read from stdin). Data in file is
appended as command line arguments to the boot loader com‐
mand, with no modification to the data, so you can pass any
binary or text data necessary.
EXAMPLES
1.
Displaying the current settings (must be root).
[root@localhost ~]# efibootmgr
BootCurrent: 0004
BootNext: 0003
BootOrder: 0004,0000,0001,0002,0003
Timeout: 30 seconds
Boot0000* Diskette Drive(device:0)
Boot0001* CD-ROM Drive(device:FF)
Boot0002* Hard Drive(Device:80)/HD(Part1,Sig00112233)
Boot0003* PXE Boot: MAC(00D0B7C15D91)
Boot0004* Linux
This shows:
· BootCurrent - the boot entry used to start the cur‐
rently running system
· BootOrder - the boot order as would appear in the boot
manager. The boot manager tries to boot the first
active entry in this list. If unsuccessful, it tries
the next entry, and so on.
· BootNext - the boot entry which is scheduled to be run
on next boot. This supercedes BootOrder for one boot
only, and is deleted by the boot manager after first
use. This allows you to change the next boot behavior
without changing BootOrder.
· Timeout - the time in seconds between when the boot
manager appears on the screen until when it automati‐
cally chooses the startup value from BootNext or
BootOrder.
· Five boot entries (0000 - 0004), along with the
active/inactive flag (* means active) and the name dis‐
played on the screen.
2.
Creating a new boot option
An OS installer would call efibootmgr -c. This assumes that
/boot/efi is your EFI System Partition, and is mounted at
/dev/sda1. This creates a new boot option, called "Linux",
and puts it at the top of the boot order list. Options may
be passed to modify the default behavior. The default OS
Loader is elilo.efi.
3.
Changing the Boot Order
Assuming the configuration in Example #1, efibootmgr -o 3,4
could be called to specify PXE boot first, then Linux boot.
4.
Changing the Boot Order for the Next Boot Only
Assuming the configuration in Example #1, efibootmgr -n 4
could be called to specify that the Linux entry be taken on
next boot.
5.
Deleting a boot option
Assuming the configuration in Example #1, efibootmgr -b 4 -B
could be called to delete entry 4 and remove it from the
BootOrder.
6.
Creating network boot entries
A system administrator wants to create a boot option to net‐
work boot (PXE). Unfortunately, this requires knowing a lit‐
tle more information about your system than can be easily
found by efibootmgr, so you've got to pass additional infor‐
mation - the ACPI HID and UID values. These can generally be
found by using the EFI Boot Manager (in the EFI environment)
to create a network boot entry, then using efibootmgr to
print it verbosely. Here's one example:
Boot003* Acpi(PNP0A03,0)/PCI(5|0)/Mac(00D0B7F9F510)
ACPI(a0341d0,0)PCI(0,5)MAC(00d0b7f9f510,0)
In this case, the ACPI HID is "0A0341d0" and the UID is "0".
For the zx2000 gigE, the HID is "222F" and the UID is "500".
For the rx2000 gigE, the HID is "0002" and the UID is "100".
You create the boot entry with: efibootmgr -c -i eth0 -H
222F -U 500 -L netboot
BUGS
Please direct any bugs, features, patches, etc. to Matt Domsch
Matt_Domsch@dell.com.
AUTHOR
This man page was generated by dann frazier dannf@debian.org for the
Debian GNU/Linux operating system, but may be used by others.
SEE ALSOelilo(1)EFIBOOTMGR(8)