[CentOS] Booting from an ISO file in a XFS /boot partition

Thu Apr 8 09:16:56 UTC 2021
Gestió Servidors <sysadmin.caos at uab.cat>


I want to boot with a customized iPXE iso boot file from my GRUB2 menu. My system is running CentOS-7, with /boot formated as XFS filesystem. After copying my iPXE.iso into /boot, I have created a custom GRUB2 file in /etc/grub.d/40_custom like this:

menuentry "iPXE" {
               set isofile="/ipxe.iso"
               loopback loop (hd0,1)$isofile
               linux16 (loop)/ipxe.lkrn

After regenerating grub2.cfg with "grub2-mkconfig -o /etc/grub2.cfg ,  I have rebooted my system, I have chosen "iPXE" entry, but system doesn't boot. I receive this error:
error: file '/ipxe.iso' not found.
Starting /ipxe.iso...
error: no server is specified.
Press any key to continue...

However, in another similar system that runs /boot in EXT4 filesystem, that ISO file boots perfectly with the same configuration, so it seems the problem is with XFS.

Could you help me?