Making a new bootable initrd.img

Steven Hajducko Steven.Hajducko at DigitalInsight.com
Thu Nov 18 18:17:05 UTC 2004


Hi,

We currently are using PXE and RH3.0AS to kickstart our machines.  We
recently got a new version of our hardware ( HP DL360's ) that use a new
storage array.  When we tried to kickstart, it complained about the pcimap
and IRQ and IO mappings for the cciss.o ( the HP driver ) and wouldn't
proceed, saying it couldn't find any disks to install to.

Went to the HP website and found a new version of the driver that supports
the new array.  Unfortunately, that driver is only supported on kernel
versions 2.4.21-9 and 2.4.21-15.  The kernel version of the initrd.img we
use is 2.4.21-4.  We basically just copied the pxelinux initrd.img from the
install CDs.

Now, correct me if I'm wrong, but the correct procedure for updating the
driver in the initrd.img would be...

mv initrd.img initrd.img.gz
gzip -d initrd.img.gz
mount -o loop ./initrd.img /mnt/init
cp /mnt/init/modules/modules.cgz /tmp
cd /tmp
mv ./modules.cgz ./modules.gz
gzip -d ./modules.gz
cpio -idv < modules

So now I've got my exploded modules directory, 2.4.21-4.ELBOOT

I need to add the cciss.o driver to the 2.4.21-4.ELBOOT/i386 dir ( replacing
the old one ).  Once that's done...

cd /tmp
find ./2.4.21-4.ELBOOT -print > /tmp/filelist
cpio -o -H crc < filelist > modules.cpio
gzip --best --no-name modules.cpio
mv modules.cpio modules.cgz
mv modules.cgz /mnt/init/modules
umount /mnt/init
gzip --best --no-name initrd.img
mv initrd.img.gz initrd.img

So if that process isn't wrong, I can ask my question.  How do I make a new
bootable initrd.img off of a kernel that I'm not running?  The machine that
we PXE and kickstart off is at 2.4.21-20.ELsmp and we don't want to
downgrade to 2.4.21-9 or 2.4.21-15.  I suppose I could install them as a
separate kernel and just reboot off of that when I need to.  So I guess I
should rephrase my question.

How do I make a bootable initrd.img usable by PXE?

Thanks.

sh




More information about the Kickstart-list mailing list