On 9/23/23 15:17, Alex King wrote:
I need to do a EFI network (boot and) install, and I'm wondering if
this file (bootnetx64.efi) can help me. But there is no documentation
on it (except the suggestion in the install manual
https://www.debian.org/releases/stable/amd64/ch04s05.en.html#dhcpd
"specify a boot loader appropriate for UEFI machines, for example...")
There are quite a few moving parts required to make this work.
My problem is this: I can UEFI netboot using grubx64.efi. However, it
loads a standard grub.cfg which runs an interactive installer. I need
to preseed the install, and I need to load a different preseed file
for each server booted.
Yep, a custom grub.cfg file is needed.
For non-uefi this is achieved using pxelinux's behaviour of tftp-ing a
configuration based on MAC addresses etc. and fallback to a standard
location.
I'm wondering if grubx64.efi or bootnetx64.efi support similar
behaviour? Or else how to get specific information into the installer
(such as IP address and hostname), if not via specific pre-seed files
per machine?
there are some settings in the dnsmasq config file to make some of this
selection happen
(We can overwrite the grub.cfg each time with the needs of a specific
server, but this is not ideal, as it will cause a failure if more than
one machine is being net-installed at the same time.)
In general though I'm also looking for pointers to documentation. If
someone could point to anything that explains what bootnetx64.efi is
and what it does, I'd be happy to contribute that back to the wiki or
install manual.
For me, building a preseeded machine with efi boot became a complicated
affair involving grub config options, pxelinux options, dnsmasq, tftp,
partman, and various preseed files and options. I ended up coding all
this into a large series of saltstack based state files to handle
building the related service files and automatically updating everything
as machines were added to the operation.
If you can read salt state files, I could see about showing my
repository, and you could derive whatever you can from it.
Raymond Burkholder
https://blog.raymond.burkholder.net/