Grub-core error "you need to load the kernel first"

Hi there, after two years with Ubuntu I decided it is time to change and Fedora looks like a nice choice. Unfortunately my first experience with system is kinda worse.

I downloaded Fedora workstation, made bootable flash drive, run system from flash drive and started installer. In installation destination I chose my only disk with automatic patitions configuration. I reclaimed space by removing all original partitions. Installation run without any problems and when finished prompted me to reboot. So far so good. Problem is that system have never booted.

This is what I get on every start:

error: …/…/grub-core/commands/efi/tpm.c:148:Unknown TPM error.
error: …/…/grub-core/commands/efi/tpm.c:148:Unknown TPM error.
error: …/…/grub-core/commands/efi/tpm.c:148:Unknown TPM error.
error: …/…/grub-core/commands/efi/tpm.c:148:Unknown TPM error.
error: …/…/grub-core/commands/efi/tpm.c:148:Unknown TPM error.
error: …/…/grub-core/loader/i386/efi/linux.c:208:you need to load the kernel first.

The only thing I can is to play with some grub command line. So my question is obvious. How can I run Fedora?

2 Likes

According to the above:

  1. Can you check if you can disable TPM in your System Firmware?
  • also update System Firmware if possible
  1. If the above do not help, try to remove TPM from grub
  • When seeing the grub menu, choose edit, then insert below as the first command
    rmmod tpm
    esc
    then choose the default entry to boot
  • if it helps, then edit the boot entry under /boot/loader/entries to include that command
1 Like

Some hardware manufacturers do not support TPM functions on Linux systems, especially TPM 1.2 is not well supported and is an old standard. So, in many cases, you need to disable the functionality, as already said before.

EDIT: This book about TPM Modules can be downloaded for free:

It’s not free at Amazon, but I downloaded it from Springer a couple of months ago, so it seems to be free forever.

Thanks to both for the answer. So I tried:

  1. Disable TPM - Unfortunately BIOS doesn’t offer such an option.
  2. Disable secure boot.
  3. Update firmware - Not available such an update from Asus. There was only BIOS update which I did.
  4. Remove tmp module - “rmmod tpm” command always ends with error: ../../grub-core/commands/minicmd.c:138: no such module.
  5. Tried also install Ubuntu and Archlinux and both distros booted without problems.

Any other ideas??

In situations like this, I will:

Reinstall bootloader.

https://docs.fedoraproject.org/en-US/quick-docs/bootloading-with-grub2/#restoring-bootloader-using-live-disk

1 Like

Just to add to this issue. I have a Lenovo C940 and ran into this same issue from F33 after updating the kernel (Can’t remember which one. I’ve now done a fresh install of F34 and immediately ran into this issue after the 1st system update of the kernel :frowning:

I don’t want to disable TPM and unfortunately, I’m a competent “User” of Linux for day to day and some configs but the EFI/Grub rabbit hole has been difficult to understand.

I’ve found this Bugzilla which is very close to my problem and will contact the Grub Maintainers incase they can assist and report back here.

https://bugzilla.redhat.com/show_bug.cgi?id=1900233

1 Like

I have an Asus Zenboox UX310UA, and i can’t disable TPM. I solved the problem in this way:

  • I enabled the secure boot
  • Deleted the secure boot signature saved on the BIOS
  • Disabled the secure boot

In this way grub was fixed

2 Likes

This issue was reported over a year ago against an end of life version of Fedora. Please consider opening a new topic for this.

1 Like

thank you, you saved the day!

Thank you!

1 Like

My problem is fairly similar, so I’m not opening a new thread.
I installed Fedora 36 KDE. Reboot ok. Install updates with dnf upgrade --refresh. Reboot throws me in grub prompt. Ctrl + Alt + Del restarts and shows the grub menu, selecting anything shows this message:

error: ../../grub-core/commands/efi/tpm.c:140:Command failed.
error: ../../grub-core/commands/efi/tpm.c:140:Command failed.
error: ../../grub-core/commands/efi/tpm.c:140:Command failed.
error: ../../grub-core/commands/efi/tpm.c:140:Command failed.
error: ../../grub-core/commands/efi/tpm.c:140:Command failed.
error: ../../grub-core/loader/i386/efi/linux.c:258:you need to load the kernel first.

Press any key to continue...

Pressing anything takes me back to the grub menu.

My kernel is 5.19.9-200.fc36.x86_64 and grub 2.06-53.

I’ve tried fiddling with the bios settings like I’ve seen in this thread and found a setting that worked ONCE. The next boot got me in the same error.

After more research I’ve found a post for Ubuntu that said to add rmmod tpm in the grub config before the ‘linux’ and ‘initrd’ lines. I tried that and it got through, after showing me the same error and pressing on “any key to continue”.

I’m not sure how to make that permanent since the files in /etc/grub.d/ are pretty vast.

Same problem that I had. Look at this question that I have posted couple days ago

The solution worked for me is to disable the Secure Boot.