在linux上装oralce时,先要检查一对rpm有没有安装,如果每次都一个一个地去检查,会很麻烦,于是做了一个脚本简化一下。


使用这个脚本只需3步:

1)将如下shell脚本另存为orarpm.sh,本文将该文件放在home目录下:

#!/bin/bash

if [ $# -ne 1 ]; then
echo "Usage: $0 rpmlist"
exit 1
fi

RPMLIST=$1
ERRFILE=~/rpminst`date +%Y%m%d%H%m%S`.err
for pkg in `cat $RPMLIST`
do
rpm -qa | grep $pkg &>/dev/null
if [ $? -ne 0 ]; then
echo $pkg is not installed yet, starting to install...
rpm -Uvh $pkg* 2>>$ERRFILE
else
echo $pkg already installed.
fi
done

2)在oracle的安装文档中找到需要检查的rpm列表,复制下来存成一个文件,这里我使用pkg.lst:

binutils-2.17.50.0.6compat-libstdc++-33-3.2.3
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
elfutils-libelf-devel-static-0.125
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-24
glibc-common-2.5
glibc-devel-2.5
glibc-headers-2.5
kernel-headers-2.6.18
ksh-20060214
libaio-0.3.106
libaio-devel-0.3.106
libgcc-4.1.2
libgomp-4.1.2
libstdc++-4.1.2
libstdc++-devel-4.1.2
make-3.81
sysstat-7.0.2
unixODBC-2.2.11
unixODBC-devel-2.2.11

3)切换到光盘的RPM目录,执行如下命令,即可自动检查并安装RPM包。

对于脚本没能自动安装成功的包,只需在脚本执行完成后到home目录检查rpminst*.err文件,再手动安装失败包即可。


~/orarpm.sh ~/pkg.lst