STANNIX Community


Manual: efibootmgr

EFIBOOTMGR(8)												       EFIBOOTMGR(8)

NAME
       efibootmgr - change the UEFI Boot Manager configuration

SYNOPSIS
       efibootmgr  [  -a  ] [ -A ] [ -b XXXX ] [ -B ] [ -c ] [ -d DISK ] [ -D ] [ -e 1|3|-1 ] [ -E NUM ] [ --full-dev-path |
       --file-dev-path ] [ -f ] [ -F ] [ -g ] [ -i NAME ] [ -l NAME ] [ -L LABEL ] [ -m t|f ] [ -M X ] [ -n XXXX ] [ -N ]  [
       -o  XXXX,YYYY,ZZZZ ... ] [ -O ] [ -p PART ] [ -q ] [ -r | -y ] [ -t seconds ] [ -T ] [ -u ] [ -v ] [ -V ] [ -w ] [ -@
       file ]

DESCRIPTION
       efibootmgr is a userspace application used to modify the UEFI Boot Manager. This application can create	and  destroy
       boot entries, change the boot order, change the next running boot option, and more.

       Details	on  the	 UEFI  Boot  Manager  are  available  from  the	 UEFI Specification, v1.02 or later, available from:
       http://www.uefi.org

	      Note:  efibootmgr	 requires  that	 the  kernel  support  access  to   EFI	  non-volatile	 variables   through
	      /sys/firmware/efi/vars or /sys/firmware/efi/efivars/.

OPTIONS
       The following is a list of options accepted by efibootmgr:

       -a | --active
	      Set bootnum active.

       -A | --inactive
	      Set bootnum inactive.

       -b | --bootnum XXXX
	      Modify BootXXXX (hex).

       -B | --delete-bootnum
	      Delete bootnum.

       -c | --create
	      Create new variable bootnum and add to bootorder.

       -C | --create-only
	      Create new variable bootnum and and do not add to bootorder.

       -d | --disk DISK
	      The disk containing the loader (defaults to /dev/sda).

       -D | --remove-dups
	      Remove duplicated entries from BootOrder.

       -e | --edd 1|3
	      Force EDD 1.0 or 3.0 creation variables.

	      Use  -e 1 together with -E if you are using a very old system which uses UEFI to boot, but requires legacy CSM
	      (BIOS) device drivers for storage devices.

	      -e 3 is now deprecated, and is an alias for --full-dev-path.

       -E | --edd-device NUM
	      EDD 1.0 device number (defaults to 0x80).	 See --edd.

       --full-dev-path
	      Force creation of boot entries use a full UEFI device path, starting at the PCIe root  or	 equivalent  on	 the
	      current platform.	 The default is to use a hard disk based HD() abbreviated path.

	      You shouldn't need to use this option unless the system firmware won't boot off of your device using an abbre‐
	      viated HD() device path.

	      Note that forcing a full path will fail if we don't know what the system device root is, how the specified de‐
	      vice is connected to it, or how to encode any one of those.

       --file-dev-path
	      Force creation of boot entries use an abbreviated UEFI device path which starts with the File() portion of the
	      path.  The default is to use a hard disk based HD() abbreviated path.

       -f | --reconnect
	      Re-connect devices after driver is loaded.  Only applicable for driver entries.

       -F | --do-not-reconnect
	      Do not reconnect devices after driver is loaded.	Only applicable for driver entries.

       -g | --gpt
	      Force disk with invalid PMBR to be treated as GPT.

       -i | --iface NAME
	      Create a netboot entry for the named interface.

       -k | --keep NAME
	      Keep old entries when adjusting order.

       -l | --loader NAME
	      Specify a loader (defaults to \EFI\ubuntu\grub.efi).

       -L | --label LABEL
	      Boot manager display label (defaults to "Linux").

       -m | --mirror-below-4G t|f
	      Set t if you want to mirror memory below 4GB.

       -M | --mirror-above-4G X
	      X percentage memory to mirror above 4GB.	Floating-point value with up to 2 decimal places is accepted.

       -n | --bootnext XXXX
	      Set BootNext to XXXX (hex).

       -N | --delete-bootnext
	      Delete BootNext.

       -o | --bootorder XXXX,YYYY,ZZZZ
	      Explicitly set BootOrder (hex).  Any value from 0 to FFFF is accepted so long as it corresponds to an existing
	      Boot#### variable, and zero padding is not required.

       -O | --delete-bootorder
	      Delete BootOrder.

       -p | --part PART
	      Partition number containing the bootloader (defaults to 1).

       -q | --quiet
	      Quiet mode - suppresses output.

       -r | --driver
	      Operate on Driver#### variables instead of Boot#### variables.

       -t | --timeout seconds
	      Boot Manager timeout, in seconds.

       -T | --delete-timeout
	      Delete Timeout variable.

       -u | --unicode | --UCS-2
	      Handle extra command line arguments as UCS-2 (default is ASCII).

       -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.

       -y | --sysprep
	      Operate on SysPrep#### variables instead of Boot#### variables.

       -@ | --append-binary-args
	      Append extra variable args from file (use - to read from stdin).	Data in file is appended as command line ar‐
	      guments  to the boot loader command, with no modification to the data, so you can pass any binary or text data
	      necessary.

EXAMPLES

   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

       Each of the above are boot variables, which are defined as follows:

	      • BootCurrent - the boot entry used to start the currently 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 supersedes 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 displayed
		on the screen.

   Creating a new boot option
       An  OS  installer would call efibootmgr -c.  This assumes that /dev/sda1 is your EFI System Partition, and is mounted
       at /boot/efi.  This creates a new boot option, called "Linux", and puts it at the top of the boot  order	 list.	 Op‐
       tions may be passed to modify the default behavior.  The default OS Loader is \EFI\ubuntu\grub.efi.

   Changing the boot order
       Assuming	 the  configuration  in the first example, efibootmgr -o 3,4 could be called to specify PXE boot first, then
       Linux boot.

   Changing the boot order for the next boot only
       Assuming the configuration in the first example, efibootmgr -n 4 could be called to specify that the Linux  entry  be
       taken on next boot.

   Deleting a boot option
       Assuming	 the  configuration in the first example, efibootmgr -b 4 -B could be called to delete entry 4 and remove it
       from the BootOrder.

   Creating network boot entries
       A system administrator wants to create a boot option to network boot.  You create the boot entry with: efibootmgr  -c
       -i eth0 -L netboot [ -l '\filename.efi' ]

BUGS
       Please  direct any bugs, features, patches, etc. to the Red Hat bootloader team at https://github.com/rhboot/efiboot‐
       mgr .

AUTHOR
       This man page was generated by dann frazier  for the Debian GNU/Linux operating system and  updated
       by Robert Bisewski , but may be used by others.

       It has subsequently been modified by Robbie Harwood  for the efibootmgr project.

						      28 September 2021					       EFIBOOTMGR(8)