H. Peter Anvin
2008-Mar-26 23:41 UTC
[syslinux] SYSLINUX 3.70-pre7: a very special prerelease
I have produced a first cut of integrating gPXE with PXELINUX. This builds, in addition to the usual pxelinux.0, an image called gpxelinux.0 which includes the gPXE network stack. The result is that one can now download images via (almost) any network protocol supported by gPXE, including http. This lets one do fun things like using a CGI or PHP script for the configuration file. SAN booting (iSCSI or AoE), which is supported by gPXE, can be invoked via a small (not yet written) comboot module, which is only necessary in order to pass the appropriate command down to gPXE. Note that currently chainloading other NBPs from gpxelinux.0 is broken. This will be fixed. In order to invoke the new functionality, you need a filename or filename prefix which is a URL, identified by the character sequence. In my test setup, I simply use DHCP option 209 (pxelinux.pathprefix) to redirect loading to my http server. Please test it out and holler when (not if) it breaks. A huge amount of effort has gotten into this, and I would like to thank specially Michael Brown of the Etherboot/gPXE project, without whom this never would have been possible. -hpa
H. Peter Anvin
2008-Mar-26 23:43 UTC
[syslinux] SYSLINUX 3.70-pre7: a very special prerelease
H. Peter Anvin wrote:> In order to invoke the new functionality, you need a filename or > filename prefix which is a URL, identified by the character sequence.Identified by the character sequence "://", that is. -hpa
This is a great idea. In an earlier post I wrote ?I use gPXE in the process so I can support iSCSI and HTTP for booting.? While PXE loaded gPXE and in turn loaded pxelinux.0, PXELinux failed to load pxelinux.cfg/default from the web server and it look a long time searching for each configuration file. Here are some more thoughts I had on this scenario. Can PXELinux be made to work separately from gPXE, in that gPXE would be in ROM and load pxelinux.0 from a web server? Currently gPXE does not seem to resolve DNS queries correctly anyway. Having an integrated gPXELinux is not a bad idea, but what NIC drivers are incorporated into gPXELinux? gpxe:all-drivers, undi:*, etc.? It would be nice to burn gPXE or gPXELinux into ROM and be able to kick start an OSD from the ROM command line over the Internet via HTTP. Several other things would need to be considered such as using DNS service records that would contain boot file information as DHCP currently does. This would allow specifying http://contoso.com from the gPXE command line and the DNS server at contoso.com serving a boot file or configuration file URL. Use the following scenario: Boot the computer and specify http://www.ubuntu.com at the gPXE command prompt as the boot location. This in turn eventually loads a GFXBoot/VESAMenu allowing for a Ubuntu installation, etc. Some final thoughts; at some time you will probably be faced with EFI integration, i.e. an EFI version. "H. Peter Anvin" <hpa at zytor.com> wrote: I have produced a first cut of integrating gPXE with PXELINUX. This builds, in addition to the usual pxelinux.0, an image called gpxelinux.0 which includes the gPXE network stack. The result is that one can now download images via (almost) any network protocol supported by gPXE, including http. This lets one do fun things like using a CGI or PHP script for the configuration file. SAN booting (iSCSI or AoE), which is supported by gPXE, can be invoked via a small (not yet written) comboot module, which is only necessary in order to pass the appropriate command down to gPXE. Note that currently chainloading other NBPs from gpxelinux.0 is broken. This will be fixed. In order to invoke the new functionality, you need a filename or filename prefix which is a URL, identified by the character sequence. In my test setup, I simply use DHCP option 209 (pxelinux.pathprefix) to redirect loading to my http server. Please test it out and holler when (not if) it breaks. A huge amount of effort has gotten into this, and I would like to thank specially Michael Brown of the Etherboot/gPXE project, without whom this never would have been possible. -hpa _______________________________________________ SYSLINUX mailing list Submissions to SYSLINUX at zytor.com Unsubscribe or set options at: http://www.zytor.com/mailman/listinfo/syslinux Please do not send private replies to mailing list traffic. --------------------------------- Looking for last minute shopping deals? Find them fast with Yahoo! Search.
Jeppe Toustrup
2008-Mar-27 17:44 UTC
[syslinux] SYSLINUX 3.70-pre7: a very special prerelease
H. Peter Anvin wrote:> The result is that one can now download images via (almost) any network > protocol supported by gPXE, including http. This lets one do fun things > like using a CGI or PHP script for the configuration file.Great! In my current setup I have been using pxelinux 3.60-pre3 which, IIRC, is the only so far which have had HTTP support. I then had the clients to get Etherboot from the TFTP server, which then retrieved pxelinux and the config files from a webserver. I'll try out the new version and see how it works out. /Jeppe
Excellent, I finally got it working with: default http://195.135.221.130/distribution/SL-OSS-factory/inst-source/boot/i386/loader/linux initrd=http://195.135.221.130/distribution/SL-OSS-factory/inst-source/boot/i386/loader/initrd splash=silent showopts install=http://195.135.221.130/distribution/SL-OSS-factory/inst-source autoyast=http://195.135.221.130/distribution/SL-OSS-factory/inst-source/control.xml It did not work with DNS names, so I had to use IP addresses. "H. Peter Anvin" <hpa at zytor.com> wrote: I have produced a first cut of integrating gPXE with PXELINUX. This builds, in addition to the usual pxelinux.0, an image called gpxelinux.0 which includes the gPXE network stack. The result is that one can now download images via (almost) any network protocol supported by gPXE, including http. This lets one do fun things like using a CGI or PHP script for the configuration file. SAN booting (iSCSI or AoE), which is supported by gPXE, can be invoked via a small (not yet written) comboot module, which is only necessary in order to pass the appropriate command down to gPXE. Note that currently chainloading other NBPs from gpxelinux.0 is broken. This will be fixed. In order to invoke the new functionality, you need a filename or filename prefix which is a URL, identified by the character sequence. In my test setup, I simply use DHCP option 209 (pxelinux.pathprefix) to redirect loading to my http server. Please test it out and holler when (not if) it breaks. A huge amount of effort has gotten into this, and I would like to thank specially Michael Brown of the Etherboot/gPXE project, without whom this never would have been possible. -hpa _______________________________________________ SYSLINUX mailing list Submissions to SYSLINUX at zytor.com Unsubscribe or set options at: http://www.zytor.com/mailman/listinfo/syslinux Please do not send private replies to mailing list traffic. --------------------------------- Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it now.