I'm trying to augment my existing PXE deployment with gPXE to allow for scripting via CGI, etc..
In the "usual" way (according to the docs) I TFTP gPXE, it autoboots and grabs a URL from DHCP, then the gpxe script tells it to chainload a different URL based on the SMBIOS serial (http://server/${serial}.gpxe). So up to the point of chainloading the second gpxe script everything is by the book. My problem is that from the HTTP script I want to TFTP boot. According to the docs and video talks, any path that doesn't contain "http://" should be interpreted as TFTP... but this isn't the case. Instead, "chain pxegrub" acts as though I mistakenly left off the base URL and fills it in for me. I've even tried "chain /pxegrub", etc, but no luck. So here's the wierd part that confuses the hell out of me. If I boot to gPXE, bail out to the CLI and then walk it though my steps manually it works. That is, if I do the following I'm fine via CLI: <control-b> ifopen net0 dhcp net0 clear net0.dhcp/filename clear filename chain pxegrub Like I said, the above proceedure done manually works just great. I can boot my old SYSLINUX and PXEGRUB images via TFTP just as I always have. But if I translate the above into gpxe scripts from HTTP it doesn't work. I've tried all manner for clearing variables, imgfree, etc, etc, etc. No matter what I do, I can't TFTP from an HTTP boot script. Please oh please, can someone point me in the right direction? I've spent hours going round and round, and I'm sure its gotta be something simple I'm missing. benr. _______________________________________________ gPXE mailing list [email protected] http://etherboot.org/mailman/listinfo/gpxe
