efibootmgr Causes Duplicate Entries In BootOrder
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
efibootmgr (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Before any action:
$ sudo efibootmgr -v
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000,0019,0012,0013
Boot0000* ubuntu HD(1,800,
Boot0012* UEFI: IP4 Qualcomm Atheros PCIe Network Controller ACPI(a0341d0,
Boot0013* UEFI: IP6 Qualcomm Atheros PCIe Network Controller ACPI(a0341d0,
Boot0019* UEFI: (FAT) USB2.0 CardReader SD 0100 ACPI(a0341d0,
$ sudo efibootmgr -c -d /dev/sdf -p 1 -l /EFI/BOOT/
$ sudo efibootmgr -v
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0001,0000,
Boot0000* ubuntu HD(1,800,
Boot0001* EFI KeyTool HD(1,800,
Boot0012* UEFI: IP4 Qualcomm Atheros PCIe Network Controller ACPI(a0341d0,
Boot0013* UEFI: IP6 Qualcomm Atheros PCIe Network Controller ACPI(a0341d0,
Boot0019* UEFI: (FAT) USB2.0 CardReader SD 0100 ACPI(a0341d0,
reboot
$ sudo efibootmgr -v
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0001,0000,
Boot0000* ubuntu HD(1,800,
Boot0001* EFI KeyTool HD(1,800,
Boot0012* UEFI: IP4 Qualcomm Atheros PCIe Network Controller ACPI(a0341d0,
Boot0013* UEFI: IP6 Qualcomm Atheros PCIe Network Controller ACPI(a0341d0,
Boot0019* UEFI: (FAT) USB2.0 CardReader SD 0100 ACPI(a0341d0,
$ sudo efibootmgr -O
BootCurrent: 0000
Timeout: 5 seconds
No BootOrder is set; firmware will attempt recovery
Boot0000* ubuntu
Boot0001* EFI KeyTool
Boot0012* UEFI: IP4 Qualcomm Atheros PCIe Network Controller
Boot0013* UEFI: IP6 Qualcomm Atheros PCIe Network Controller
Boot0019* UEFI: (FAT) USB2.0 CardReader SD 0100
$ sudo efibootmgr -o 0,19,12,13,1
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000,0019,
Boot0000* ubuntu
Boot0001* EFI KeyTool
Boot0012* UEFI: IP4 Qualcomm Atheros PCIe Network Controller
Boot0013* UEFI: IP6 Qualcomm Atheros PCIe Network Controller
Boot0019* UEFI: (FAT) USB2.0 CardReader SD 0100
reboot
$ sudo efibootmgr -v
[sudo] password for nater:
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000,0019,
Boot0000* ubuntu HD(1,800,
Boot0001* EFI KeyTool HD(1,800,
Boot0012* UEFI: IP4 Qualcomm Atheros PCIe Network Controller ACPI(a0341d0,
Boot0013* UEFI: IP6 Qualcomm Atheros PCIe Network Controller ACPI(a0341d0,
Boot0019* UEFI: (FAT) USB2.0 CardReader SD 0100 ACPI(a0341d0,
$ sudo efibootmgr -b 1 -B
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000,0019,
Boot0000* ubuntu
Boot0012* UEFI: IP4 Qualcomm Atheros PCIe Network Controller
Boot0013* UEFI: IP6 Qualcomm Atheros PCIe Network Controller
Boot0019* UEFI: (FAT) USB2.0 CardReader SD 0100
$ sudo efibootmgr -D
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000,0019,0012,0013
Boot0000* ubuntu
Boot0012* UEFI: IP4 Qualcomm Atheros PCIe Network Controller
Boot0013* UEFI: IP6 Qualcomm Atheros PCIe Network Controller
Boot0019* UEFI: (FAT) USB2.0 CardReader SD 0100
reboot
$ sudo efibootmgr -v
BootCurrent: 0000
Timeout: 5 seconds
BootOrder: 0000,0019,0012,0013
Boot0000* ubuntu HD(1,800,
Boot0012* UEFI: IP4 Qualcomm Atheros PCIe Network Controller ACPI(a0341d0,
Boot0013* UEFI: IP6 Qualcomm Atheros PCIe Network Controller ACPI(a0341d0,
Boot0019* UEFI: (FAT) USB2.0 CardReader SD 0100 ACPI(a0341d0,
Note how the insertion of the KeyTool entry causes an extra entry in BootOrder AFTER a reboot.
Neither removing duplicates, deleting bootorder or setting bootorder will fix the issue when a reboot occurs.
It is only when I remove the added bootentry that the bootorder goes back to normal.
ProblemType: Bug
DistroRelease: Ubuntu 15.04
Package: efibootmgr 0.11.0-3
ProcVersionSign
Uname: Linux 3.19.0-20-generic x86_64
ApportVersion: 2.17.2-0ubuntu1.1
Architecture: amd64
Date: Mon Jun 1 13:49:27 2015
EcryptfsInUse: Yes
InstallationDate: Installed on 2015-05-31 (0 days ago)
InstallationMedia: Ubuntu 15.04 "Vivid Vervet" - Release amd64 (20150422)
ProcEnviron:
LANGUAGE=en_US
TERM=xterm
PATH=(custom, no user)
LANG=en_US.UTF-8
SHELL=/bin/bash
SourcePackage: efibootmgr
UpgradeStatus: No upgrade log present (probably fresh install)
The changes of BootOrder after reboot are from the UEFI BIOS implementation.