rEFInd relies on various on-disk files for much of its functionality, so if it's started over a network, it won't know where to look to find those files -- and they may not be available at all. I tested this years ago, and IIRC, at the time it would sort-of work, but without icons and with only the defaults from refind.conf (since of course it couldn't load that file). It may be that it's gotten worse -- or maybe not. What happens when you do as you're prompted and press a key to continue? If rEFInd comes up and shows options, even with no icons, then it's working as well now as it did years ago. If it crashes or freezes, then it's worse.
In any event, the best solution I can think of to this problem is to use an EFI-executable RAM disk. I don't know of such a tool that already exists, so it would need to be written. The idea is to create an EFI binary that, when run, extracts part of its contents into a RAM disk. rEFInd, and all its support files, could then be loaded into the RAM disk. This file could then be delivered via the PXE server, and everything should work fine. As I say, though, I don't know of such a tool for EFI.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm trying to PXE boot into rEFInd, it seems to load the binary fine but immediately halts with
I can successfully PXE boot to grub2.
This is a VM using ovmf 20220126.
Any suggestions of how to fix/debug this?
rEFInd relies on various on-disk files for much of its functionality, so if it's started over a network, it won't know where to look to find those files -- and they may not be available at all. I tested this years ago, and IIRC, at the time it would sort-of work, but without icons and with only the defaults from
refind.conf
(since of course it couldn't load that file). It may be that it's gotten worse -- or maybe not. What happens when you do as you're prompted and press a key to continue? If rEFInd comes up and shows options, even with no icons, then it's working as well now as it did years ago. If it crashes or freezes, then it's worse.In any event, the best solution I can think of to this problem is to use an EFI-executable RAM disk. I don't know of such a tool that already exists, so it would need to be written. The idea is to create an EFI binary that, when run, extracts part of its contents into a RAM disk. rEFInd, and all its support files, could then be loaded into the RAM disk. This file could then be delivered via the PXE server, and everything should work fine. As I say, though, I don't know of such a tool for EFI.