Pxeboot not working

Trying to run some kickstart install tests and I can’t get pxeboot to work. Keep running into:

invalid or corrupt kernel image

I’ve setup pxe to match the CentOS 7 & 8 pxeboot setups on my dhcpd server and can’t seen anything obviously wrong or missing.

Is this supposed to be working now or shoulld I be waiting on some update to come?

I can attest that pxeboot is working on my end, from the Rocky 8.3 RC1 images. I’ve set up local install repos, and have run at least 7 full kick-start rebuilds successfully. (Using VMs on VMware 6.7)

In my case, I was able to simply make a few path changes to my existing CentOS8 build configs to point to the new Rocky boot files, tweak the kickstart file to use the new URL, and it worked 100% 1st time. (Refreshing!)

The big thing to make sure is that your pxeboot kernel files on your tftp server are from the correct build/image. I’ve seen a similar error message when I botched my copies in past releases/tests.

I concur…
I have performed a ‘bare metal’ installation of Rocky 8.4rc1 via PXE to initiate Kickstart with NFS-based media and YUM repos.
Most issues have to do with updating the process from EL7.9 to EL8.4 ‘peculiarities’…

(as soon as ‘this board’ permits me, I’ll provide more details and pictures)

I just performed a network install [minimal] using the latest 8.4 RC1 pxe install using the same Kickstart script from my CentOS 8.4/CentOS Stream [of course updated the file to use the Rocky Repo] and I noticed some issues when using my kickstart file. For example, I explicitly install wget in my kickstart file but it’s not included once the system starts up for the first time. Snippet of my kickstart file

url --url=http://download.rockylinux.org/pub/rocky/8.4/BaseOS/x86_64/os/

%packages --ignoremissing --excludedocs
@Core
dracut-config-generic
dracut-fips
dracut-fips-aesni
fipscheck
wget
curl
qemu-guest-agent
net-tools
nano
# unnecessary firmware
-alsa*firmware*
-iwl*firmware
-ivtv*
-plymouth
-aic94xx-firmware
-atmel-firmware
-b43-openfwwf
-bfa-firmware
-ipw*-firmware
-libertas-usb8388-firmware
-ql*-firmware
-rt61pci-firmware
-rt73usb-firmware
-xorg-x11-drv-ati-firmware
-zd1211-firmware
%end

The weird part is after the kickstart installation, I run ‘yum install -y wget’, it installs without any issue. Why didn’t it install during the kickstart installation?

@boris,
The URL you are using appears to be an extract of Rocky-8.4-x86_64-minimal.iso. It does not contain the wget package. After the install, when you are running yum, you are presumably pulling packages from a full repository.
Would you consider downloading the full ISO and exacting it to a local web server or NFS share?
-crj

I even switched to the boot.iso and still has the SAME issue. Because I use the URL for getting all the apps from the server (url --url=http://download.rockylinux.org/pub/rocky/8.4/BaseOS/x86_64/os/), it should be downloading wget directly from the source repo. I do not have this issue with CentOS 8 or CentOS Stream where I specify the source repo url in my kickstart file that it finds wget and automatically installs it.

I however just noticed that the wget package in Rocky Linux is stored in the ‘appstream’ and not the BaseOS. I wonder why it’s different.

In CentOS 8.4 wget also comes from the AppStream repository

Based on what I saw earlier, I added to my kickstart script the AppStream repo

repo --name="AppStream" --baseurl="http://download.rockylinux.org/pub/rocky/8.4/AppStream/x86_64/os/"

and now it installs wget into my installed server. I have never had to do it with my CentOS 8 or CentOS Stream boot iso’s using kickstart. I wonder if their ISO automatically adds the appstream on top of the base.

I am ok with adding the appstream to my kickstart file if that will make it work.

Glad you got it working.

I tested the addition of the “wget” RPM in the ‘package list’ within the host-config file, to see if ‘it’ would be located and installed using the NFS-mounted distribution, and apparently, since it’s designated by the ‘parent directory’ of both the BaseOS and AppStream directory trees, it ‘did’ install…
nfs --server=nfs-linuxbuild --opts=ro,nolock --dir=/export/software/linux/kickstart/dists/rocky-8.4-x86_64

Such that, the additional YUM ‘repo’ designations weren’t required…