In our lab we have a set of scripts that automatically configure a kickstart installation for RHEL5 on HP ProLiant DL380p Gen8. Based on data from several configuration files, it does the following steps:

  1. mounts redhat dvd
  2. modifies isolinux.cfg accordingly
  3. creates ks.cfg
  4. creates a bootdisk with the installation data (isolinux.cfg, ks.cfg, etc)
  5. creates a http server with the bootdisk directory.
  6. mounts the bootdisk through ILO (/dev/scd1)
  7. installs RHEL5

Here is the line referring to the kickstart file location :

append initrd=initrd.img ks=hd:scd1:/isolinux/ks.cfg ksdevice=eth4

Everything works well for RHEL5, but there have been requests for RHEL6.

For RHEL6, everything seems to work OK until #7, where it returns the message "unable to download kickstart file". I have commented some lines in the scripts, eliminating the installation part and leaving only the ILO mount part.

The bootdisk is mounted and accessible on /dev/scd1. The ks.cfg file is present there. I have also tested and the files from the Kickstart server are accessible with wget.

I have also tried accessing the ks.cfg file through http :

append initrd=initrd.img ks=http://<ip>:<port>/boot/isolinux/ks.cfg ksdevice=eth4

The above part did not work.

But what really vexes me is that RHEL5 works in the same conditions, but RHEL6 does not.

  • Does ks.cfg have a different structure?
  • Is the location of the ks.cfg file declared different from "hd:scd1:/isolinux/ks.cfg" on RHEL6?
  • It seems strange that isolinux.cfg and ks.cfg are both present on the bootdisk, but only isolinux.cfg can be accessed.

I have been talking to redhat support for a week and they don't seem to know what is wrong.

Any help would be greatly appreciated.

  • There were random syntax changes made to the ks.cfg, so some fiddling will likely be required to move from RHEL5 to RHEL6. Your issue sounds more network related, though, is the device really eth4 or is RHEL6 instead generating some new device name for that NIC? – thrig Nov 9 '15 at 15:27
  • It is still eth4. Unless rhel replaces "scd1" with something else. I can confirm that the bootdisk is mounted, so it should not be a network problem at this point. Thank you for your response – robertpas Nov 9 '15 at 15:33
  • I was investigating an unrelated ks issue here yesterday, and I noticed that there were examples using ks=cdrom:/ks.cfg, perhaps that'll work. – wurtel Nov 10 '15 at 9:08
  • I have already tried using cdrom. The problem is that I have one physical cdrom (scd0) and the mounted image (scd1). Thank you for your response – robertpas Nov 10 '15 at 11:57
up vote 0 down vote accepted

I have figured out the problem.

There seems to be a difference between RHEL5 and RHEL6 at the installation level.

RHEL5 will detect your physical cdrom and mount it on /dev/scd0, therefore the location of the mount will be /dev/scd1. RHEL6 does not seem to do this, therefore the mount location will be /dev/scd0.

The correct way to declare the ks file location in a case like this is :

append initrd=initrd.img ks=hd:scd0:/isolinux/ks.cfg ksdevice=eth4

I hope someone will find this helpful in the future.

  • (you can also put the kickstart on the network) – ewwhite Mar 10 '16 at 16:46

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.