- Red Hat Enterprise Linux 7 and later
- HTTP Boot
On UEFI systems, booting through HTTP fails with the following error if the Grub timeout is changed from 5 seconds to a larger value
error: ../../grub-core/net/efi/http.c:297:Fail to receive a response! status=105. error: ../../grub-core/loader/i386/efi/linux.c:333:invalid magic number. error: ../../grub-core/loader/i386/efi/linux.c:207:you need to load the kernel first.
HTTP 1.1 with Keep alive needs to be configured on the HTTP server side.
If the HTTP server is Apache, the following stanzas need to be added in the HTTP server configuration file:
KeepAlive On KeepAliveTimeout 600
Then the HTTP server restarted for changes to take effect.
The issue is expected, it's due to the HTTP connection initially opened by the EFI firmware to not be usable anymore, due to timeout.
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.