123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179 |
- #!/bin/sh
- #
- # JBoss domain control script
- #
- # chkconfig: - 80 20
- # description: JBoss AS Domain
- # processname: domain
- # pidfile: /var/run/jboss-as/jboss-as-domain.pid
- # config: /etc/jboss-as/jboss-as.conf
- # Source function library.
- . /etc/init.d/functions
- # Load Java configuration.
- [ -r /etc/java/java.conf ] && . /etc/java/java.conf
- export JAVA_HOME
- # Load JBoss AS init.d configuration.
- if [ -z "$JBOSS_CONF" ]; then
- JBOSS_CONF="/etc/jboss-as/jboss-as.conf"
- fi
- [ -r "$JBOSS_CONF" ] && . "${JBOSS_CONF}"
- # Set defaults.
- if [ -z "$JBOSS_HOME" ]; then
- JBOSS_HOME=/usr/share/jboss-as
- fi
- export JBOSS_HOME
- if [ -z "$JBOSS_PIDFILE" ]; then
- JBOSS_PIDFILE=/var/run/jboss-as/jboss-as-domain.pid
- fi
- export JBOSS_PIDFILE
- if [ -z "$JBOSS_CONSOLE_LOG" ]; then
- JBOSS_CONSOLE_LOG=/var/log/jboss-as/console.log
- fi
- if [ -z "$STARTUP_WAIT" ]; then
- STARTUP_WAIT=30
- fi
- if [ -z "$SHUTDOWN_WAIT" ]; then
- SHUTDOWN_WAIT=30
- fi
- if [ -z "$JBOSS_DOMAIN_CONFIG" ]; then
- JBOSS_DOMAIN_CONFIG=domain.xml
- fi
- if [ -z "$JBOSS_HOST_CONFIG" ]; then
- JBOSS_HOST_CONFIG=host.xml
- fi
- JBOSS_SCRIPT=$JBOSS_HOME/bin/domain.sh
- prog='jboss-as'
- CMD_PREFIX=''
- if [ ! -z "$JBOSS_USER" ]; then
- if [ -x /etc/rc.d/init.d/functions ]; then
- CMD_PREFIX="daemon --user $JBOSS_USER"
- else
- CMD_PREFIX="su - $JBOSS_USER -c"
- fi
- fi
- start() {
- echo -n "Starting $prog: "
- if [ -f $JBOSS_PIDFILE ]; then
- read ppid < $JBOSS_PIDFILE
- if [ `ps --pid $ppid 2> /dev/null | grep -c $ppid 2> /dev/null` -eq '1' ]; then
- echo -n "$prog is already running"
- failure
- echo
- return 1
- else
- rm -f $JBOSS_PIDFILE
- fi
- fi
- mkdir -p $(dirname $JBOSS_CONSOLE_LOG)
- cat /dev/null > $JBOSS_CONSOLE_LOG
- mkdir -p $(dirname $JBOSS_PIDFILE)
- chown $JBOSS_USER $(dirname $JBOSS_PIDFILE) || true
- #$CMD_PREFIX JBOSS_PIDFILE=$JBOSS_PIDFILE $JBOSS_SCRIPT 2>&1 > $JBOSS_CONSOLE_LOG &
- #$CMD_PREFIX JBOSS_PIDFILE=$JBOSS_PIDFILE $JBOSS_SCRIPT &
- if [ ! -z "$JBOSS_USER" ]; then
- if [ -r /etc/rc.d/init.d/functions ]; then
- daemon --user $JBOSS_USER LAUNCH_JBOSS_IN_BACKGROUND=1 JBOSS_PIDFILE=$JBOSS_PIDFILE $JBOSS_SCRIPT --domain-config=$JBOSS_DOMAIN_CONFIG --host-config=$JBOSS_HOST_CONFIG 2>&1 > $JBOSS_CONSOLE_LOG &
- else
- su - $JBOSS_USER -c "LAUNCH_JBOSS_IN_BACKGROUND=1 JBOSS_PIDFILE=$JBOSS_PIDFILE $JBOSS_SCRIPT --domain-config=$JBOSS_DOMAIN_CONFIG --host-config=$JBOSS_HOST_CONFIG" 2>&1 > $JBOSS_CONSOLE_LOG &
- fi
- fi
- count=0
- launched=false
- until [ $count -gt $STARTUP_WAIT ]
- do
- grep 'JBoss AS.*started in' $JBOSS_CONSOLE_LOG > /dev/null
- if [ $? -eq 0 ] ; then
- launched=true
- break
- fi
- sleep 1
- let count=$count+1;
- done
- success
- echo
- return 0
- }
- stop() {
- echo -n $"Stopping $prog: "
- count=0;
- if [ -f $JBOSS_PIDFILE ]; then
- read kpid < $JBOSS_PIDFILE
- let kwait=$SHUTDOWN_WAIT
- # Try issuing SIGTERM
- kill -15 $kpid
- until [ `ps --pid $kpid 2> /dev/null | grep -c $kpid 2> /dev/null` -eq '0' ] || [ $count -gt $kwait ]
- do
- sleep 1
- let count=$count+1;
- done
- if [ $count -gt $kwait ]; then
- kill -9 $kpid
- fi
- fi
- rm -f $JBOSS_PIDFILE
- success
- echo
- }
- status() {
- if [ -f $JBOSS_PIDFILE ]; then
- read ppid < $JBOSS_PIDFILE
- if [ `ps --pid $ppid 2> /dev/null | grep -c $ppid 2> /dev/null` -eq '1' ]; then
- echo "$prog is running (pid $ppid)"
- return 0
- else
- echo "$prog dead but pid file exists"
- return 1
- fi
- fi
- echo "$prog is not running"
- return 3
- }
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- restart)
- $0 stop
- $0 start
- ;;
- status)
- status
- ;;
- *)
- ## If no parameters are given, print which are avaiable.
- echo "Usage: $0 {start|stop|status|restart|reload}"
- exit 1
- ;;
- esac
|