温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

AIX系统学习之-CRS安装后校验

发布时间:2020-07-02 22:38:07 来源:网络 阅读:941 作者:客居天涯 栏目:关系型数据库

AIX系统学习之-CRS安装后校验


系统环境:

操作系统:AIX 5.3.8

Oracle:  Oracle 10gR2

案例分析

在构建RAC时,安装完CRS需要做安装后的校验,在执行校验工具cluvfy时出现以下错误:

[root@aix230:/u01/soft/Disk1/cluvfy]#crs_stat -t

Name           Type           Target    State     Host        
------------------------------------------------------------
ora.aix229.gsd application    ONLINE    ONLINE    aix229      
ora.aix229.ons application    ONLINE    ONLINE    aix229      
ora.aix229.vip application    ONLINE    ONLINE    aix229      
ora.aix230.gsd application    ONLINE    ONLINE    aix230      
ora.aix230.ons application    ONLINE    ONLINE    aix230      
ora.aix230.vip application    ONLINE    ONLINE    aix230

[root@aix230:/u01/soft/Disk1]#ls -l

total 56

drwxr-xr-x    7 oracle   dba             512 Oct 16 18:42 cluvfy
drwxr-xr-x    4 oracle   dba             512 Oct 16 13:35 install
drwxr-xr-x    2 oracle   dba             512 Oct 16 13:35 response
drwxr-xr-x    3 oracle   dba             512 Oct 16 13:35 rootpre
-rwxr-xr-x    1 oracle   dba            2602 Aug 20 2005  runInstaller
drwxr-xr-x    9 oracle   dba            3072 Oct 16 13:35 stage
drwxr-xr-x    2 oracle   dba             512 Oct 16 13:35 upgrade

[root@aix230:/u01/soft/Disk1/cluvfy]#/u01/soft/Disk1/cluvfy/runcluvfy.sh -h

The unzip of archive file /u01/soft/Disk1/cluvfy/jrepack.zip failed


查看目录权限:

[root@aix230:/u01/soft/Disk1/cluvfy]#ls -ld /u01
drwxr-sr-x    6 oracle   dba             512 Oct 16 13:43 /u01

[root@aix230:/u01/soft/Disk1/cluvfy]#ls -l
total 118384
drwxrwxr-x    3 oracle   dba            2048 Oct 16 18:42 bin
drwxr-xr-x    5 root     system          512 Jul 16 2005  cv
-rwxr-xr-x    1 oracle   dba        21378978 Aug 20 2005  cvupack.zip
drwxrwxr-x    2 root     system          512 Aug 16 2005  jlib
-rwxrwxrwx    1 oracle   dba        39203424 Aug 20 2005  jrepack.zip
drwxrwxr-x   10 oracle   dba            3072 Oct 16 18:42 lib
drwxrwxr-x    2 root     system          512 Jul 19 2005  lib32
-rwxr-xr-x    1 oracle   dba            3107 Aug 20 2005  runcluvfy.sh

修改可执行脚本权限:

[root@aix230:/u01/soft/Disk1/cluvfy]#chmod 777 runcluvfy.sh 

仍然失败,看来不是权限的问题:

[root@aix230:/u01/soft/Disk1/cluvfy]#./runcluvfy.sh 

The unzip of archive file ./jrepack.zip failed


查看可执行脚本的内容,发现秘密AIX系统学习之-CRS安装后校验

[root@aix230:/u01/soft/Disk1/cluvfy]#cat runcluvfy.sh 

#!/bin/sh
#
# This script sets up the environment for invocation of cluster verification 
# tool (cluvfy), unpacks the archive (cluvfy.zip)  for the verification 
# framework software, executes the requested verification command, and cleans
# up the space occupied by the unpacked verification software.
# 
# Usage: cluvfy.sh <cluvfy command options>
TMPDIR=/tmp
ECHO=/bin/echo
RM=/bin/rm
MKDIR=/bin/mkdir
case `/bin/uname` in
Linux) UNZIP=/usr/bin/unzip
       DIRNAME=/usr/bin/dirname
      ;;
HP-UX) UNZIP=/usr/bin/unzip
       DIRNAME=/bin/dirname
      ;;
SunOS) UNZIP=/usr/bin/unzip
       DIRNAME=/bin/dirname
      ;;
