#!/usr/bin/ksh # IBM_PROLOG_BEGIN_TAG # This is an automatically generated prolog. # # bos720 src/bos/usr/lib/nim/methods/c_snap.sh 1.3.1.1 # # Licensed Materials - Property of IBM # # Restricted Materials of IBM # # COPYRIGHT International Business Machines Corp. 2008,2010 # All Rights Reserved # # US Government Users Restricted Rights - Use, duplication or # disclosure restricted by GSA ADP Schedule Contract with IBM Corp. # # IBM_PROLOG_END_TAG # @(#)66 1.3.1.1 src/bos/usr/lib/nim/methods/c_snap.sh, cmdnim, bos720 3/25/10 16:48:22 # # include common NIM shell defines/functions NIMPATH=${0%/*} NIMPATH=${NIMPATH%/*} [[ ${NIMPATH} = ${0} ]] && NIMPATH=/usr/lpp/bos.sysmgt/nim NIM_METHODS="${NIMPATH}/methods" . ${NIM_METHODS}/c_sh_lib #${ECHO} $0 $@ #---------------------------- local defines -------------------------------- #---------------------------- module globals -------------------------------- basename $0 REQUIRED_ATTRS="step location" OPTIONAL_ATTRS="server max_dumps snap_flags client" #*---------------------------- c_showres ---------------------------- # # NAME: c_showres # # FUNCTION: # sets up remote access to resources, then runs a command to show # information about the resource # # EXECUTION ENVIRONMENT: # # NOTES: # # RECOVERY OPERATION: # # DATA STRUCTURES: # parameters: # global: # # RETURNS: (int) # 0 = no errors # >0 = failure # # OUTPUT: #-----------------------------------------------------------------------------*/ # signal processing trap cleanup 0 trap err_signal 1 2 11 15 # NIM initialization nim_init # initialize local variables typeset c="" typeset client="" # set parameters from command line while getopts :a:qv c do case ${c} in a) # validate the attr ass parse_attr_ass "${OPTARG}" # include the assignment for use in this environment eval ${variable}=\"${value}\" ;; q) # show attr info cmd_what exit 0 ;; v) # verbose mode (for debugging) set -x for i in $(typeset +f) do typeset -ft $i done ;; \?) # unknown option error ${ERR_BAD_OPT} ${OPTARG} ;; esac done # check for missing attrs ck_attrs if [[ ${step} == "1" ]] then # ok need to somwhat keep up with snap here. snap_flags=${snap_flags:="-a"} snap_flags2=`getopt AaDxT:d:em:fLgGklcnNo:pP:rRv:sBStXiIbwhHCO: $snap_flags` if [ $? -ne 0 ] then ${SNAP} >&2 exit 4 fi snap_flags2=`${ECHO} $snap_flags2 | ${SED} -e 's/-c//g' -e 's/--//g'` ${MKDIR} /tmp/dump.$$ ${MOUNT} $server:$location /tmp/dump.$$ mountrc=$? if [ $mountrc -ne "0" ] then ${RMDIR} /tmp/dump.$$ exit $mountrc fi cd /tmp/dump.$$/ if [ $? -ne 0 ] then ${UMOUNT} /tmp/dump.$$ ${RMDIR}mdir /tmp/dump.$$ exit 1 fi NUM=`${LS} -tra snap.* 2>/dev/null | wc -l` while [ ${NUM} -ge ${max_dumps} ] do TFILE=`${LS} -tra snap.* 2>/dev/null | line` ${RM} $TFILE NUM=`${LS} -tra snap.* 2>/dev/null | wc -l` done ${SNAP} $snap_flags2 -Z -d `pwd`/ibmsupt >/dev/null 2>&1 snaprc=$? cd /tmp ${UMOUNT} /tmp/dump.$$ ${RMDIR} /tmp/dump.$$ exit $snaprc fi if [[ ${step} == "2" ]] then cd $location if [ $? -ne 0 ] then exit 1 fi SNAPCOPYDATE=`date +%Y.%m.%d.%H:%M:%S` DUMPFILE=`${LS} -tra dump.* 2>/dev/null | line` if [[ -n $DUMPFILE ]] then ${MV} $DUMPFILE ./ibmsupt/dump/ else ${LN} -f dump ./ibmsupt/dump/dump.$SNAPCOPYDATE >/dev/null 2>&1 fi ${SNAP} -c -d `pwd`/ibmsupt snaprc=$? if [[ $snaprc -eq 0 ]]; then ${MV} ibmsupt/snap.pax.Z snap.pax.$SNAPCOPYDATE.Z ${ECHO} "y" | ${SNAP} -r -d `pwd`/ibmsupt ${ECHO} $server:$location/snap.$SNAPCOPYDATE.Z fi exit $snaprc fi exit 0