<div dir="ltr">Hi,<div><br></div><div>I am trying to set up an UEFI boot pxe mainly because our hardware servers do not support full legacy BIOS anymore (particularly hard disk plugin on those servers).</div><div><br></div><div>Our legacy pxelinux works just fine from a while now (and thanks for it).</div><div><br></div><div>I followed this link : <a href="https://lists.uni-koeln.de/pipermail/linux-fai/2014-February/010294.html">https://lists.uni-koeln.de/pipermail/linux-fai/2014-February/010294.html</a></div><div>... with no luck. I created an "UEFI" specific class to avoid the erase of DEFAULT, and put everything in that new class, because we will need to keep the pxelinux config.</div><div><br></div><div>My tftp fai folder is organised like this:</div><div>```</div><div><div>root@faiserv:/srv# tree -L 2</div><div>.</div><div>├── fai</div><div>│   ├── config</div><div>│   └── nfsroot</div><div>├── nfs4</div><div>└── tftp</div><div>    └── fai</div><div><br></div></div><div><div>root@faiserv:/srv/tftp/fai# tree -L 2</div><div>.</div><div>├── c2960s-universalk9-tar.150-2a.SE9.tar</div><div>├── cisco-ios-150-2a.tar -> c2960s-universalk9-tar.150-2a.SE9.tar</div><div>├── efi</div><div>│   ├── fonts</div><div>│   ├── grub.cfg</div><div>│   ├── grub.cfg.nok</div><div>│   ├── i386-pc</div><div>│   ├── locale</div><div>│   ├── pxelinux.cfg -> ../pxelinux.cfg</div><div>│   ├── unicode.pf2</div><div>│   └── x86_64-efi</div><div>├── gpxelinux.0</div><div>├── initrd.img-3.16.0-4-amd64</div><div>├── initrd.img-3.16.0-6-amd64</div><div>├── ldlinux.c32</div><div>├── lpxelinux.0</div><div>├── pxelinux.0</div><div>├── pxelinux.0.back</div><div>├── pxelinux.cfg</div><div>│   ├── 0A01FD03</div><div>│   ├── 0A01FFF2</div><div>│   ├── A226B5A1.disable</div><div>│   ├── A226B5A2.disable</div><div>│   ├── A226B5A3.disable</div><div>│   ├── A226B5A4.disable</div><div>│   ├── A226B5A5.disable</div><div>│   ├── A226B5A6.disable</div><div>│   ├── A226B5A7.disable</div><div>│   ├── A226B5A9</div><div>│   ├── A226B5AA.disable</div><div>│   ├── A226B5AB.disable</div><div>│   ├── A226B5B0.disable</div><div>│   ├── A226B5B4.disable</div><div>│   ├── A226B5B8</div><div>│   └── default</div><div>├── syslinux.efi</div><div>├── vmlinuz-3.16.0-4-amd64</div><div>└── vmlinuz-3.16.0-6-amd64</div></div><div><br></div><div>```</div><div><br></div><div>I do not know if the UEFI is also searching for a filename matching its IP address with the hexa value, so I created a symbolic link to the pxelinux.cfg parent directory...</div><div><br></div><div><br></div><div>I have no problem with DHCP, and my client is loading the grub.cfg menu. However, it fails while searching for the nfsroot. The error I get (with debug=all) is (replacing sensitive informations): </div><div>```</div><div>kern/disk.c:196 : Opening `tftp,IP.IP.IP.IP'...</div><div>disk/efi/efidisk.c:461 : opening tftp</div><div>kern/disk.c: 281: Opening `tftp,IP.IP.IP.IP' failed.</div><div>kern/disk.c: 295: Closing `tftp'.<br></div><div>```</div><div><br></div><div><br></div><div>Here is my grub.cfg config :</div><div>```</div><div><div>root@faiserv:/srv/tftp/fai/efi# cat grub.cfg</div><div>set menu_color_normal=white/black</div><div>set menu_color_highlight=black/light-gray</div><div>set timeout=5</div><div># for debug:</div><div>#set pager=1</div><div>set debug=all</div><div><br></div><div>insmod efi_gop</div><div>insmod efi_uga</div><div>if loadfont ${prefix}/unicode.pf2</div><div>then</div><div>    insmod gfxterm</div><div>    set gfxmode=auto</div><div>    set gfxpayload=keep</div><div>    terminal_output gfxterm</div><div>fi</div><div><br></div><div>menuentry "Install from FAI" {</div><div>     linux  vmlinuz-3.16.0-6-amd64 rw ip=dhcp root=/dev/nfs nfsroot=IP.IP.IP.IP:/srv/fai/nfsroot FAI_FLAGS=verbose,sshd,createvt,reboot FAI_ACTION=install server=faiserv.acme.ltd FAI_CONFIG_SRC=nfs://faiserv.acme.ltd/srv/fai/config</div><div>     initrd initrd.img-3.16.0-6-amd64</div><div>}</div></div><div><br></div><div>```</div><div><br></div><div><br></div><div>Any help would be greatly appreciated.</div><div><br></div><div>Thanks,</div><div>Rémy</div></div>