[FFe] Include HTTP support in pre-built GRUB module
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
grub2 (Ubuntu) |
Fix Released
|
High
|
Mathieu Trudel-Lapierre | ||
Bionic |
Fix Released
|
Undecided
|
Unassigned | ||
Cosmic |
Fix Released
|
Undecided
|
Unassigned | ||
grub2-signed (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Bionic |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Impact]
Required for MAAS to use HTTP transport to provide files for grub2.
[Test case]
0) Provide kernel and initrd on an HTTP server on the network.
1) Boot from the network in UEFI mode using grub's grubnet<arch>.efi binary.
2) Run the following commands:
linuxefi http://<ip of http server>/<path to kernel> <kernel command-line parameters>
initrdefi http://<ip of http server>/<path to initrd>
boot
Verify that the system is able to correctly retrieve the kernel and initrd files from the HTTP server, and that the system boots normally.
[Regression potential]
None. This makes an additional module available for use in the grubnet<arch>.efi pre-built and signed UEFI binaries for grub; it does not otherwise affect other pre-built UEFI images, does not change grub code, and is not used unless explicitly configured to do so by a custom grub configuration file (not in use by default).
---
[Description]
Grub supports booting files over the network via both FTP/HTTP. However, the Ubuntu package is not built with the grub HTTP modules. Enabling this would allow grub to obtain files over HTTP (such as initrd/kernel).
[Rationale]
Enabling HTTP support for Grub would allow MAAS to use such functionality to boot files over the network with HTTP. This allows for improvement performance (vs using ftp) and for better security.
MAAS would use this to download kernel and initrd over HTTP instead of FTP at first for performance improvements.
[Original bug report]
GRUB has builtin support for HTTP via http.mod. This module is not being included in the prebuild grubnetx64.efi. All that should be required is adding the http module. I also suggest building grubnetx64.efi using GRUB modules to include lvm and RAID support this will allow grubnetx64.efi to local boot in all situations.
--- build-efi-images 2018-08-17 10:50:35.124311043 -0700
+++ build-efi-
@@ -148,8 +148,9 @@
raid5rec
raid6rec
"
-NET_MODULES=
+NET_MODULES=
tftp
+ http
"
"$grub_mkimage" -O "$platform" -o "$outdir/
description: | updated |
Changed in grub2 (Ubuntu): | |
status: | New → Triaged |
importance: | Undecided → High |
summary: |
- Include HTTP support in pre-build GRUB module + [FFe] Include HTTP support in pre-build GRUB module |
description: | updated |
description: | updated |
tags: | added: id-5c13fa834458794246aeeb2c |
Changed in grub2 (Ubuntu): | |
assignee: | Mathieu Trudel-Lapierre (cyphermox) → Ubuntu Security Team (ubuntu-security) |
Changed in grub2 (Ubuntu): | |
assignee: | Ubuntu Security Team (ubuntu-security) → nobody |
Changed in grub2 (Ubuntu): | |
status: | New → In Progress |
assignee: | nobody → Mathieu Trudel-Lapierre (cyphermox) |
description: | updated |
Needs to be New for the release team to approve (process is to set to Triaged)