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 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\debian\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 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 ap-
                pears on the screen until when  it  automatically  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.  Options may be passed to modify the default behavior.  The
       default OS Loader is \EFI\debian\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 07:06:35 CET 2025.