Grub menus only show memtest86+

After upgrade to Fedora 30 the grub menu always defaults to the thrid item in the list. While trying to fix this I seem to have lost all my menu items except memtest86+.

At least that is what appears to have happened. If I run “grubby --default-kernel” I get what is the current latest kernel “/boot/vmlinuz-5.4.17-100.fc30.x86_64” . If I run “grubby --info=ALL” I get a list of all the kernels I see when I do a listing of /boot. If I run “grep -P “^menuentry” /boot/grub2/grub.cfg | cut -d “’” -f2” it only shows “Fedora Memtest memtest86±5.01”. At this point I’m confused and afraid if I try to restart my system I may not be able to get it back.

Don’t understand a lot about grub2 on Fedora 30 and need help. I would like the grub menu to show the available kernels in /boot with the most current at the top of the list. Any help would be appreciated!

Edward

Note that modern Fedora use a Boot Loader Specification.
See the /boot/loader/entries

I don’t have live media after F21, since that was my last full system load. I have been using the dnf system-upgrade. I ran grub2-install /dev/sda and then grub2-mkconfig commands listed in the Fedora Wiki but I have the same results. The Arch Wiki uses the grub-install which is not included on Fedora 30.

The grub2-mkconfig command is what destroyed my original menus, I think. That is what I ran before I just had the memtest option. Don’t understand what happened.
I just noticed that the selected kernel in the menu was a couple of kernel older than the one just updated to with dnf update. I tried to fix it with grub2-mkconfig and things fell apart.

Edward

I think that I have found the problem.

If I set “GRUB_ENABLE_BLSCFG=false” in /etc/default/grub and then run
“grub2-mkconfig -o /boot/grub2/grub.cfg” all the kernels in /boot are shown as items on the boot menu, which is all I wanted.

I hope this doesn’t break something else. Love Fedora, but the time it takes to keep it working is tiring!!
Edward

1 Like