Page Menu
Home
ClusterLabs Projects
Search
Configure Global Search
Log In
Files
F2824979
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
View Options
diff --git a/heartbeat/ora-common.sh b/heartbeat/ora-common.sh
index b238d12ff..afea20603 100644
--- a/heartbeat/ora-common.sh
+++ b/heartbeat/ora-common.sh
@@ -1,88 +1,94 @@
# ora-common.sh
#
# Description: Common code for oracle and oralsnr resource agents
#
#
# Author: Dejan Muhamedagic
# Support: users@clusterlabs.org
# License: GNU General Public License (GPL)
# Copyright: (C) 2012 Dejan Muhamedagic, SUSE/Attachmate
#
# Gather up information about our oracle instance
rmtmpfiles() {
rm -f $TMPFILES
}
ora_common_getconfig() {
ORACLE_SID=$1
# optional, defaults to whatever is in oratab
ORACLE_HOME=$2
# optional, defaults to the owner of ORACLE_HOME
ORACLE_OWNER=$3
# optional, defaults to $ORACLE_HOME/network/admin
# (only the oralsnr may provide and use this one)
TNS_ADMIN=$4
# get ORACLE_HOME from /etc/oratab if not set
- [ x = "x$ORACLE_HOME" ] &&
+ if [ x = "x$ORACLE_HOME" ];then
ORACLE_HOME=`awk -F: "/^$ORACLE_SID:/"'{print $2}' /etc/oratab`
+ if [ -f /etc/oratab ]; then
+ if [ x = "x$ORACLE_HOME" ];then
+ handle_invalid_env $OCF_ERR_CONFIGURED "ORACLE_HOME could not be obtained from /etc/oratab. Please check the sid parameter."
+ fi
+ fi
+ fi
# there a better way to find out ORACLE_OWNER?
[ x = "x$ORACLE_OWNER" ] &&
ORACLE_OWNER=`ls -ld $ORACLE_HOME/. 2>/dev/null | awk 'NR==1{print $3}'`
# There are use-cases were users want to be able to set a custom TMS_ADMIN path.
# When TNS_ADMIN is not provided, use the default path.
[ x = "x$TNS_ADMIN" ] &&
TNS_ADMIN=$ORACLE_HOME/network/admin
LD_LIBRARY_PATH=$ORACLE_HOME/lib
LIBPATH=$ORACLE_HOME/lib
PATH=$ORACLE_HOME/bin:$ORACLE_HOME/dbs:$PATH
export ORACLE_SID ORACLE_HOME ORACLE_OWNER TNS_ADMIN
export LD_LIBRARY_PATH LIBPATH
ORA_ENVF=`mktemp`
dumporaenv > $ORA_ENVF
chmod 644 $ORA_ENVF
TMPFILES="$ORA_ENVF"
trap "rmtmpfiles" EXIT
}
ora_common_validate_all() {
# Let's make sure a few important things are set...
if [ x = "x$ORACLE_HOME" ]; then
ocf_log info "ORACLE_HOME not set"
return $OCF_ERR_INSTALLED
fi
if [ x = "x$ORACLE_OWNER" ]; then
ocf_log info "ORACLE_OWNER not set"
return $OCF_ERR_INSTALLED
fi
US=`id -u -n`
if [ $US != root -a $US != $ORACLE_OWNER ]
then
ocf_exit_reason "$0 must be run as root or $ORACLE_OWNER"
return $OCF_ERR_PERM
fi
return 0
}
dumporaenv() {
cat<<EOF
PATH=$ORACLE_HOME/bin:$ORACLE_HOME/dbs:$PATH
ORACLE_SID=$ORACLE_SID
ORACLE_HOME=$ORACLE_HOME
ORACLE_OWNER=$ORACLE_OWNER
LD_LIBRARY_PATH=$ORACLE_HOME/lib
LIBPATH=$ORACLE_HOME/lib
TNS_ADMIN=$TNS_ADMIN
export ORACLE_SID ORACLE_HOME ORACLE_OWNER TNS_ADMIN
export LD_LIBRARY_PATH LIBPATH
EOF
}
# vim:tabstop=4:shiftwidth=4:textwidth=0:wrapmargin=0
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Sat, Jan 25, 11:08 AM (1 d, 2 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
1322276
Default Alt Text
(2 KB)
Attached To
Mode
rR Resource Agents
Attached
Detach File
Event Timeline
Log In to Comment