See PXE Setup for overall instructions. This is NetBSD specific.

Chaining pxelinx.0 to pxeboot_ia32.bin (WORKS),

mkdir -p /tftpboot/netbsd8/amd64/
rsync -avz --delete-after --exclude 'binary/sets/x*.tgz' rsync://rsync.fr.netbsd.org/NetBSD/NetBSD-8.0/amd64/ /tftpboot/netbsd8/amd64/

cd /tftpboot/
ln -s netbsd8/amd64/installation/misc/pxeboot_ia32.bin

vi /tftpboot/pxelinux.cfg/default

label netbsd8
    kernel pxeboot_ia32.bin


and it also avoids playing with dhcpd.conf, inside the subnet stanza (this is the trick to differenciate the hardware BOOTP requests from the NetBSD pxeboot_ia32.bin BOOTP requests,

     if substring (option vendor-class-identifier, 0, 17)
       = "NetBSD:i386:libsa" {
         if filename = "netbsd" {
             filename "tftp:netbsd7/amd64/binary/kernel/netbsd-INSTALL.gz";

Note. otherwise manually at the NetBSD boot prompt,

boot tftp:netbsd7/amd64/binary/kernel/netbsd-INSTALL.gz

Tweaking pxeboot_ia32.bin, but this is unfortunately possible only from within a NetBSD system,

#installboot -v -e -o bootconf,modules pxeboot_ia32.bin
#vi boot.cfg

Otherwise, attempting multiboot (FAILS),

cp -i /usr/lib/syslinux/modules/bios/libcom32.c32 /var/lib/tftpboot/
cp -i /usr/lib/syslinux/modules/bios/mboot.c32 /var/lib/tftpboot/

vi /var/lib/tftpboot/pxelinux.cfg/default

label NetBSD multiboot
com32 mboot.c32
append netbsd7/amd64/binary/kernel/netbsd-INSTALL.gz

but this is what I get,

Invalid Multiboot image: neither ELF header nor a.out kludge found

Ref. http://www.syslinux.org/wiki/index.php/Mboot.c32

Obsolete method, using memdisk against the floppy installer (DEPRECATED),

wget ftp://ftp.fr.netbsd.org/pub/NetBSD/NetBSD-5.0.2/i386/binary/kernel/netbsd-INSTALL_FLOPPY.gz
#TODO what is the last release providing floppy?

vi /var/lib/tftpboot/pxelinux.cfg/default

label NetBSD install floppy
kernel memdisk
append netbsd-INSTALL_FLOPPY.gz


Nethence | Doc | Pub | Lab | Pbraun | SNE Russia | xhtml