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.