I’ve run the grubby tool in Red Hat Kickstart %post scripts for years.  So when it stopped working I filed a bug. Only to be told that if I’m going to run grubby from a %post that I need to setup the environment for it.  I’m annoyed that this couldn’t have been better communicated.  Perhaps in the release notes.

In any case, do you see the following error from grubby?

grubby fatal error: unable to find a suitable template


If so, you’ll need to add something like the following in your %post before any grubby command:

ln -s awk '{ if ($2 == "/") print$1; }' /etc/fstab /dev/root


There are cases where that doesn’t work like when using UID=foo to identify the partition to mount.  But it my case, this has solved the problem for me.