I know that this has been asked / covered numerous times but thus far, I have not been able to find a working solution to this. When I try to pxeboot a machine to try and install Ubuntu 20.04, it is able to get an IP address and display the pxeboot menu. After selecting the OS, it fails at the step where it downloads the iso with the error "Unable to find a live file system on the network" and drops to initramfs prompt. I can see that it is not able to identify the network card as "ip a" does not show the interface. The interface is a 10G Intel X710 card and I have checked another server using this same card and identified that the driver I need is i40e.ko.
I have tried:
- unpacking initrd, including i40e.ko from a working server, repacking
- unpacking initrd, including i40e.ko from a driver I downloaded from Intel, repacking
- unpacking initrd, including i40e.ko from an Ubuntu 22.04 iso and repacking. Although it ultimately fails, doing this actually gets me to the stage where the iso is downloaded and then it drops to initramfs prompt but I can actually see the interface when I issue "ip a"
Here are the steps I used to pack/repack (referencing another post https://askubuntu.com/questions/1435396/load-drivers-to-initrd)
mkdir expand
unmkinitramfs initrd expand/
copy driver to main/usr/lib/modules/<kernel version>/kernel/drivers/net/ethernet/intel/i40e/
cd expand/
pushd early && find . | cpio -o -H newc > ../myinitrd && popd
pushd early2 && find . | cpio -o -H newc >> ../myinitrd && popd
pushd main && find . | cpio -o -H newc | gzip >> ../myinitrd && popd