This was tested on NetBSD 3.99.16, however the instructions should apply to other versions as well. I have attempted to flag steps where you may run into version incompatabilities with “Version Note”.
To PXEboot install NetBSD we will first need to configure a tftp server. You will need to insure that tftp is uncommented from inetd.conf and that inetd is enabled to run.
/etc/inetd.conf
tftp dgram udp wait root /usr/libexec/tftpd tftpd -l -s /tftpboot
/etc/rc.conf
inetd=YES
Then we will need to create the /tftpboot directory and populate it. You will need the pxeboot_ia32.bin file (included in base.tgz) and the netbsd-INSTALL kernel.
Note: The installboot command is only necessary if you’re booting via a serial console (i.e. a Soekris box) as is the case in this paper.
Version Note: In the event you will need serial console support older versions of installboot may not support writing to pxeboot_ia32.bin, you will need to extract or build pxeboot_ia32_com0.bin.
# cd /root # mkdir -p /tftpboot # gunzip netbsd-INSTALL.gz # cp netbsd-INSTALL /tftpboot # tar -zf base.tgz -x ./usr/mdec/pxeboot_ia32.bin # cd usr/mdec # installboot -e -o console=com0,speed=19200 pxeboot_ia32.bin # cp pxeboot_ia32.bin /tftpboot
Next you will need to configure dhcpd, and ensure it is enabled to run. You must configure dhcpd to serve pxeboot_ia32.bin.
Continue reading
