OEL – Package Script

Use this script (apmall.sh) to update OEL5.3 with correct libraries.

I recommend you to start with this article to get R12 up and running.

Update the SOURCE environment variable with your source dir.

First try to run

$ ./rpmall.sh chk

to show what is missing and then install with:

$ ./rpmall.sh inst

But beware this script is flawed. I did change it a few times and you will have to as well.

#!/bin/bash
RPMDO=$1
SOURCE=/oracle/install/oel5.3
cd $SOURCE
rpmchk(){
if [ -z $2 ]
then
rpmname=”$1″
else
rpmname=”$1-$2″
fi
rpm –quiet -q $rpmname
if [ $? -eq 0 ]
then
echo “GOOD $rpmname installed”
else
rpm –quiet -q $1
if [ $? -eq 0 ]
then
echo “OK   $1 installed – different version”
else
cnt=`ls $rpmname*.rpm 2> /dev/null | wc -l`
if [ $cnt -gt 0 ]
then
getitfrom=`ls $rpmname*.rpm`
else
getitfrom=`grep “$rpmname” cdrom.[1-5]`
fi
echo “BAD  $1 not installed: in $getitfrom”
fi
fi
}
rpminst(){
rpmname=”$1″
rpm –quiet -q $rpmname
if [ $? -gt 0 ]
then
cnt=`ls $rpmname*.rpm 2> /dev/null | wc -l`
if [ $cnt -gt 0 ]
then
echo “Installing: $rpmname*.rpm”
rpm –nosignature -i $rpmname*.rpm
else
echo “Install file missing: $rpmname*.rpm”
fi
fi
}
rpmact(){
case “$RPMDO” in
chk)
rpmchk $1 $2
;;
inst)
rpminst $1 $2
;;
*)
echo “Bad argument – use inst, chk or all”
exit
;;
esac
}
#
#Field1: always “rmpact”
#Field2: package name (optionally add version if must exist)
#Field3: package version (minimum version)
#
#Next required by Openmotif
rpmact libXp 1.0.0-8.1.el5
#Following 3 downloaded from:
#
http://oss.oracle.com/projects/compat-oracle/files/Enterprise_Linux
rpmact openmotif21 2.1.30-11.EL5
rpmact xorg-x11-libs-compat 6.8.2-1.EL.33.0.1
rpmact binutils 2.17.50.0.6-6.0.1
#Requirements from Metalink:
rpmact compat-glibc 2.3.4-2.26
rpmact gcc 4.1.2-14.el5
rpmact gcc-c++ 4.1.2-14.el5
rpmact glibc 2.5-12
rpmact glibc-common 2.5-12
rpmact glibc-devel 2.5-12
rpmact libgcc 4.1.2-14.el5
rpmact libstdc++-devel 4.1.2-14.el5
rpmact libstdc++ 4.1.2-14.el5
rpmact make 3.81-1.1
rpmact gdbm 1.8.0-26.2.1
rpmact libXp 1.0.0-8.1.el5
rpmact libaio 0.3.106-3.2
rpmact libgomp 4.1.2-14.el5
rpmact compat-libstdc++-296-2.96-138
rpmact compat-libstdc++-33-3.2.3-61
#Following not in 5.3 discs
#rpmact sysstat 7.0.0-3.el5
#Following on disc 3
rpmact sysstat 7.0.2-3.el5.i386