This is the script used to start MQSeries in the HACMP environment.



#!/bin/ksh

TMPFILE="/tmp/tmp${$}.tmp"

su mqm -c /MQHA/bin/hamqm_start_su $*

# 
# Search the /etc/inetd.conf file for MQSeries listeners
# which are commented out and correspond with the
# associated Queue Manager running this script.  If
# found, uncomment the listener(s), overwrite the
# /etc/inetd.conf file with the new modified version, and
# refresh the "inetd" process.
# 
# DLF if sed -e "s/^#[$' \t']*\(.*[$' \t']amqcrsta[$' \t'].*${1}.*\)/\1/g\
# DLF ;s/^[$' \t'][$' \t']*//g" \

if sed -e "s/^#[$' \t']*\(.*[$' \t']amqcrsta[$' \t'].*${1}.*\)/\1/g" \
< /etc/inetd.conf \
> ${TMPFILE}
then
  print "Successfully modified /etc/inetd.conf" | tee /dev/console
  if cp ${TMPFILE} /etc/inetd.conf
  then
    print "Successfully replaced /etc/inetd.conf" | tee /dev/console
    if refresh -s inetd
    then
      print "Successfully refreshed the inetd daemon" | tee /dev/console
    else
      print "ERROR: Unable to refresh the inetd daemon" | tee /dev/console 1>&2
    fi
  else
    print "ERROR: Unable to copy to /etc/inetd.conf" | tee /dev/console 1>&2
  fi
else
  print "ERROR: Unable to uncomment listeners from /etc/inetd.conf" | tee /dev/console 1>&2
fi
[[ -f ${TMPFILE} ]] && rm -f ${TMPFILE}