Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.

Bug 1292317

Summary: Missing grub2-efi-modules
Product: Red Hat Enterprise Linux 7 Reporter: Steven Shiau <steven>
Component: relengAssignee: Lubos Kocman <lkocman>
Status: CLOSED ERRATA QA Contact: Release Test Team <release-test-team-automation>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 7.2CC: dmach, ilmostro7, jblazek, jikortus, lkocman, mburns, pholica, pjones, pkotvan, snagar, steven
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-11-03 22:02:59 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1374796    

Description Steven Shiau 2015-12-17 02:20:57 UTC
Description of problem:

This is a wish list. Please provide package grub2-efi-modules.
Now there is no grub2-efi-modules on RHEL 7.2 repository.  Without it, there is no any modules in /usr/lib/grub/x86_64-efi/, e.g. net.mod, tftp.mod...
Therefore the uEFI network boot image of GRUB can not be created by grub2-mkimage.

How reproducible:
Always

Steps to Reproduce:
$ cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.2 (Maipo)
$ yum search grub2
Loaded plugins: product-id, search-disabled-repos, subscription-manager
Repo rhel-7-server-rpms forced skip_if_unavailable=True due to: /etc/pki/entitlement/4431416248771156467-key.pem
============================== N/S matched: grub2 ==============================
grub2.x86_64 : Bootloader with support for Linux, Multiboot and more
grub2-efi.x86_64 : GRUB for EFI systems.
grub2-tools.x86_64 : Support tools for GRUB.

  Name and summary matches only, use "search all" for everything.

Apparently you can see there is no grub-efi-modules.

However, on CentOS 7.2, it does exist:
$ cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)

$ yum search grub2-efi-modules
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.twaren.net
 * extras: ftp.twaren.net
 * updates: ftp.isu.edu.tw
======================== N/S matched: grub2-efi-modules ========================
grub2-efi-modules.x86_64 : Modules used to build custom grub.efi images

  Name and summary matches only, use "search all" for everything.

Thanks.
Steven.

Comment 2 Jiri Kortus 2016-02-05 09:07:57 UTC
Hello Steven,

the 'grub2-efi-modules' package for RHEL-7 is available in 'rhel-7-<variant>-optional-rpms' repository (rhel-7-server-optional-rpms in your case), please make sure the repository is enabled:

$ yum search grub2-efi-modules --disablerepo=\* --enablerepo=rhel-7-server-optional-rpms
Loaded plugins: product-id, search-disabled-repos, subscription-manager
============ N/S matched: grub2-efi-modules ============
grub2-efi-modules.x86_64 : Modules used to build custom grub.efi images

Is this information sufficient for your use case or do you have a specific reason why the package should be located in the base repository?

Comment 3 Steven Shiau 2016-02-07 03:34:52 UTC
Thanks. For uEFI network booting, grub2-efi-modules.x86_64 is required for grub2-mkimage to create the bootx64.efi for network booting client.
E.g. If the bootx64.efi is for client is in /tfptboot/nbi_img/,
grub2-mkimage -C xz -O x86_64-efi -o /tftpboot/nbi_img/bootx64.efi '--prefix=(tftp)/grub-efi.cfg/' -c /tmp/grub-efi.i8ptlp/grub-header.cfg normal tftp efinet chain echo net gzio xzio linux efi_gop efi_uga png gfxterm gfxterm_background gfxterm_menu serial progress reboot halt

Therefore it would be better to put grub2-efi-modules.x86_64n the base repository.
My 2 cents.

Steven.

Comment 4 Pavel Holica 2016-02-08 11:17:03 UTC
Hello Steven,

you should be able to use /boot/efi/EFI/redhat/gcdx64.efi provided by grub2-efi rpm for netboot. It includes all essential modules required for RHEL netboot.
It is also documented in installation guide in section "Configuring a PXE Server for UEFI-based AMD64 and Intel 64 Clients".
If not, grub2-efi-modules is still available in optional repository as Jiri already mentioned.

Looking to spec file, there are following modules included in distribution grubx64.efi image:
all_video boot btrfs cat chain configfile echo efifwsetup efinet ext2 fat font gfxmenu gfxterm gzio halt hfsplus iso9660 jpeg loadenv lvm mdraid09 mdraid1x minicmd normal part_apple part_msdos part_gpt password_pbkdf2 png reboot search search_fs_uuid search_fs_file search_label sleep syslinuxcfg test tftp regexp video xfs

