I used this guide to setup my iPXE server: https://linuxhint.com/pxe_boot_ubuntu_server/
It is set up on a virtual Ubuntu (20.4.6) desktop system and, after some testing, it works perfectly for PXE booting and installing Ubuntu 22.4 and 20.4 on different client systems.
However, I can't get Debian (12.2.0) to work.
I downloaded the following full (3.7GB) iso:
https://cdimage.debian.org/debian-cd/current/amd64/iso-dvd/debian-12.2.0-amd64-DVD-1.iso
and extracted it to /os-images/debian-12.2.0-amd64
Then I edtited the boot.ipxe file and added a debian menu item:
:debian-12.2.0-amd64
set os_root os-images/debian-12.2.0-amd64
kernel tftp://${server_ip}/${os_root}/install.amd/vmlinuz
initrd tftp://${server_ip}/${os_root}/install.amd/initrd.gz
imgargs vmlinuz initrd=initrd.gz ip=dhcp root=${server_ip}:${root_path}/${os_root}
boot
Now it partly works:
On my client it boots into the selection menu.
When I choose the Debian installation it does start the debian installer.
It asks me 3 questions (language, country and keymap) which I answer with the defaults.
Then, after a short screen where it detects installation media, it waits a few seconds on a blue streen, and a notification appears:
[!!] Detect and mount installation media
So, it looks like the installer cannot find the debian media.
I tried a lot of different arguments in the imgargs
using google.
However, it seems I can't find the same system setup for the iPXE environment I have.
Most examples all use the netboot.tar.gz, or are examples with older Debian versions.
I'm not sure, but I think the examples I can find don't apply on the setup I have, because it is already booting from TFTP. Am I right about that?
I do like to install it from local media, because this network is intended to be disconnected from the internet. However, if it is too difficult, I will also be able to use remote media, as long as I can integrate it with the current (working) solution for the ubuntu installer.