On Wed, Dec 12, 2007 at 11:15:34AM -0800, Dan Stromberg wrote:
So we're wanting to change our installs to use the same kernel, to see if we can get those RPM's added via the same mechanism we're using for most of our RPM's (in a post install chroot script), rather than needing to add them via an rc script.
I've done this. With SLES/SLED at least. To be as similar to the suse install as possible, I use the (already built) -default version of my updated kernel. Use rpm2cpio and cpio to dump files somewhere. Put vmlinuz in place for initial pxe boot. I then take the initrd from the installer and basically just replace the modules in there with copies of my kernel's modules. This is from a sles9-sp3 one, but the idea is the same: Changed <initrd>/modules link: modules -> lib/modules/2.6.16-override-default/initrd Note: We're doing a sles9-sp3 image with the kernel (and a few other needed bits like updated udev, mkinitrd, etc) built on top of sles9-sp3 form the sles10 src.rpm files. We also rev'd the kernel from 2.6.16.21-0.8 to 2.6.16.21-0.9 internally for readability.. the only changes we did were to add in the autofs5 patches. Differences in the <initrd>/lib/modules pathing: 2.6.16.21-0.9-default 2.6.16.21-override-default -> 2.6.16-override-default 2.6.16-override-default 2.6.5-override-default -> 2.6.16-override-default You don't have to do it this way, but I did links so that I could just copy over a modules.dep file, example of ata_piix module: $ ls -l 2.6.16-override-default/initrd/ata_piix.ko lrwxrwxrwx 1 root bin 59 2007-06-11 15:08 2.6.16-override-default/initrd/ata_piix.ko -> ../../2.6.16.21-0.9-default/kernel/drivers/scsi/ata_piix.ko
From modules.dep (used one from above kernel rpm): $ grep ata_piix 2.6.16.21-0.9-default/modules.dep /lib/modules/2.6.16.21-0.9-default/kernel/drivers/scsi/ata_piix.ko: /lib/modules/2.6.16.21-0.9-default/kernel/drivers/scsi/libata.ko /lib/modules/2.6.16.21-0.9-default/kernel/drivers/scsi/scsi_mod.ko
Basically I copied over the /lib/modules/2.6.16.21-0.9-default path into the initrd, then made the links via: $ cd <initrd>/lib/modules/2.6.16-override-default/initrd $ find ../../2.6.16.21-0.9-default -type f -name \*.ko -exec ln -s {} . \; I just checked and I never did anything to the modules in the root file (in the install source "boot" path) so I think it used everything from the initrd since I dumped them all in there. Now our installs use this updated kernel, and install the same updated kernel (and rpms that rely on it, like openafs) from my updates repository. -- Mike Marion-Unix SysAdmin/Staff IT Engineer-http://www.qualcomm.com Homer: I'm here to deliver a package to Marge Simpson.....! Guy: Where's the package? Homer: [looks from side to side]........dammit! -- To unsubscribe, e-mail: opensuse-autoinstall+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-autoinstall+help@opensuse.org