[ANNOUNCE] Release of Dell OpenManage ServerAdministrator 5.0

Matt Domsch Matt_Domsch at dell.com
Tue Jun 13 22:47:19 CDT 2006


On Tue, Jun 13, 2006 at 09:30:37PM -0600, Michael Best wrote:
> 
> Back to the main thrust of my question (since I had the kernel-devel 
> pacakge installed on one system)...is there a way to package this for 
> systems that don't have development tools?

Yes.  Absolutely.  There are 2 solutions:
1) wait for the next scheduled Update of RHEL and Service Pack of
   SLES, which have the appropriate drivers in their kernel already,
   and distribute those out to your target systems.  You'll still need
   the openipmi driver package installed (it's Requires: by OMSA), but
   it won't be used if the kernel's version is already "good enough".

2) Use DKMS to roll your own driver RPM that includes precompiled
   modules for the kernels you want.  The package Dell posts has them
   precompiled for several kernels, though there are obviously many
   more kernels possible.


The gist is:
* install dkms, openipmi driver RPM, compilers, and target kernels on your build system
* use dkms build and dkms mkrpm commands to generate a new RPM that
  contains modules for your desired kernel list
* distribute that new RPM to your target systems, being sure to change
  the RPM 'release' field as found in the .spec file in the driver
  source dir so it's obvious that it's your own package.

I wrote little scripts to do the above step 2, but they're custom to
my environment, yet pretty easy to reproduce.  Here's a trimmed
example of what I do.  Salt to taste.

DKMS_PACKAGE_NAME=openipmi
DKMS_PACKAGE_VERSION=35.13.RHEL3

ARCHES[0]="ia32e"
KERNELS[0]="2.4.21-15.EL 2.4.21-37.EL"
FLAVORS[0]="up"

ARCHES[1]="i686"
KERNELS[1]="2.4.21-4.EL 2.4.21-37.EL"
FLAVORS[1]="up smp hugemem"

ARCH_X86_64=0
ARCH_I686=1

RPM_TARGETS=""
for MY_ARCH in 0 1; do
    for k in ${KERNELS[${MY_ARCH}]}; do
        for f in ${FLAVORS[${MY_ARCH}]}; do
            [ "$f" = "up" ] && f=""
            RPM_TARGETS="${RPM_TARGETS} -k ${k}${f} -a ${ARCHES[${MY_ARCH}]}"
	    dkms build -m ${DKMS_PACKAGE_NAME} \
                       -v ${DKMS_PACKAGE_VERSION} \
		       -k ${k}${f} -a ${ARCHES[${MY_ARCH}]}
        done
    done
done

dkms mkrpm -m ${DKMS_PACKAGE_NAME} -v ${DKMS_PACKAGE_VERSION} ${RPM_TARGETS}




-- 
Matt Domsch
Software Architect
Dell Linux Solutions linux.dell.com & www.dell.com/linux
Linux on Dell mailing lists @ http://lists.us.dell.com



More information about the Linux-PowerEdge mailing list