An interesting experiment today:
I thought that possibly if I upgraded Rocky-8 with a Fedora kernel for
the release from which I’m rebuilding the os-prober package, then os-prober
might work properly. Or possibly, because the Fedora os-prober x86_64.rpm’s
also install directly with no errors, if the rebuilt package doesn’t work, perhaps
the x86_64 Fedora package will.
I chose the Fedora 31 updated kernel, because, although fc31 is the earliest use
of os-prober-v.177, the grub2 package is the closest (v.2.02-110) to the
Rocky-8 grub2 package, v 2.02-148.
The 12 Fedora 31 kernel rpm’s were assembled in a Fedora31Kernel sub-directory:
kernel-5.8.18-100.fc31.x86_64.rpm
kernel-core-5.8.18-100.fc31.x86_64.rpm
kernel-cross-headers-5.8.18-100.fc31.x86_64.rpm
kernel-devel-5.8.18-100.fc31.x86_64.rpm
kernel-headers-5.8.18-100.fc31.x86_64.rpm
kernel-modules-5.8.18-100.fc31.x86_64.rpm
kernel-modules-extra-5.8.18-100.fc31.x86_64.rpm
kernel-modules-internal-5.8.18-100.fc31.x86_64.rpm
kernel-rpm-macros-143-1.fc31.noarch.rpm
kernel-tools-5.8.18-200.fc31.x86_64.rpm
kernel-tools-libs-5.8.18-200.fc31.x86_64.rpm
kernel-tools-libs-devel-5.8.18-200.fc31.x86_64.rpm
Because AlmaLinux-8.9-beta-1-x86_64-minimal had just been installed on the
test machine with a separate boot partition in the manner described earlier, it was
used as the test platform.
-From the Fedora31Kernel sub-directory,
a sudo yum –nogpgcheck localinstall k*.rpm installed 67 packages in all plus
3 upgrades.
-Then, sudo yum install fuse3 installed 3 packages in all.
-Then, the /etc/default/grub file was edited to
add the GRUB_DISABLE_OS_PROBER=false line, and change the
GRUB_ENABLE_BLSCFG value from true to false
-Then, the os-prober-1.77-3.fc31.x86_64.rpm package was local installed,
upgrading the resident os-prober-1.74-9 package.
-Then, the sudo grub2-mkconfig -o /boot/grub2/grub.cfg command was entered,
which seemed to generate an abbreviated grub.cfg file.
-Then, reboot, which made the Fedora 31 kernel the default
Under the Fedora 31 kernel, the os-prober-1.77-3.fc31.x86_64 package
behaved as before, with nothing happening with a sudo os-prober comand.
Then I downgraded with a sudo yum downgrade os-prober command to the
original 1.74-9 version, and to my surprise when I entered the sudo os-prober
command again, all the other Linux distros, but not Windows XP were listed !!!
I repeated the command and again it listed all the Linux distros accurately.
I upgraded to the os-prober-1.77-3.el8.x86_64 mock-rebuilt package, but it did
nothing as before.
I downgraded again to the original 1.74-9 version, and the
sudo grub2-mkconfig -o /boot/grub2/grub.cfg command generated
a configuration file listing all distros except Windows XP.
I rebooted again, and this time from SuperGrub 2.04s1 accessed the
AlmaLinux boot partition directly which allowed access to any one of the
Linux distros on the disk.
I have no idea why os-prober-1.74-9 performs reliably under the Fedora 31 Kernel
and is so erratic under the el8 kernel.
I plan to investigate further when Rocky 8.9 is released.
Len E.