Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am trying to add additional automation to our existing RHEL 6 (or Oralce's implementation thereof) PXE install process by running a script in the %pre section of my kickstart config that call hpacucli, HP's raid device configuration binary.

My approach has been to modify the PXE served initrd.img. I've unpacked the initrd.img and copied in the required libraries, binaries, and scripts but when the system boots using the modified initrd.img, the modified /lib (and /lib_64) are moved aside to /lib_old and /lib is linked to the /mnt/runtime/lib. How can I change this configuration so that the /lib is not moved (unlikely) or required libraries are available in the runtime /mnt/runtime/lib?

To test and confirm this I've been able to get the install process to move to the 6th virtual console, which allows me to see errors, and then open a shell (a useful debugging mechanism).

exec  /dev/tty6 2> /dev/tty6
chvt 6

share|improve this question
up vote 2 down vote accepted

After several tries, I stopped looking to google or documentation I could not vouch for and started reading logs, which brought me to the solution.

In the PXE install process, the initrd.img bootstraps the process, anaconda consults the kickstart script, pulls down the install image, starts 'stage2' and mounts the fetched install.img on /mnt/runtime, which moves lib, lib_64, and usr aside and links in the corresponding directories in /mnt/runtime, and then launches the now local /usr/bin/anaconda. This is evident in the /tmp/anaconda.log which I could reach in my paused install process, outlined above.

I solved my problem by updating the install.img with the libraries I needed. This means the entire process requires modifying two images, the intitrd.img for the scripts, directories, and binaries that I needed to make hpacucli work, and the install.img to add the libraries to the lib that would exist after the install.img was mounted. I am sure there are other solutions, this seemed the least intrusive.

If there are other hpacucli pre-install users out there looking for answers, I can post the entire setup.

share|improve this answer
If you could post the setup someplace, I'd really appreciate it! I'm running into the same issue. It seems /usr/bin and /usr/sbin are moved aside as well, so I'm thinking I have to add it to the install.img and NOT the initrd. – user130641 Aug 1 '12 at 22:09

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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