В конце июля в офис доставили долгожданный сервер. Поставил на него VMware ESXi. Создал шаблоны виртуалок на SuSE SLES 10 SP1 и началось. Дело это для меня новое, так что не пинать :)

В результате родились скрипты для запуска следующих продуктов: Oracle, IBM DB2, IBM WebSphere (AS, WPS, ESB, Message Broker)

Скрипт  запуска IBM WebSphere Message Broker:

#! /bin/sh
#
# Author: Igor Nikolaev, 2008
#
# /etc/init.d/brokerd
#
### BEGIN INIT INFO
# Provides: brokerd
# Required-Start: $remote_fs network db2d
# Should-Start:
# Required-Stop:
# Should-Stop:
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Short-Description: IBM WebSphere Message Broker
# Description: IBM WebSphere Message Broker
### END INIT INFO
#
# All the environment variable settings go in SYSCONFIG
#
# BROKER_ADMIN
#
SYSCONFIG=/etc/sysconfig/$(basename "$0")

if [ -f $SYSCONFIG ]; then
  . $SYSCONFIG
fi

SU=/bin/su

if test -z "$2" ; then
 # Retrieve list of existing components on broker
 COMPONENTS=`$SU - $BROKER_ADMIN -c mqsilist | sed 's/BIP8099I: *[^:]*: *\([^ ]*\)\( *- *\)\(.*\)/\1/' | sed 's/\(.*\)BIP8071I.*/\1/'`

for COMPONENT in $COMPONENTS; do
  $0 $1 $COMPONENT
 done
exit;
fi

. /etc/rc.status
rc_reset

case $1 in
 'start')
  echo -n "Starting IBM WebSphere Message Broker $2"
  $SU - $BROKER_ADMIN -c "mqsistart $2 >& /dev/null"
  rc_status -v
  ;;
 'stop')
  echo -n "Stopping IBM WebSphere Message Broker $2"
  $SU - $BROKER_ADMIN -c "mqsistop $2 >& /dev/null"
  rc_status -v
  ;;
 'restart')
  $0 stop $2
  $0 start $2
  ;;
 *)
  echo "Usage $0 {start|stop|restart} [component name]"
  exit;
  ;;
esac

rc_exit

Скрипт запуска IBM WebSphere AS (а также WPS, ESB):

#! /bin/sh
#
# Author: Igor Nikolaev, 2008
#
# /etc/init.d/websphered
#
### BEGIN INIT INFO
# Provides: websphered
# Required-Start: $remote_fs network
# Should-Start:
# Required-Stop:
# Should-Stop:
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Short-Description: IBM WebSphere AS
# Description: IBM WebSphere AS
### END INIT INFO
#
# All the environment variable settings go in SYSCONFIG
#
# WAS_ADMIN
# WAS_ADMIN_PASSWORD
# WAS_HOME
#
# Source SuSE config
SYSCONFIG=/etc/sysconfig/$(basename "$0")

if [ -f $SYSCONFIG ]; then
  . $SYSCONFIG
fi

if test -z "$2" ; then
 # Retrieve list of existing profiles
 PROFILES=`$WAS_HOME/bin/manageprofiles.sh -listProfiles | sed 's/\[\([^]]*\)\]/\1/' | sed 's/\(\([^,]*\),\? \?\)/\2 /'`

for PROFILE in $PROFILES; do
  $0 $1 $PROFILE
 done
exit;
fi

. /etc/rc.status
rc_reset

case $1 in
 'start')
  echo -n "Starting IBM WebSphere profile $2"
  $WAS_HOME/bin/startServer.sh -profileName $2 server1 -quiet > /dev/null
  rc_status -v
  ;;
 'stop')
  echo -n "Shutting down IBM WebSphere profile $2"
  $WAS_HOME/bin/stopServer.sh -profileName $2 server1 -user $WAS_ADMIN -password $WAS_ADMIN_PASSWORD -quiet > /dev/null
 rc_status -v
  ;;
'status')
  echo -n "Status for IBM WebSphere profile $2"
  $WAS_HOME/bin/serverStatus.sh -profileName $2 server1 -user $WAS_ADMIN -password $WAS_ADMIN_PASSWORD -quiet > /dev/null
  rc_status -v
  ;;
'restart')
  $0 stop $2
  $0 start $2
  ;;
*)
  echo "Usage $0 {start|stop|status|restart} [profile name]"
  exit;
  ;;
esac

rc_exit

Скрипт запуска IBM DB2:

#!/bin/sh
#
# Author: Igor Nikolaev, 2008
#
# /etc/init.d/db2d
#
### BEGIN INIT INFO
# Provides: db2d
# Required-Start: $remote_fs network
# Should-Start:
# Required-Stop:
# Should-Stop:
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Short-Description: IBM WebSphere DB2
# Description: IBM WebSphere DB2
### END INIT INFO
#
# All the environment variable settings go in SYSCONFIG
#
# DB2_ADMIN
#
SYSCONFIG=/etc/sysconfig/$(basename "$0")

if [ -f $SYSCONFIG ]; then
  . $SYSCONFIG
fi

SU=/bin/su

. /etc/rc.status
rc_reset

case $1 in
 'start')
  echo -n "Starting DB2"
  $SU - $DB2_ADMIN -c "db2start > /dev/null"
  rc_status -v
  ;;
 'stop')
  echo -n "Shutting down DB2"
  $SU - $DB2_ADMIN -c "db2stop > /dev/null"
  rc_status -v
  ;;
 'restart')
  $0 stop
  $0 start
  ;;
 *)
  echo "usage: $0 {start|stop|restart}"
  exit
  ;;
esac

rc_exit

Скрипт запуска Oracle:

#!/bin/sh
#
# Author: Igor Nikolaev, 2008
#
# /etc/init.d/oracled
#
### BEGIN INIT INFO
# Provides: oracled
# Required-Start: $remote_fs $network
# Should-Start:
# Required-Stop:
# Should-Stop:
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Short-Description: Oracle 11g Database
# Description: Oracle 11g Database
### END INIT INFO
#
# All the environment variable settings go in SYSCONFIG
#
# ORACLE_HOME
# ORACLE_ADMIN
#
SYSCONFIG=/etc/sysconfig/$(basename "$0")

if [ -f $SYSCONFIG ]; then
  . $SYSCONFIG
fi

SU=/bin/su

. /etc/rc.status
rc_reset

case $1 in
'start')
 echo -n "Starting Oracle 11g"
  $SU - $ORACLE_ADMIN -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME > /dev/null"
 rc_status -v
  ;;
'stop')
 echo -n "Shutting down Oracle 11g"
  $SU - $ORACLE_ADMIN -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME > /dev/null"
 rc_status -v
  ;;
*)
  echo "usage: $0 {start|stop}"
  exit
  ;;
esac

rc_exit