On 2010-09-05 17:31, Vladimir 'φ-coder/phcoder' Serbinenko wrote:
On 09/06/2010 01:08 AM, Omni Flux wrote:
The output of two tests follow. It works, to an extent. Is PXE being
left in a state where the next bootloader can call it's initialization
routines again?
Attached patch may help. I noticed that last file may still remain opened.
With this fix grub PXE can chain load itself recursively and load
pxelinux successfully.
Unfortunately pxelinux then tries to find its configuration file in the
wrong location because it takes the path from the boot file in the DHCP
packet saved by PXE, which it expects to be pointing to itself but is
actually pointing to grub itself.
I am not sure this is something we can reasonably fix, but it can be
worked around by putting the pxelinux.cfg configuration in the same
location as grub PXE.
Unfortunately, this means we cannot just download arbitrary distro
installers, drop them in the tftp directory and point grub to their
bootloaders.
Ideally, but probably not reasonable and/or possible would be if we
could mangle the DHCP packets before chainloading so we could change the
boot loader string and even add custom vendor options (either of which
would allow specifying a different pxelinux.cfg location per menu item.)
I do not have any other PXE images to try, so I do not know if this
issue affects any boot loaders besides pxelinux.
--
Omni Flux
_______________________________________________
Grub-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/grub-devel