[Bug 1245154] Re: grub-efi grub.cfg generated with incorrect commands, linux and initrd, instead of linuxefi and initrdefi

David Ball david at daball.me
Wed Oct 30 07:32:29 UTC 2013


I'm not sure Phillip. I know that I have a UEFI BIOS on my ASUS K55N
notebook, and that when booting using BIOS mode (select a disk from the
list and boot the MBR) the regular linux and initrd commands work just
fine. That was how I was using Fedora 19 until two days ago. I switched
my disk from MBR to GPT and placed an EFI partition outside the LVM
prior to installing Ubuntu 13.10.

I encountered issues booting the ISO from the USB disk right off the
rip. When the USB/DVD boots through UEFI, which is the way the ASUS K55N
BIOS prefers to boot the USB/DVD, it launches GRUB instead of the
ISOLINUX/SYSLINUX boot loader. Any of the options I select will not boot
the Live ISO environment. It seems the ISO is broken.

So, curious as I am, checked the commands that GRUB uses to boot the
ISO. There were 3 problems that I found.

linux instead of linuxefi
invalid kernel path at /cdrom/preseed/ubuntu.seed, should be /preseed/ubuntu.seed
initrd instead of initrdefi

So inside the ISO:/boot/grub.cfg, the transform is from:

menuentry "Try Ubuntu without installing" {
	set gfxpayload=keep
	linux	/casper/vmlinuz.efi  file=/cdrom/preseed/ubuntu.seed boot=casper quiet splash --
	initrd	/casper/initrd.lz
}

to:ne

menuentry "Try Ubuntu without installing" {
	set gfxpayload=keep
	linuxefi	/casper/vmlinuz.efi  file=/preseed/ubuntu.seed boot=casper quiet splash --
	initrdefi	/casper/initrd.lz
}

and so on for each of the entries.

Once inside the live environment, I was able to install Ubuntu 13.10
without any issues, using an LVM setup with seperate /home, /boot
(outside the LVM), and an EFI partition. Everything worked perfectly.
Reboot. Purple screen forever.

Forced the power off, grub noticed it didn't boot, and prompted me with
the menu. I inspected the command list and found similar issues. I
documented the changes I made in the original post, and I was able to
boot into the system just fine. I made the grub.cfg change and updated
the /etc/grub.d/10_linux script as well, and the system works flawlessly
now.

It may or may not be related to Secure Boot, but I do not have an option
to enable/disable Secure Boot with this BIOS. The initrdefi and linuxefi
commands apparently have no documentation, but they do exist and they do
permit my system to boot Ubuntu only when they are enabled.

I look forward to further input about the issue, but this is my
individual experience. Thanks again! If you need any more info, let me
know.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2 in Ubuntu.
https://bugs.launchpad.net/bugs/1245154

Title:
  grub-efi grub.cfg generated with incorrect commands, linux and initrd,
  instead of linuxefi and initrdefi

Status in “grub2” package in Ubuntu:
  New

Bug description:
  grub.cfg is generated with incorrect commands, linux and initrd,
  instead of linuxefi and initrdefi. This affects both the install .iso
  for the latest Ubuntu 13.10 and the installed system of the latest
  Ubuntu 13.10.

  Simple Workaround:

  You can hand-edit the commands in grub to boot the target system. Once
  inside, then you can edit /boot/grub/grub.cfg to change all linux and
  initrd commands to linuxefi and initrdefi, respectively. This will
  have to be updated each time the grub.cfg file is regenerated, i.e.,
  whenever new kernels are updated.

  Configuration Patch (Proposed Fix, Untested):

  Then to ensure grub.cfg is regenerated correctly, edit
  /etc/grub.d/10_linux so that

  line 166 says linuxefi instead of linux

  and

  line 182 says initrdefi instead of initrd

  But line 182 probably needs to be updated to include encapsulating
  code that tests for efi just like on lines 164-172 via an:

  if test -d /sys/firmware/efi && test -e "${linux}.efi.signed"; then
  (...use initrdefi) else (...use initrd) ... fi.

  Thanks!
  David

  ProblemType: Bug
  DistroRelease: Ubuntu 13.10
  Package: grub-efi (not installed)
  ProcVersionSignature: Ubuntu 3.11.0-12.19-generic 3.11.3
  Uname: Linux 3.11.0-12-generic x86_64
  ApportVersion: 2.12.5-0ubuntu2.1
  Architecture: amd64
  Date: Sun Oct 27 06:13:32 2013
  InstallationDate: Installed on 2013-10-27 (0 days ago)
  InstallationMedia: Ubuntu 13.10 "Saucy Salamander" - Release amd64 (20131016.1)
  MarkForUpload: True
  SourcePackage: grub2
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1245154/+subscriptions



More information about the foundations-bugs mailing list