GRUB2 kann das
https://wiki.ubuntu.com/UEFI/SecureBoot/PXE-IPv6?action=show&redirect=UEFI%2FSecureBoot-PXE-IPv6
https://sylbek.de/pxe-boot-server/pxe-server-computer-boot-via-uefi-netzwerk
Holen der Dateien:
wget -v http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/uefi/grub2-amd64/current/grubnetx64.efi.signed wget -v http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/netboot.tar.gz wget -v http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/mini.iso
apt install grub-efi-amd64-bin grub-mkimage --format=x86_64-efi --output=./grubnetx64.efi.signed --memdisk=./mini.iso `ls /usr/lib/grub/x86_64-efi | sed -n 's/\.mod//gp'`
trage das oben erzeugte efi-image in die DHCP-Server config ein:
class "UEFI-64-1" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00007"; filename "grub/grubnetx64.efi.signed"; } class "UEFI-64-2" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00008"; filename "grub/grubnetx64.efi.signed"; } class "UEFI-64-3" { match if substring(option vendor-class-identifier, 0, 20) = "PXEClient:Arch:00009"; filename "grub/grubnetx64.efi.signed"; }
iPXE kann das auch:
- Voraussetzungen:
gcc (version 3 or later) binutils (version 2.18 or later) make perl liblzma or xz header files mtools mkisofs (needed only for building .iso images) syslinux (for isolinux, needed only for building .iso images)
- Source Code besorgen:
git clone git://git.ipxe.org/ipxe.git
- http://git.ipxe.org/releases/wimboot/wimboot-latest.zip
- übersetzen:
cd ipxe/src make
- chain.ipxe erstellen:
#!ipxe dhcp chain http://192.168.10.4/boot.ipxe
- EFI-executable erstellen:
make bin-i386-efi/ipxe.efi EMBED=chain.ipxe make bin-x86_64-efi/ipxe.efi EMBED=chain.ipxe