Provide setup files for EFI boot in netboot package
authorMichael Prokop <mika@grml.org>
Fri, 17 Jul 2020 22:19:12 +0000 (00:19 +0200)
committerMichael Prokop <mika@grml.org>
Sat, 18 Jul 2020 20:01:23 +0000 (22:01 +0200)
The shim + grubnetx64 files need to be available via tftp,
using for example a dhcpd configuration which includes:

| # UEFI boot with DHCPv4
| option architecture-type code 93 = unsigned integer 16;
|
| subnet 10.42.42.0 netmask 255.255.255.0 {
|   next-server 10.42.42.2;
|   range 10.42.42.100 10.42.42.200;
|
|   class "pxeclients" {
|     match if substring (option vendor-class-identifier, 0 ,9) = "PXEClient";
|     if option architecture-type = 00:07 {
|       filename "shim.efi";
|     } else {
|       filename "pxelinux.0";
|     }
|   }
| }

... or a dnsmasq configuration which includes:

| domain-needed
| bogus-priv
| expand-hosts
| domain=foobar.example.org
| dhcp-range=10.42.42.100,10.42.42.200,6h
| dhcp-option=1,255.255.255.0  # subnet mask
| dhcp-option=3,10.42.42.1     # default gateway
| dhcp-option=6,10.42.42.2     # domain name server
| dhcp-option=28,10.42.42.255  # broadcast address
| dhcp-option=42,10.42.1.3     # timeserver preference
| dhcp-option=252,"\n"         # proxy config
| dhcp-match=BIOS,option:client-arch,0
| dhcp-boot=tag:BIOS,pxelinux.0
| dhcp-match=UEFI,option:client-arch,7
| dhcp-match=UEFI,option:client-arch,9
| dhcp-boot=tag:UEFI,shim.efi
| dhcp-leasefile=/var/lib/misc/dnsmasq.leases
| dhcp-authoritative

or quoting from  https://wiki.ubuntu.com/UEFI/SecureBoot/PXE-IPv6:

| dhcp-boot=pxelinux.0
| dhcp-match=set:efi-x86_64,option:client-arch,7
| dhcp-boot=tag:efi-x86_64,bootx64.efi

Then EFI boot via PXE with GRUB is supposed to work fine,
while pxelinux provides PXE boot for BIOS based systems.

This is related to the EFI boot support within grml-terminalserver,
see commit 3154dc (`Support UEFI PXE boot with DHCPv4`).

This work was funded by Grml-Forensic.


No differences found