System Fails to Boot to Grub Rescue Shell After Leapp Upgrade or Encounter "Found GRUB devices with too little space reserved before the first partition" Inhibitor

Solution Verified - Updated -

Issue

When performing a leapp upgrade you encounter the following inhibitor:

Risk Factor: high (inhibitor)
Title: Found GRUB devices with too little space reserved before the first partition
Summary: On the system booting by using BIOS, the in-place upgrade fails when upgrading the GRUB2 bootloader if the boot disk's embedding area does not contain enough space for the core image installation. This results in a broken system,
 and can occur when the disk has been partitioned manually, for example using the RHEL 6 fdisk utility.

The list of devices with small embedding area:
- /dev/sda.
Remediation: [hint] We recommend to perform a fresh installation of the RHEL 8 system instead of performing the in-place upgrade.
Another possibility is to reformat the devices so that there is at least 1024 kiB space before the first partition. Note that this operation is not supported and does not have to be always possible.

Or after performing a leapp upgrade and after rebooting to the upgrade kernel initramfs-upgrade to continue the upgrade the system attempts to perform a final reboot. After this reboot the system fails to the grub rescue> shell with messages similar to the following:

error: symbol 'grub_calloc' not found. 
Entering rescue mode...
grub rescue>

or

error: symbol 'grub_real_boot_time' not found.

Environment

  • Red Hat Enterprise Linux 7.9 leapp upgrade to RHEL 8
  • leapp-0.15.0-2.el7_9.noarch and later

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content