Hide Forgot
Description of problem: grub2 UEFI HTTP boot fails to resolve relative paths correctly. Version-Release number of selected component (if applicable): 2.02-0.75 How reproducible: Always Steps to Reproduce: 1. Boot grub via UEFI HTTP 2. Configure grub.cfg to use a relative path, for example, given a menu entry like this: menuentry 'Foreman Discovery Image' --id discovery { linuxefi boot/fdi-image/vmlinuz0 rootflags=loop root=live:/fdi.iso rootfstype=auto ro rd.live.image acpi=force rd.luks=0 rd.md=0 rd.dm=0 rd.lvm=0 rd.bootif=0 rd.neednet=0 nomodeset proxy.url=http://centos7-devel.astriaporta.example.com proxy.type=foreman BOOTIF=01-$mac initrdefi boot/fdi-image/initrd0.img } where boot/fdi-image/vmlinuz0 is relative to the location of the grubx64.efi image. 3. Try to boot Actual results: Grub immediately fails with: Fail to send a request! status=0xe Expected results: Host boots Additional info: - Using /pub/boot/fdi-image/vmlinuz0 works - If looking at a tcpdump, grub is trying to do a DNS query for "192.168.73.1boot"
This was fixed in 7.6 as part of a different bz. Here's the relevant commit message: From: Stephen Benjamin <stephen@redhat.com> Date: Thu, 16 Aug 2018 16:58:51 -0400 Subject: [PATCH] Prepend prefix when HTTP path is relative This sets a couple of variables. With the url http://www.example.com/foo/bar : http_path: /foo/bar http_url: http://www.example.com/foo/bar Related: rhbz#1490981
This patch doesn't appear to be in any 7.6 builds, or even any builds I can find in Brew. $ rpm -q --changelog grub2-efi-x64 | grep Prepend $ rpm -q grub2-efi-x64 grub2-efi-x64-2.02-0.76.el7.1.x86_64 $ cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.6 (Maipo)
There's also a really dumb mistake of mine in that patch, there's a PR to fix it: https://github.com/rhboot/grub2/pull/53
*** Bug 1763216 has been marked as a duplicate of this bug. ***
Was able to reproduce it on RHEL-7.8-20200225.1 x86_64 Server
*** Bug 1642438 has been marked as a duplicate of this bug. ***
Verified on RHEL-7.9-20200623.0 x86_64 Server grub2-2.02-0.82
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2020:3217