Bug#702800: grub-efi: Upgrade failed to install properly? symbol not found: grub_efi_secure_boot
Daniel Kahn Gillmor
dkg at fifthhorseman.net
Wed Mar 13 04:16:48 UTC 2013
On Mon 2013-03-11 13:52:33 -0400, Daniel Kahn Gillmor <dkg at fifthhorseman.net> wrote:
> On 03/11/2013 01:18 PM, Colin Watson wrote:
>
>> It's possible that your firmware prefers the former path if it can find
>> it; not all EFI systems quite work the way the spec says they should. I
>> would suggest moving the former aside and seeing what happens, although
>> you should probably also check that the latter is in efibootmgr if your
>> firmware doesn't have a way to boot from a nominated file.
>
> i'll give this a shot and report back when i have a chance to reboot.
> At the moment, i'm booting from "legacy BIOS" mode from a USB stick, so
> efibootmgr doesn't work at all.
ok, i just took some time to try this out. It's not pretty, but maybe
i'm misunderstanding something. It looks like i can only get this
machine to boot from its internal disk by doing:
grub-install --removable
here's the steps i tried:
I put in a fresh USB stick (/dev/sdb) and did:
mount -t vfat /dev/sdb1 /mnt
grub-install --target=x86_64-efi --removable --efi-directory=/mnt /dev/sdb
and that let me reboot from the USB device in EFI mode. I removed the
USB device after this reboot.
Now that i was in efi mode, i could load efivars.ko, and efibootmgr
would report something. In that mode, i moved everything from /boot/efi
out of the way, and then ran "grub-install".
this installed /mnt/efi/EFI/debian/grubx64.efi; after looking at that, i
rebooted.
This time grub didn't even show up -- the boot process just hung.
so i rebooted from the USB stick, and did:
grub-install --removable.
This installed /boot/efi/EFI/BOOT/BOOTX64.EFI; after looking at that, i
rebooted, and things worked fine.
so i suspect that after the next grub upgrade, i'm going to run into
this again.
Any hints on what i can do to not have to always supply --removable?
0 root at alice:~# efibootmgr
Fatal: Couldn't open either sysfs or procfs directories for accessing EFI variables.
Try 'modprobe efivars' as root.
1 root at alice:~# modprobe -v efivars
insmod /lib/modules/3.8-trunk-amd64/kernel/drivers/firmware/efivars.ko
0 root at alice:~# efibootmgr
BootCurrent: 000A
Timeout: 0 seconds
BootOrder: 0006,0007,0009,000B,000D,000E,000F,000A,0008,0011,0012,0010,0013,000C
Boot0000 Setup
Boot0001 Boot Menu
Boot0002 Diagnostic Splash Screen
Boot0003 Startup Interrupt Menu
Boot0004 ME Configuration Menu
Boot0005 Rescue and Recovery
Boot0006 USB CD
Boot0007 USB FDD
Boot0008 ATAPI CD0
Boot0009 ATA HDD2
Boot000A* ATA HDD0
Boot000B ATA HDD1
Boot000C* USB HDD
Boot000D PCI LAN
Boot000E ATAPI CD1
Boot000F ATAPI CD2
Boot0010 Other CD
Boot0011 ATA HDD3
Boot0012 ATA HDD4
Boot0013 Other HDD
Boot0014* IDER BOOT CDROM
Boot0015* IDER BOOT Floppy
Boot0016* ATA HDD
Boot0017* ATAPI CD:
Boot0018* PCI LAN
Boot0019* grub
Boot001A* debian
0 root at alice:~# find /boot/efi -ls
1 1 drwxr-xr-x 3 root root 1024 Dec 31 1969 /boot/efi
4 1 drwxr-xr-x 4 root root 1024 Mar 12 23:08 /boot/efi/EFI
7 1 drwxr-xr-x 2 root root 1024 Mar 12 23:05 /boot/efi/EFI/debian
9 119 -rwxr-xr-x 1 root root 121856 Mar 12 23:05 /boot/efi/EFI/debian/grubx64.efi
10 1 drwxr-xr-x 2 root root 1024 Mar 12 23:08 /boot/efi/EFI/BOOT
12 119 -rwxr-xr-x 1 root root 121856 Mar 12 23:08 /boot/efi/EFI/BOOT/BOOTX64.EFI
0 root at alice:~# grep efi /proc/mounts
/dev/sda1 /boot/efi vfat rw,nosuid,nodev,noexec,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf8,shortname=mixed,errors=remount-ro 0 0
0 root at alice:~#
Regards,
--dkg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 965 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-grub-devel/attachments/20130313/35d3bf72/attachment.pgp>
More information about the Pkg-grub-devel
mailing list