After 10 years away from FAI, I am happily back on using it. :-)

I have an issue with fai-make-nfsroot around lines 492--508 :

f083d3ba bin/fai-make-nfsroot     (Thomas Lange       2012-04-10 13:40:12 +0200 
492)     # tftp environment
b8e70a3e bin/fai-make-nfsroot     (Thomas Lange       2014-08-24 22:18:51 +0200 
493)     local pxebin
b8e70a3e bin/fai-make-nfsroot     (Thomas Lange       2014-08-24 22:18:51 +0200 
494) 
b8e70a3e bin/fai-make-nfsroot     (Thomas Lange       2014-08-24 22:18:51 +0200 
495)     # wheezy/jessie pathes
b8e70a3e bin/fai-make-nfsroot     (Thomas Lange       2014-08-24 22:18:51 +0200 
496)     if [ -f $NFSROOT/usr/lib/PXELINUX/pxelinux.0 ]; then
0e5df8c6 bin/fai-make-nfsroot     (Thomas Lange       2014-08-25 23:11:20 +0200 
497)         pxebin=$NFSROOT/usr/lib/PXELINUX/pxelinux.0
b8e70a3e bin/fai-make-nfsroot     (Thomas Lange       2014-08-24 22:18:51 +0200 
498)     else
0e5df8c6 bin/fai-make-nfsroot     (Thomas Lange       2014-08-25 23:11:20 +0200 
499)         pxebin=$NFSROOT/usr/lib/syslinux/pxelinux.0
b8e70a3e bin/fai-make-nfsroot     (Thomas Lange       2014-08-24 22:18:51 +0200 
500)     fi
b8e70a3e bin/fai-make-nfsroot     (Thomas Lange       2014-08-24 22:18:51 +0200 
501) 
6e9dc307 bin/make-fai-nfsroot     (Thomas Lange       2007-06-12 14:53:01 +0000 
502)     rm -f $NFSROOT/boot/*.bak
371855ed bin/make-fai-nfsroot     (Thomas Lange       2007-08-12 14:08:14 +0000 
503)     mkdir -p $TFTPROOT/pxelinux.cfg
451b235e bin/fai-make-nfsroot     (Thomas Lange       2012-11-28 15:31:04 +0100 
504)     chmod a+r $NFSROOT/boot/initrd.img-*
b2b266d9 bin/fai-make-nfsroot     (Thomas Lange       2012-04-25 22:13:53 +0200 
505)     cp -pv $NFSROOT/boot/vmlinu?-* $NFSROOT/boot/initrd.img-* $TFTPROOT
6bed5337 bin/fai-make-nfsroot     (Thomas Lange       2014-08-30 21:37:48 +0200 
506)     cp -u $pxebin $TFTPROOT
6bed5337 bin/fai-make-nfsroot     (Thomas Lange       2014-08-30 21:37:48 +0200 
507)     [ -f /usr/lib/syslinux/modules/bios/ldlinux.c32 ] && cp -u 
/usr/lib/syslinux/modules/bios/ldlinux.c32 $TFTPROOT
8b73f0ad bin/fai-make-nfsroot     (Thomas Lange       2013-11-25 13:09:18 +0100 
508)     echo "TFTP environment prepared. Enable DHCP and start the TFTP daemon 
on root $TFTPROOT."


It is not clear to me why pxelinux.0 is fetched from $NFSROOT instead of the
local file system?

The case of pxelinux.0 seems to be the same for example as ldlinux.c32
which comes from the local file system in the code sample above.

Rationale :
- there would be no need to install pxelinux in each NFSROOT;
- it is more related to the server than the client using NFSROOT.
- this makes the example from
  http://wiki.fai-project.org/wiki/Installing_Ubuntu_Linux_with_FAI to
  fail because there is no pxelinux package installed on the NFSROOT
  according to the given content of /etc/fai/NFSROOT

If that makes sense, I can send a pull request to have this code instead:
if [ -f /usr/lib/PXELINUX/pxelinux.0 ]; then
    pxebin=/usr/lib/PXELINUX/pxelinux.0
else
    pxebin=/usr/lib/syslinux/pxelinux.0
fi

Thank you,
-- 
  Ronan KERYELL.

Reply via email to