I'm just trying to find another ways and possibly avoid moving grub2-efi-modules to base repository.

Comment 5 Daniel Mach 2016-02-09 09:36:10 UTC
grub2-efi-modules ended up in Optional in rhel-7.2.
We should move it into main variants in rhel-7.3.

Comment 6 Jan Blazek 2016-09-19 10:45:34 UTC
grub2-efi-modules subpackage was moved to main variants.

Comment 8 Peter Kotvan 2016-09-20 07:18:08 UTC
Verified on RHEL-7.3-20160919.n.0. grub2-efi-modules was moved to base repos.

Comment 9 Jan Blazek 2016-09-26 13:42:42 UTC
*** Bug 1375679 has been marked as a duplicate of this bug. ***

Comment 10 Peter Jones 2016-09-26 13:46:43 UTC
This still seems wrong to me - why do you need to use grub2-mkimage in the first place?  The .efi file we ship should include everything needed to network boot, and grub2-efi-modules should not be necessary.  In addition, moving it into base repos is probably *hiding* whatever the real issue is here on some systems, but on other systems it simply will not work, because it results in an unsigned bootloader.  So we need to fix whatever issue you have with the modules, and probably do that *instead* of this.

Comment 11 Steven Shiau 2016-09-26 14:24:09 UTC
Hi Peter, 
Thanks for asking. I mentioned in the beginning this is a wishlist, because it would be more flexible to have grub2-efi-modules so that user can use grub2-mkimage to make her/his own network booting efi. E.g., the grub config file, prefix (for EFI path) can be assigned by grub2-mkimage.
Sometimes user need flexibility, i.e., a customized bootloader than a signed, unchangeable bootloader.

Steven

Comment 12 Peter Jones 2016-09-26 17:31:46 UTC
But isn't that the whole point of it being in -optional to begin with?

Comment 16 errata-xmlrpc 2016-11-03 22:02:59 UTC
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://rhn.redhat.com/errata/RHEA-2016-2143.html

Comment 17 ilmostro7 2017-03-13 19:47:39 UTC
I apologize for resurrecting this issue, however, I must agree with Peter Jones on this.  As it stands right now, on a RHEL-7.3 system, the `grub2-efi-modules` package is available in both repos mentioned:

~~~
repoquery -qa --repoid=rhel-7-server-rpms |grep -i grub2-efi
grub2-efi-1:2.02-0.44.el7.x86_64
grub2-efi-modules-1:2.02-0.44.el7.x86_64
[14:45][etc]# repoquery -qa --repoid=rhel-7-server-optional-rpms |grep -i grub2-efi                                                                                                                                                            
grub2-efi-modules-1:2.02-0.34.el7_2.x86_64
~~~

Comment 18 ilmostro7 2017-03-13 19:50:54 UTC
The work here should be reversed, and the bug closed as *NOTABUG*

Comment 19 Pavel Holica 2017-03-14 07:14:24 UTC
(In reply to ilmostro7 from comment #18)
> The work here should be reversed, and the bug closed as *NOTABUG*

For that you need to file new bug referencing this one.

Comment 20 ilmostro7 2017-03-14 07:54:51 UTC
More of a suggestion; I'll leave it up to implementers to make determination.

Comment 21 ilmostro7 2017-03-14 07:59:17 UTC
Adding needinfo flag for Jan Blazek

Comment 22 Jan Blazek 2017-03-14 08:14:28 UTC
(In reply to ilmostro7 from comment #17)
> I apologize for resurrecting this issue, however, I must agree with Peter
> Jones on this.  As it stands right now, on a RHEL-7.3 system, the
> `grub2-efi-modules` package is available in both repos mentioned:
> 
> ~~~
> repoquery -qa --repoid=rhel-7-server-rpms |grep -i grub2-efi
> grub2-efi-1:2.02-0.44.el7.x86_64
> grub2-efi-modules-1:2.02-0.44.el7.x86_64
> [14:45][etc]# repoquery -qa --repoid=rhel-7-server-optional-rpms |grep -i
> grub2-efi                                                                   
> 
> grub2-efi-modules-1:2.02-0.34.el7_2.x86_64
> ~~~

grub2-efi-modules has been moved from Server-optional to Server repository in RHEL 7.3. The old version from RHEL 7.2 has stayed in the Server-optional. I think this is expected.

This is more general question. We usually do not remove old already released content from the repositories.

Lubos, what is your viewpoint of this?

Comment 23 Red Hat Bugzilla 2023-09-14 03:14:52 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 1000 days