dwww Home | Manual pages | Find package

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 Man-
       ager. 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 Specifica-
       tion, 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 abbreviated  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 device 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 de-
              fault 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 applica-
              ble 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 ac-
              cepted  so  long as it corresponds to an existing Boot#### vari-
              able, 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 arguments 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  run-
                ning system

              • BootOrder  -  the  boot order as would appear in the boot man-
                ager.  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 automatically chooses the
                startup value from BootNext or BootOrder.

              • Five boot entries (0000 - 0004), along with  the  active/inac-
                tive  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 cre-
       ates 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 \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  boot-
       loader team at https://github.com/rhboot/efibootmgr .

AUTHOR
       This  man page was generated by dann frazier <dannf@debian.org> for the
       Debian GNU/Linux operating system and updated by Robert Bisewski  <con-
       tact@ibiscybernetics.com>, but may be used by others.

       It  has  subsequently  been  modified  by Robbie Harwood <rharwood@red-
       hat.com> for the efibootmgr project.

                               28 September 2021                 EFIBOOTMGR(8)

Generated by dwww version 1.16 on Tue Dec 16 16:59:23 CET 2025.