一个检查并自动安装Oralce所需rpm的shell脚本


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

使用这个脚本只需3步:

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

  1. #!/bin/bash  
  2.   
  3. if [ $# -ne 1 ]; then  
  4.   echo "Usage: $0 rpmlist"  
  5.   exit 1  
  6. fi  
  7.   
  8. RPMLIST=$1  
  9. ERRFILE=~/rpminst`date +%Y%m%d%H%m%S`.err  
  10. for pkg in `cat $RPMLIST`  
  11. do  
  12.   rpm -qa | grep $pkg &>/dev/null  
  13.   if [ $? -ne 0 ]; then  
  14.     echo $pkg is not installed yet, starting to install...  
  15.     rpm -Uvh $pkg* 2>>$ERRFILE  
  16.   else  
  17.     echo $pkg already installed.  
  18.   fi  
  19. done  

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

  1. binutils-2.17.50.0.6  
  2. compat-libstdc++-33-3.2.3  
  3. elfutils-libelf-0.125  
  4. elfutils-libelf-devel-0.125  
  5. elfutils-libelf-devel-static-0.125  
  6. gcc-4.1.2  
  7. gcc-c++-4.1.2  
  8. glibc-2.5-24  
  9. glibc-common-2.5  
  10. glibc-devel-2.5  
  11. glibc-headers-2.5  
  12. kernel-headers-2.6.18  
  13. ksh-20060214  
  14. libaio-0.3.106  
  15. libaio-devel-0.3.106  
  16. libgcc-4.1.2  
  17. libgomp-4.1.2  
  18. libstdc++-4.1.2  
  19. libstdc++-devel-4.1.2  
  20. make-3.81  
  21. sysstat-7.0.2  
  22. unixODBC-2.2.11  
  23. unixODBC-devel-2.2.11  

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

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

  1. ~/orarpm.sh ~/pkg.lst  

相关内容