java crs校验_AIX系统学习之-CRS安装后校验

在构建RAC时,AIX系统安装完CRS后执行校验工具cluvfy时遇到错误,提示unzip档案失败。通过检查目录权限、脚本权限并未解决问题。分析runcluvfy.sh脚本后发现,cluvfy脚本依赖的unzip位于'/u01/crs_1/bin/unzip',而非预期的'/usr/bin/unzip'。将unzip复制到'/usr/bin'下后,问题得到解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

系统环境:

操作系统:AIX 5.3.8

Oracle:  Oracle 10gR2

案例分析:

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

[root@aix230:/u01/soft/Disk1/cluvfy]#crs_stat -tName           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 56drwxr-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

查看可执行脚本的内容,发现秘密72ff99c9ea500e990b96a2de9610edd0.png

[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 

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 -hUSAGE:

cluvfy [ -help ]

cluvfy stage { -list | -help }

cluvfy stage {-pre|-post}    [-verbose]

cluvfy comp  { -list | -help }

cluvfy comp     [-verbose]

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值