Provisioning a RHEL 7 and RHEL 8 client system stuck at "Booting Kickstart default PXEGrub2" on Red Hat Satellite Capsule 6.18

Solution Verified - Updated

Environment

  • Red Hat Satellite 6.18
  • Red Hat Satellite 6.19
  • Red Hat Satellite Capsule 6.18
  • Red Hat Satellite Capsule 6.19
  • Red Hat Enterprise Linux 7
  • Red Hat Enterprise Linux 8 (RHEL 8.9 and older releases)

Issue

  • Provisioning RHEL 7 client systems using PXE/TFTP on UEFI (EFI-based) fails when using Red Hat Satellite 6 and External Capsule 6.18.

    • During the provisioning process, the client system successfully reaches the GRUB menu but then becomes stuck at the following stage:
     Booting 'Kickstart default PXEGrub2'
    
    • The system does not proceed further and provisioning does not complete.

Resolution

  • Please refer to the Diagnostic Steps section below to confirm whether your environment matches the symptoms described in this article. If the diagnostics confirm the issue, contact This content is not included.Red Hat Technical Support for further assistance and guidance.
  • Configure the Satellite and Capsule Server to use the bootloader-universe feature and ensure that the bootloader binaries are compatible with the RHEL version being provisioned.

  • Maintain the bootloader binaries for each RHEL version using the Major.Minor version format (for example, 7.9, 8.10, or 9.6). Download and place the corresponding shim and GRUB2 binaries under the appropriate versions. Refer to Section 8.4: "Configuring Capsule to provision Red Hat Enterprise Linux".

  • For example, if both RHEL 7.9 and RHEL 9.6 need to be provisioned where 7.6 is a symbolic link, configure bootloader-universe with the following structure:

    [root@satellite ~]# tree /var/lib/tftpboot/bootloader-universe
       /var/lib/tftpboot/bootloader-universe
       └── pxegrub2
    	   └── redhat
    		   ├── 7.6 -> 7.9
    		   ├── 7.9
    		   │   └── x86_64
    		   │       ├── boot.efi -> grubx64.efi
    		   │       ├── boot-sb.efi -> shimx64.efi
    		   │       ├── grubx64.efi
    		   │       └── shimx64.efi
    		   └── 9.6
    			   └── x86_64
    				   ├── boot.efi -> grubx64.efi 
    				   ├── boot-sb.efi -> shimx64.efi
    				   ├── grubx64.efi
    				   └── shimx64.efi
    
    

Root Cause

  • Satellite and External Capsule Server were deployed on RHEL 9 and utilize the default GRUB2 binaries shipped with newer RHEL 9 releases.(e.g. RHEL 9.7/9.8 via the package)
  • RHEL 9.7 and RHEL 9.8 include a newer version of GRUB2 that has a compatibility issue with UEFI PXE booting of RHEL 7.9 and earlier releases and RHEL 8.9 and earlier releases.

Diagnostic Steps

  • On the affected Satellite or Capsule server, verify the checksum of the grubx64.efi file used for PXE boot.

    1. Run the following command on the satellite or Capsule server:

      # sha256sum /var/lib/tftpboot/grub2/grubx64.efi
      
    2. Compare the output with the expected checksum below: Known checksums of incompatible newer RHEL 9 GRUB2 binaries

    # d9e0d5caea5f4a1ace40739aa700d04470fdbaa63085e6b3856e52ae4a551f65
    # dda671357101c3491413274bd2e715969016b5d8f5e64f3b7ef40eb01e37c6bb
    
SBR
Product(s)
Components
Category

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.