grub-install fails to set up /boot/efi/EFI/ubuntu/grub.cfg with UEFI and LVM root
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
grub2 (Ubuntu) |
Fix Released
|
High
|
Unassigned |
Bug Description
If /boot/grub is on an LVM disk, and the system boots with UEFI, grub-install will fail to set up /boot/efi/
$ sudo /usr/sbin/
lvm
$
grub-install:
607 # Device abstraction module, if any (lvm, raid).
608 devabstraction_
[...]
641 if [ "x${devabstract
[...]
682 if [ x"$uuid" != x ]; then
683 echo "search.fs_uuid ${uuid} root $hints " >> "${grubdir}
684 search_
685 else
686 mkdir -p "${grubdir}/uuid"
687 file="`mktemp "${grubdir}
688 relfile=
689 echo "search.file '${relfile}' root $hints " >> "${grubdir}
690 search_
691 fi
[...]
704 else
705 if [ x$GRUB_
[...]
710 fi
[...]
713 fi
So for plain LVM, nothing tells grub on the EFI boot partition where to find its prefix. I guess this would've resulted in an unbootable install, if I hadn't happened to have an extra /boot partition hiding around on my system already.
Related branches
- Colin Watson: Approve
-
Diff: 132 lines (+77/-10)4 files modifieddebian/changelog (+7/-0)
debian/patches/series (+1/-0)
debian/patches/ubuntu_efi_always_install_grub_cfg.patch (+58/-0)
util/grub-install.in (+11/-10)
- Colin Watson: Pending requested
-
Diff: 3698 lines (+1964/-711)68 files modifiedMakefile.util.def (+6/-0)
config.h.in (+2/-0)
configure.ac (+16/-0)
debian/bug-script (+1/-1)
debian/build-efi-images (+24/-6)
debian/changelog (+249/-0)
debian/config.in (+3/-2)
debian/control (+3/-3)
debian/dirs.in (+0/-1)
debian/grub-common.install.in (+0/-1)
debian/grub-common.maintscript.hurd.in (+3/-0)
debian/grub-common.maintscript.kfreebsd.in (+3/-0)
debian/grub-common.maintscript.linux.in (+3/-0)
debian/grub.d/05_debian_theme (+24/-16)
debian/grub2.dirs (+0/-1)
debian/grub2.install (+0/-2)
debian/install-bin.in (+0/-3)
debian/install.in (+0/-2)
debian/patches/acpihalt_improvements.patch (+191/-0)
debian/patches/efi_always_install_grub_cfg.patch (+36/-0)
debian/patches/efidisk_non_512_sectors.patch (+56/-0)
debian/patches/install_bios_setup_path.patch (+20/-0)
debian/patches/install_signed.patch (+9/-13)
debian/patches/maybe_quiet.patch (+362/-0)
debian/patches/mkconfig_emacs_autosave.patch (+20/-0)
debian/patches/mkconfig_signed_kernel.patch (+2/-2)
debian/patches/mkconfig_ubuntu_distributor.patch (+11/-7)
debian/patches/os_prober_efi.patch (+36/-0)
debian/patches/probe_error_handling.patch (+22/-0)
debian/patches/restore_mkdevicemap.patch (+1/-1)
debian/patches/script_check_no_commands.patch (+87/-0)
debian/patches/series (+12/-7)
debian/patches/sleep_shift.patch (+53/-0)
debian/patches/texinfo_ordering.patch (+21/-0)
debian/patches/ubuntu_acpihalt_improvements.patch (+0/-191)
debian/patches/ubuntu_crashkernel.patch (+3/-3)
debian/patches/ubuntu_failed_boot_menu.patch (+27/-5)
debian/patches/ubuntu_gfxpayload_filter.patch (+2/-2)
debian/patches/ubuntu_linux_quiet.patch (+0/-41)
debian/patches/ubuntu_normal_quiet.patch (+0/-62)
debian/patches/ubuntu_quick_boot.patch (+17/-8)
debian/patches/ubuntu_quiet_grub_loading.patch (+0/-106)
debian/patches/ubuntu_really_quiet.patch (+0/-77)
debian/patches/ubuntu_recovery_nomodeset.patch (+2/-2)
debian/patches/ubuntu_sleep_shift.patch (+0/-53)
debian/patches/ubuntu_vt_handoff.patch (+3/-3)
debian/patches/ubuntu_wubi_no_windows.patch (+0/-47)
debian/patches/wubi_no_windows.patch (+47/-0)
debian/po/hu.po (+411/-0)
debian/postinst.in (+2/-3)
debian/rules (+19/-10)
docs/grub-dev.texi (+1/-1)
grub-core/boot/i386/pc/boot.S (+5/-1)
grub-core/boot/i386/pc/diskboot.S (+10/-1)
grub-core/disk/efi/efidisk.c (+14/-7)
grub-core/kern/main.c (+11/-0)
grub-core/kern/rescue_reader.c (+4/-0)
grub-core/normal/main.c (+6/-0)
grub-core/normal/menu.c (+14/-1)
tests/grub_script_no_commands.in (+21/-0)
util/deviceiter.c (+1/-1)
util/getroot.c (+1/-0)
util/grub-install.in (+13/-9)
util/grub-mkconfig.in (+1/-1)
util/grub-script-check.c (+9/-1)
util/grub.d/00_header.in (+14/-0)
util/grub.d/10_linux.in (+11/-7)
util/grub.d/30_os-prober.in (+19/-0)
Changed in grub2 (Ubuntu): | |
status: | New → In Progress |
setting 'high', based on the fact that this would leave LVM/UEFI systems unbootable after install.