Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- #
- # chkconfig: 345 80 20
- # description: per domain Oracle Weblogic Node Manager service init script
- # author: http://docs.oracle.com/middleware/1213/wls/NODEM/java_nodemgr.htm#NODEM247 modofied by Dawid Mocek
- ### BEGIN INIT INFO
- # Provides: example_domain-nodemanager
- # Required-Start: $network $local_fs
- # Required-Stop:
- # Should-Start:
- # Should-Stop:
- # Default-Start: 3 4 5
- # Default-Stop: 0 1 2 6
- # Short-Description: per domain Oracle Weblogic Node Manager service.
- # Description: Starts and stops per domain Oracle Weblogic Node Manager.
- ### END INIT INFO
- . /etc/rc.d/init.d/functions
- #### BEGIN CUSTOM ENV
- MW_HOME=/opt/oracle/middleware
- DOMAIN_HOME="$MW_HOME/user_projects/domains/example_domain"
- LD_LIBRARY_PATH="$MW_HOME/wlserver/server/native/linux/x86_64:/usr/lib64:/usr/lib:/lib:/usr/X11R6/lib"
- JAVA_HOME=/usr/java/latest
- JAVA_USER=oracle
- #### END CUSTOM ENV
- PROCESS_STRING="^.*$DOMAIN_HOME.*weblogic.NodeManager.*"
- PROGRAM_START="$DOMAIN_HOME/bin/startNodeManager.sh"
- NODEMANAGER_DIR="$DOMAIN_HOME/nodemanager"
- NODEMANAGER_LOCKFILE="$NODEMANAGER_DIR/nodemanager.log.lck"
- OUT_FILE="$NODEMANAGER_DIR/nodemanager.out"
- WAIT_TIME=600
- SERVICE_NAME=`/bin/basename $0`
- LOCKFILE="/var/lock/subsys/$SERVICE_NAME"
- RETVAL=0
- start() {
- OLDPID=`/usr/bin/pgrep -f $PROCESS_STRING`
- if [ ! -z "$OLDPID" ]; then
- echo "$SERVICE_NAME is already running (pid $OLDPID) !"
- echo
- exit
- fi
- echo -n $"Starting $SERVICE_NAME ... "
- su --login $JAVA_USER <<EOF
- echo "`date` Starting $SERVICE_NAME ... " > "$OUT_FILE" 2>&1
- export MW_HOME
- export JAVA_HOME
- export LD_LIBRARY_PATH
- $PROGRAM_START >> "$OUT_FILE" 2>&1 &
- EOF
- #^^ ! przed markerem EOF nie moze byc bialego znaku !
- RETVAL=$?
- if [ $RETVAL -eq 0 ] ; then
- wait_for "socket listener started on port"
- else
- echo "FAILED: $RETVAL. Please check $OUT_FILE for more information."
- fi
- echo
- }
- wait_for() {
- res=$(cat "$OUT_FILE" | fgrep -c "$1")
- count=$WAIT_TIME
- while [[ ! $res -gt 0 ]] && [[ $count -gt 0 ]]
- do
- sleep 1
- count=$(($count - 1))
- res=$(cat "$OUT_FILE" | fgrep -c "$1")
- done
- res=$(cat "$OUT_FILE" | fgrep -c "$1")
- if [ ! $res -gt 0 ]; then
- echo "FAILED or took too long time to start or started on time. Please check $OUT_FILE for more information."
- else
- echo "OK"
- touch $LOCKFILE
- fi
- }
- stop() {
- echo -n $"Stopping $SERVICE_NAME ... "
- OLDPID=`/usr/bin/pgrep -f $PROCESS_STRING`
- if [ "$OLDPID" != "" ]; then
- echo -n "(pid $OLDPID) "
- /bin/kill -TERM $OLDPID
- RETVAL=$?
- echo "OK"
- /bin/rm -f $NODEMANAGER_LOCKFILE
- [ $RETVAL -eq 0 ] && rm -f $LOCKFILE
- else
- /bin/echo "$SERVICE_NAME is stopped"
- fi
- echo
- }
- restart() {
- stop
- sleep 10
- start
- }
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- restart|force-reload|reload)
- restart
- ;;
- condrestart|try-restart)
- [ -f $LOCKFILE ] && restart
- ;;
- status)
- OLDPID=`/usr/bin/pgrep -f $PROCESS_STRING`
- if [ "$OLDPID" != "" ]; then
- /bin/echo "$SERVICE_NAME is running (pid: $OLDPID)"
- else
- /bin/echo "$SERVICE_NAME is stopped"
- fi
- echo
- RETVAL=$?
- ;;
- *)
- echo $"Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"
- exit 1
- esac
- exit $RETVAL
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement