Rocky Linux 9 (USB Based Kickstart) Failing - Unknown Network Kickstart URL

I’m having a bit of trouble with a Rocky Linux 9 Kickstart file.
Error
dracut-initqueue[xxxx]: Warning: unknown network kickstart URL: hd:ROCKY9-INST:/isolinux/kickstart.cfg

Steps I’m taking

  1. Fetch the latest ISO from Rocky’s Download URL (Rocky-9.2-x86_64-dvd.iso)
  2. Copy it’s contents into a working dir so i can update it’s files slightly.
    1. Add a isolinux/kickstart.cfg
    2. Update isolinux/isolinux.cfg to point to kickstart file if option is selected
  3. Rebuild the new iso i plan to use to either a DVD or or USB Drive.
  4. Getting the following (for several pages):
    • dracut-initqueue[xxxx]: Warning: unknown network kickstart URL: hd:ROCKY9-INST:/isolinux/kickstart.cfg
  5. Eventually i get to a debug prompt after an Anaconda installer errors end message with Could not boot.

So some more details to help out:

  1. This isolinux/isolinux.cfg entry updated was:
    label workstation
      menu label ^Install Rocky Linux 9.2 (Custom)
      kernel vmlinuz
      append initrd=initrd.img inst.stage2=hd:LABEL=ROCKY9-INST inst.repo=hd:ROCKY9-INST:/ inst.ks=hd:ROCKY9-INST:/isolinux/kickstart.cfg nompath ip=192.168.1.2::192.168.1.1:255.255.255.0:myhostname:enp0s3:none acpi=off
    
    Some justification:

The other thing i can share is my kickstart (just doing a basic one right now - likely missing lots of stuff). But i’m not to bothered as I can’t even get to this file yet. Still stuck in the isolinux conundrum above :slightly_frowning_face:

# System Language UTF-8
lang en_US.UTF-8

# Keyboard Configuration
keyboard --vckeymap=us --xlayouts='us'

# Firewall
firewall --enabled --ssh --http

# Bootloader
# consoleblank=0 disables virtual console from blanking
bootloader --location=mbr --append="consoleblank=0 rhgb quiet crashkernel=auto"

# Logging
logging --level=info

# Root password
rootpw --iscrypted <redacted>

# User admin
user --groups=wheel,users --name=admin --password=<redacted>. --iscrypted --gecos="Account"

#System authorization infomation
auth --useshadow --passalgo=sha512

#SELinux Configuration
selinux --permissive

#Disable First Boot Startup
firstboot --disable

# Accept End User License Agreement
eula --agreed

# UTC Time
# To see all timezones, type: timedatectl list-timezones
# --utc the system is assumed to be synced to UTC
timezone UTC --utc

%addon com_redhat_kdump --disable

%end

Any advice on making a USB/CD based kickstart with Rocky Linux 9 would be most appreciated. I would love to know what i’m doing wrong! :rocket: :pray:

My recommendation for you is to use mkksiso instead to add your kickstart. That command also lets you add your own kernel options if you so wish using -c. And then you can write the ISO to the USB using one of the recommended tools.

If you insist on making changes manually, there are specific steps you have to take to rebuild it for it to work properly. You should not be changing the label for stage2 unless you’ve generated your very own stage2 image (which requires knowledge of lorax). I would look at this post to see how we make our initial images. It’s a very specific process, and thus it is why I recommend that you use mkksiso.

Thank you @nazunalika for such a fast response!

I would like to do it the custom way if possible; I prefer to know how things work then to use magic boxes with open tickets against it. You seem to be the ideal person i can ask! :rocket: :slightly_smiling_face:

It is my understanding that to add a inst.ks I also need an inst.stage2 to align the mappings through the LABEL entry? I’m basing this off of this guys report here which I understand may not be accurate…

I tried setting up the Volume Id as you suggested:

# Extrapolate the label from the source:
isoinfo -d -i Rocky-9.2-x86_64-dvd.iso | sed -n 's/Volume id: //p'
# Rocky-9-2-x86_64-dvd
cd /root/of/dvd
mkisofs -V "Rocky-9-2-x86_64-dvd" \
      -U \
      -r \
      -v \
      -T \
      -J \
      -joliet-long \
      -A "Rocky-9-2-x86_64-dvd" \
      -b "isolinux/isolinux.bin" \
      -c "isolinux/boot.cat" \
      -no-emul-boot \
      -boot-load-size 4 \
      -boot-info-table \
      -o "/path/to/output.iso" \
      .
# implant md5
implantisomd5 "/path/to/output.iso"

The above still produces the same error:

Thoughts?

Edit: I got a bit further; I poorly defined the LABEL reference in the isolinux.cfg file. This appears to have fixed it:

inst.stage2=hd:LABEL=Rocky-9-2-x86_64-dvd inst.repo=hd:LABEL=Rocky-9-2-x86_64-dvd:/ inst.ks=hd:LABEL=Rocky-9-2-x86_64-dvd:/isolinux/kickstart.cfg

The kickstart fails, but that’s okay, at least it’s being loaded (or appears to be) which is a lot further then i was before.

When I use mkksiso it takes a working ISO, adds the kickstart with proper modifications, and uses xorriso to finalize the ISO. This ISO also works.

As you’re doing this custom, I’m not sure how much I can further help. The only final thing I can suggest is to leave the kickstart in the root. Don’t put it in /isolinux.

append initrd=initrd.img inst.stage2=hd:LABEL=Rocky-9-2-x86_64-dvd inst.text quiet inst.ks=hd:LABEL=Rocky-9-2-x86_64-dvd:/rocky-9-efi.k
1 Like