AIX)   
       DIRNAME=/bin/dirname
       UNZIP=/usr/bin/unzip
       if [ -f $UNZIP ]
           then
           UNZIP=/usr/bin/unzip
       else
           UNZIP=/usr/local/bin/unzip
       fi
      ;;
OSF1)  UNZIP=/usr/bin/unzip
       DIRNAME=/usr/bin/dirname
      ;;
*)     $ECHO "ERROR: Unknown Operating system"
      exit -1;
      ;;
esac
EXEC_DIR=`$DIRNAME $0`
CVUZIP_FILE=$EXEC_DIR/cvupack.zip
JREZIP_FILE=$EXEC_DIR/jrepack.zip
# Setup CV_HOME environment variable for cluvfy 
# This variable points to the home for cluster verification software.
# If not set by the caller of this script, it points (by default) 
# to temporary directory
if [ "X$CV_HOME" = "X" ]
then
  CV_HOME=$TMPDIR/$$
else
  CV_HOME=$CV_HOME/$$
fi
$RM -rf $CV_HOME
$MKDIR -p $CV_HOME
export CV_HOME
# Setup CV_JDKHOME environment variable for cluvfy 
# This variable points to the java package required by cluster verification
# framework 
# If this varible isn't set by the caller of this script, the jrepack.zip
# archive is unpacked in $CV_HOME/jre directory and this directory is set in
# CV_JDKHOME
if [ "X$CV_JDKHOME" = "X" ]
then
  if [ ! -f $JREZIP_FILE ]; then
    $ECHO "\"$JREZIP_FILE\" does not exist." 
    $ECHO "ERROR. Either CV_JDKHOME environment variable should be set"
    $ECHO "       or $JREZIP_FILE should exist."
    exit 1
  else
    $UNZIP -o $JREZIP_FILE -d $CV_HOME/jre >/dev/null 2>&1
    EXEC_STATUS=$?
    if [ $EXEC_STATUS != "0" ]; then
       $ECHO The unzip of archive file $JREZIP_FILE failed
       exit 1
    fi
    CV_JDKHOME=$CV_HOME/jre
    export CV_JDKHOME
  fi
fi
# Setup CV_DESTLOC environment variable for cluvfy 
# This variable points to a directory on each (remote as well as local) node
# that is writable. The cluster verifcation tool will copy the required 
# software bits (on need basis) to this directory.
# If not set by the caller of this script, it points (by default) 
# to temporary directory
if [ "X$CV_DESTLOC" = "X" ]
then
  CV_DESTLOC=$TMPDIR
fi
export CV_DESTLOC
# Unpack the cluster verification software archive on its home
$UNZIP -o $CVUZIP_FILE -d $CV_HOME >/dev/null 2>&1
EXEC_STATUS=$?
if [ $EXEC_STATUS != "0" ]; then
   $ECHO The unzip of archive file $CVUZIP_FILE failed
   exit 1
fi
# Execute the requested cluster verification command
${CV_HOME}/bin/cluvfy "$@"
EXEC_STATUS=$?
# Cleanup the home for cluster verification software
$RM -rf $CV_HOME
# Return the status of executed cluster verification command 
exit $EXEC_STATUS

从以上内容:

AIX)   
       DIRNAME=/bin/dirname
       UNZIP=/usr/bin/unzip

可以看到,在执行脚本时需要执行“unzip”,执行路径为“/usr/bin/unzip"


查看本机unzip可执行文件位置:

[root@aix230:/u01/soft/Disk1/cluvfy]#which unzip

/u01/crs_1/bin/unzip

竟然不在"/usr/bin"下


拷贝unzip到"/usr/bin"下

[root@aix230:/u01/soft/Disk1/cluvfy]#cp /u01/crs_1/bin/unzip /usr/bin

[root@aix230:/u01/soft/Disk1/cluvfy]#which unzip
/usr/bin/unzip

然后执行:

[root@aix230:/u01/soft/Disk1/cluvfy]#/u01/soft/Disk1/cluvfy/runcluvfy.sh -h

USAGE:
cluvfy [ -help ]
cluvfy stage { -list | -help }
cluvfy stage {-pre|-post} <stage-name> <stage-specific options>  [-verbose]
cluvfy comp  { -list | -help }
cluvfy comp  <component-name> <component-specific options>  [-verbose]

@至此,问题得以解决!!!




向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI