As part of my quest to convert my work to Linux I have slowly been updating our servers. One of them is an old Compaq Proliant ML530. It used to be a Windows Domain Controller, but now it will be converted to run VMware Server and a couple of machines on there for development.
The install went perfectly using a 5.1 Breezy Badger Disc. That was until the reboot at the end. The system hung whilst booting the Kernel. After a bit of Googling I found that the issue was a special kernel module needs to be loaded up for the Compaq Array at boot, but its not in the default kernel image. So a bit of Command Line trickery is required. Firstly you need to get a command line though, either using something like Damn Small Linux or rescue mode of the Ubuntu disc. Once you get a shell you need to mount the disc mine was /dev/ida/c0d0p1 and chroot into it. Make a back up of your existing kernel image initrd.img if one exists by that name.
The /etc/modules file needs cpqarray added. Then the following command needs to be executed in a shell:
/usr/sbin/mkinitramfs -o /boot/initrd.img /lib/modules/your-kernel-version
This will take a while as the image is rebuilt. The resulting initrd.img file should be larger than the orginal, easily checked using ls -l. Now you need to check that the image file name is the same as that in the menu.lst grub file. Adjust it if necessary, then you should be good to go.
I rebooted and it finally came up after a short delay. Into my next problem which was X didn’t autoconfigure properly, but that was more due to the KVM switch we use not reporting the monitor correctly. Slight bit of xorg.conf hacking required and then everything was fine.