[syslinux] Chainload pxelinux from pxelinux and pass parameters or change root dir?

Gene Cumm gene.cumm at gmail.com
Mon Jun 16 15:14:11 PDT 2014


On Mon, Jun 16, 2014 at 5:57 PM, Alexander Perlis <aperlis at math.lsu.edu> wrote:

> On 06/16/2014 10:41 AM, Gene Cumm wrote:
>>
>> [...]  Initially I wrote pxechn.c32 to allow further
>> modifications of the DHCP data [...]
>
>
> Awesome! In fact, this might allow us to install an automatic 'http' prefix
> on all subsequent requests, to avoid slow tftp --- or is that a bad idea,
> and/or is there a way to default all transfers to http without using pxechn
> and without prefixing every filename in the *.cfg files with http://my.ip/ ?

Either manual prefixing or by using option 210 (either in your DHCP
config or via pxechn.c32 with -p like you already did below).

> (We don't control our DHCP server so can't easily experiment with the 210
> option. Chainloading just to get that prefix installed is itself a slowdown,
> so I'd love to know a better way.) Here's what I mean by 'chainloading to
> install an automatic http prefix':
>
> pxelinux.cfg:
> ------------
> DEFAULT switch-to-lpxe-with-http-default
> TIMEOUT 0
> LABEL switch-to-lpxe-with-http-default
> KERNEL http://my.ip/syslinux/pxechn.c32 http://my.ip/syslinux/lpxelinux.0 -p
> http://my.ip/ -c nextstage.cfg
>
> nextstage.cfg:
> -------------
> Former contents of pxelinux.cfg

Just to be clear, I'd recommend extracting from the binary/source
archive, not running make and just copying files as needed.

This sounds like you're using gpxelinux.0 4.07 which as I stated will
introduce issues.  Instead of using gpxelinux.0 4.07, try pxelinux.0
4.07 then do your chainload to lpxelinux.0 6.02.  If this doesn't
solve it, try 6.03-pre14.


> I also tried all of this under 5.10, but ran into the 'netconn_write failed'
> error, so I can't use version 5 at all. I wonder whether the patch in 6.02
> that fixes that error could be backported to 5? Or am I wrong to assume that
> 5.10 is otherwise more stable than 6.02?

Errors along this line are part of what's resolved in recent versions.
That bug is likely just preventing you from hitting the section of
code leading to your hang.

-- 
-Gene


More information about the Syslinux mailing list