The bug is still reproducible in 16.04.2LTS. It is particularly funny that the grub-install reports no errors in the end:
... grub-install: info: copying `/usr/lib/shim/shimx64.efi.signed' -> `/boot/efi/EFI/Ubuntu/shimx64.efi'. grub-install: info: copying `/usr/lib/grub/x86_64-efi-signed/grubx64.efi.signed' -> `/boot/efi/EFI/Ubuntu/grubx64.efi'. grub-install: info: copying `/usr/lib/shim/mmx64.efi.signed' -> `/boot/efi/EFI/Ubuntu/mmx64.efi'. grub-install: info: copying `/usr/lib/shim/fbx64.efi.signed' -> `/boot/efi/EFI/Ubuntu/fbx64.efi'. grub-install: info: copying `/boot/grub/x86_64-efi/load.cfg' -> `/boot/efi/EFI/Ubuntu/grub.cfg'. grub-install: info: Registering with EFI: distributor = `Ubuntu', path = `\EFI\Ubuntu\shimx64.efi', ESP at mduuid/37a190814f3ecd3b3eba8b653989e9c1. grub-install: info: executing efibootmgr --version </dev/null >/dev/null. grub-install: info: executing modprobe -q efivars. grub-install: info: executing efibootmgr -c -d. efibootmgr: option requires an argument -- 'd' efibootmgr version 0.12 usage: efibootmgr [options] -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 -C | --create-only create new variable bootnum and do not add to bootorder -D | --remove-dups remove duplicate values from BootOrder -d | --disk disk (defaults to /dev/sda) containing loader -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 -i | --iface name create a netboot entry for the named interface -l | --loader name (defaults to \EFI\redhat\grub.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 (defaults to 1) containing loader -q | --quiet be quiet -t | --timeout seconds set boot manager timeout waiting for user input. -T | --delete-timeout delete Timeout. -u | --unicode | --UCS-2 pass extra args as UCS-2 (default is ASCII) -v | --verbose print additional information -V | --version return version and exit -w | --write-signature write unique sig to MBR if needed -@ | --append-binary-args file append extra args from file (use "-" for stdin) -h | --help show help/usage Installation finished. No errors reported.
The bug is still reproducible in 16.04.2LTS. It is particularly funny that the grub-install reports no errors in the end:
... shim/shimx64. efi.signed' -> `/boot/ efi/EFI/ Ubuntu/ shimx64. efi'. grub/x86_ 64-efi- signed/ grubx64. efi.signed' -> `/boot/ efi/EFI/ Ubuntu/ grubx64. efi'. shim/mmx64. efi.signed' -> `/boot/ efi/EFI/ Ubuntu/ mmx64.efi' . shim/fbx64. efi.signed' -> `/boot/ efi/EFI/ Ubuntu/ fbx64.efi' . grub/x86_ 64-efi/ load.cfg' -> `/boot/ efi/EFI/ Ubuntu/ grub.cfg' . shimx64. efi', ESP at mduuid/ 37a190814f3ecd3 b3eba8b653989e9 c1. grub.efi) binary- args file append extra args from file (use "-" for stdin)
grub-install: info: copying `/usr/lib/
grub-install: info: copying `/usr/lib/
grub-install: info: copying `/usr/lib/
grub-install: info: copying `/usr/lib/
grub-install: info: copying `/boot/
grub-install: info: Registering with EFI: distributor = `Ubuntu', path = `\EFI\Ubuntu\
grub-install: info: executing efibootmgr --version </dev/null >/dev/null.
grub-install: info: executing modprobe -q efivars.
grub-install: info: executing efibootmgr -c -d.
efibootmgr: option requires an argument -- 'd'
efibootmgr version 0.12
usage: efibootmgr [options]
-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
-C | --create-only create new variable bootnum and do not add to bootorder
-D | --remove-dups remove duplicate values from BootOrder
-d | --disk disk (defaults to /dev/sda) containing loader
-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
-i | --iface name create a netboot entry for the named interface
-l | --loader name (defaults to \EFI\redhat\
-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 (defaults to 1) containing loader
-q | --quiet be quiet
-t | --timeout seconds set boot manager timeout waiting for user input.
-T | --delete-timeout delete Timeout.
-u | --unicode | --UCS-2 pass extra args as UCS-2 (default is ASCII)
-v | --verbose print additional information
-V | --version return version and exit
-w | --write-signature write unique sig to MBR if needed
-@ | --append-
-h | --help show help/usage
Installation finished. No errors reported.