FS#34292 - [gummiboot] Failed to create EFI Boot variable entry: No such file or directory

Attached to Project: Arch Linux
Opened by Artem A Klevtsov (unikum) - Wednesday, 13 March 2013, 09:55 GMT
Last edited by Tobias Powalowski (tpowa) - Thursday, 24 October 2013, 07:01 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Tom Gundersen (tomegun)
Architecture x86_64
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

Can't insytall gummiboot.

Additional info:
* package version(s)
core/linux 3.8.2-1
extra/gummiboot 26-1
* partition scheme
gdisk print output
Number Start (sector) End (sector) Size Code Name
1 2048 1050623 512.0 MiB EF00 EFI System
2 1050624 189794303 90.0 GiB 8300 Linux filesystem
3 189794304 1465149134 608.1 GiB 8300 Linux filesystem

* config and/or log files etc.
ls -1R /boot/
/boot/:
EFI
arch.nsh
initramfs-linux-fallback.img
initramfs-linux.img
loader
shellx64.efi
vmlinuz-linux

/boot/EFI:
BOOT
arch
gummiboot

/boot/EFI/BOOT:
BOOTX64.EFI

/boot/EFI/arch:
initramfs-arch-fallback.img
initramfs-arch.img
vmlinuz-arch.efi

/boot/EFI/gummiboot:
gummibootx64.efi

/boot/loader:
entries
loader.conf
shell.conf

/boot/loader/entries:
arch.conf

loader.conf and arch.conf from wiki article (https://wiki.archlinux.org/index.php/Gummiboot#Configuring)

Steps to reproduce:
# gummiboot install
Copied /usr/lib/gummiboot/gummibootx64.efi to /boot/EFI/gummiboot/gummibootx64.efi.
Copied /usr/lib/gummiboot/gummibootx64.efi to /boot/EFI/BOOT/BOOTX64.EFI.
Failed to create EFI Boot variable entry: No such file or directory
This task depends upon

Closed by  Tobias Powalowski (tpowa)
Thursday, 24 October 2013, 07:01 GMT
Reason for closing:  Fixed
Comment by Tom Gundersen (tomegun) - Wednesday, 13 March 2013, 22:16 GMT
Do you have /sys/firmware/efi/efivars ?
Comment by Artem A Klevtsov (unikum) - Thursday, 14 March 2013, 00:07 GMT
ls -l /sys/firmware/efi/efivars/
total 0
efivars are in the /sys/firmware/efi/vars/.

Also this may be related with https://bugs.archlinux.org/task/34271
Comment by Tom Gundersen (tomegun) - Thursday, 16 May 2013, 00:48 GMT
Is this still a problem?
Comment by Rich (snugglej) - Wednesday, 12 June 2013, 22:54 GMT
I am having this issue on my computer in arch 3.8.4 (brand new install). If it was fixed can you explain how?
Comment by Rich (snugglej) - Thursday, 13 June 2013, 00:56 GMT
following directions provided above

ls -l /sys/firmware/efi/efivars/
total 0

efivars was all located in /sys/firmware/efi/vars/

I went ahead and installed Grub and something was triggered there to populate everything into efivars
Comment by Rich (snugglej) - Thursday, 13 June 2013, 01:54 GMT
Efibootmgr is required to have gummiboot semi work but is not checked for. Archlinux guide and gummiboot installer don't require efibootmgr.
Comment by Keshav Amburay (the.ridikulus.rat) - Saturday, 15 June 2013, 14:22 GMT
For gummiboot setup utility, you need efivarfs mounted at /sys/firmware/efi/efivars. This is now done automatically by systemd for kernels 3.8 and above. For older kernels you need to use efibootmgr to create a boot entry for Gummiboot via /sys/firmware/efi/vars (the old sysfs interface).
Comment by Rich (snugglej) - Saturday, 15 June 2013, 22:29 GMT
I have kernel 3.9 on my machine and the efivars was empty before I installed grub and its required dependencies. So it wasn't done "automatically" when the system was first setup and gummiboot was the only installed boot loader.
Comment by Rich (snugglej) - Saturday, 15 June 2013, 22:31 GMT
I would be happy to try and figure out what occurred if you can provide me some steps that I would need to do to give you more information.
Comment by Keshav Amburay (the.ridikulus.rat) - Monday, 17 June 2013, 10:18 GMT
Try booting with "efi_no_storage_paranoia" and retry /usr/bin/gummiboot .
Comment by Keshav Amburay (the.ridikulus.rat) - Tuesday, 18 June 2013, 12:34 GMT
@Rich: Try mounting efivarfs as follow:

# modprobe -r efivars
# mount -t efivarfs none /sys/firmware/efi/efivars
# ls -1 /sys/firmware/efi/efivars
Comment by Rich (snugglej) - Wednesday, 19 June 2013, 18:13 GMT
@Keshav Padram

I had to first reboot into efishell v1 and manually boot the partition (v2 didn't work because a compile issue with Lenovo https://bbs.archlinux.org/viewtopic.php?pid=1246182) so I was outside the initial install section

Than I did modprobe efivars and it populated the sys/firmware/efi/efivars. The efivars was already mounted on /sys/firmware/efi/efivars type efivarfs (rw, nosuid, nodev, noexec, relatime. So I then re-ran the gummiboot setup using gummiboot --path /boot/efi update and it populated the bootmgr properly.

Thanks for your help.
Comment by Keshav Amburay (the.ridikulus.rat) - Monday, 23 September 2013, 16:53 GMT
Is this still an issue with gummiboot v38 and core/linux-3.11.1-2 ?
Comment by Marcin (wroobel) - Saturday, 05 October 2013, 14:54 GMT
@Keshav Padram Amburay

Yes it is (gummiboot 38-1 and linux 3.11.3-1).
Comment by Keshav Amburay (the.ridikulus.rat) - Sunday, 06 October 2013, 20:57 GMT
@Marcin and others:

Check whether all conditions in https://wiki.archlinux.org/index.php/Unified_Extensible_Firmware_Interface#Requirements_for_UEFI_Variables_support_to_work_properly are satisfied (along with latest kernel and gummiboot, or the latest archiso 2013.10.01 or latest archboot 2013.09-1) before you try "gummiboot install" .
Comment by Rich (snugglej) - Tuesday, 08 October 2013, 02:30 GMT
On my X230 I have not had this problem since initial setup.

@Marcin are you having problems every time you boot or just during initial setup and then consecutive reboots work fine?
Comment by Marcin (wroobel) - Thursday, 10 October 2013, 16:00 GMT
I had to follow Keshav instructions (June 18) and yes, after initial setup it works fine.
Comment by Keshav Amburay (the.ridikulus.rat) - Monday, 14 October 2013, 15:42 GMT
@unikum: Please confirm whether "gummiboot install" works for you with latest kernel and gummiboot pkgs.

Loading...