|
Page 7 of 8 Next is setup ofBiz to run as a service. You will need to stop ofBiz process from prior steps and a restart is an easy way to clean everything up. From your Terminal Window type "useradd -m ofbiz". This will create a new local user called ofbiz. Next type "chown -R ofbiz /opt/ofbiz". This will change the owner on all files in the /opt/ofbiz sub-directory structure to ofbiz recursivly. Next type "chmod 700 /opt/ofbiz". This will set the root ofbiz subdirectory to read, write, and execute for the owner only. Next type "cp /opt/ofbiz/rc.ofbiz /etc/init.d/ofbiz". This will copy the startup script to the /etc/init.d directory. Next you will need to modify the the /etc/init.d/ofbiz script file to match mine this: #!/bin/sh ##################################################################### # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. ##################################################################### # # ofbiz This shell script takes care of starting and stopping # the OFBiz subsystem # # chkconfig: - 80 10 # Description: OFBiz server
# Source function library # this does not exist in Debian/Ubuntu/etc. # => comment out and use "echo failure" and "echo success" in place of echo_failure and echo_success (minor anyway) # . /etc/rc.d/init.d/functions
# Source networking configuration # this does not exist in Debian/Ubuntu/etc. => comment out # . /etc/sysconfig/network
# /usr/lib/jvm/jre/bin/java -Xms128M -Xmx512M -jar ofbiz.jar # Paths - Edit for your locations JAVA_BINARY=/usr/lib/jvm/java/bin/java OFBIZ_HOME=/opt/ofbiz OFBIZ_LOG=$OFBIZ_HOME/runtime/logs/console.log
# VM Options JAVA_VMOPTIONS="-Xms128M -Xmx512M"
# Java arguments JAVA_ARGS="-jar ofbiz.jar"
# *nix user ofbiz should run as (you must create this user first) OFBIZ_USER=ofbiz
# OFBiz processes running ofbizprocs() { OFBIZ_PROCS=`/bin/ps h -o pid,args -C java.bin | /bin/grep -e "$JAVA_ARGS" | /bin/egrep -o "^[[:space:]]*[[:digit:]]*"` }
# Checking user... checkuser() { if [ "$USER" != "$OFBIZ_USER" ]; then echo failure echo echo "Only users root or $OFBIZ_USER should start/stop the application" exit 1 fi }
# Start OFBiz start() { echo -n "Starting OFBiz: " checkuser ofbizprocs if [ "$OFBIZ_PROCS" != "" ]; then echo failure echo echo "OFBiz is already running..." return 1 fi
# All clear cd $OFBIZ_HOME umask 007 /bin/rm -f $OFBIZ_LOG $JAVA_BINARY $JAVA_VMOPTIONS $JAVA_ARGS >>$OFBIZ_LOG 2>>$OFBIZ_LOG& echo success return 0 }
# Stop OFBiz stop() { echo -n "Stopping OFBiz: " checkuser ofbizprocs if [ "$OFBIZ_PROCS" == "" ]; then echo failure echo echo "OFBiz is not running..." return 1 fi
# All clear cd $OFBIZ_HOME umask 007 $JAVA_BINARY $JAVA_VMOPTIONS $JAVA_ARGS -shutdown >>$OFBIZ_LOG ofbizprocs if [ "$OFBIZ_PROCS" != "" ]; then # Let's try to -TERM /bin/kill -TERM $OFBIZ_PROCS fi ofbizprocs if [ "$OFBIZ_PROCS" != "" ]; then # Let's try it the hard way! /bin/kill -9 $OFBIZ_PROCS fi ofbizprocs if [ "$OFBIZ_PROCS" != "" ]; then echo failure echo echo "Some processes could not be stopped:" echo $OFBIZ_PROCS echo "A possible solution is to try this command once more!" return 1 else echo success return 0 fi }
# If root is running this script, su to $OFBIZ_USER first # Note that under Debian/Ubuntu/etc. you should use instead # if [ "$USER" = "root" ]; then if [ "$UID" = "0" ]; then exec su - $OFBIZ_USER -c "$0 $1" fi
case "$1" in 'start') start ;; 'stop') stop ;; 'restart') stop start ;; 'status') ofbizprocs if [ "$OFBIZ_PROCS" == "" ]; then echo "OFBiz is stopped" exit 1 else echo "OFBiz is running" exit 0 fi ;; *) echo "Usage: $0 {start|stop|kill|restart|status|help}" exit 1 ;; esac echo exit $?
|