Mailinglist Archive: opensuse-autoinstall (46 mails)

< Previous Next >
Re: [opensuse-autoinstall] New kernel for installer yields... no install
  • From: Mike Marion <mmarion@xxxxxxxxxxxx>
  • Date: Wed, 12 Dec 2007 18:10:02 -0800
  • Message-id: <20071213021000.GG5869@xxxxxxxxxxxxxxxxxxxxxx>
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@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-autoinstall+help@xxxxxxxxxxxx

< Previous Next >
References