Mercurial > dive4elements > river
changeset 5118:dc0cc18e7944
Added SLES start script
author | Sascha L. Teichmann <teichmann@intevation.de> |
---|---|
date | Wed, 27 Feb 2013 17:00:12 +0100 |
parents | 842026a5a12c |
children | 15ff9ddc765e |
files | contrib/init.d/README.txt contrib/init.d/d4e-river |
diffstat | 2 files changed, 85 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/contrib/init.d/README.txt Wed Feb 27 17:00:12 2013 +0100 @@ -0,0 +1,15 @@ +SLES-Init-Script fuer Dive4Elements River: + +Installation als root: +- Kopieren nach /etc/init.d/d4e-river +- chmod 755 /etc/init.d/d4e-river +- insserv /etc/init.d/d4e-river +- /etc/init.d/d4e-river start + +Deinstallation als root: +- /etc/init.d/d4e-river stop +- insserv -r /etc/init.d/d4e-river +- rm /var/log/d4e-river.log /var/run/d4e-river.pid /etc/init.d/d4e-river + +TODO: +- ggf. logrotate fuer Logdatei /var/log/d4e-river.log konfigurieren
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/contrib/init.d/d4e-river Wed Feb 27 17:00:12 2013 +0100 @@ -0,0 +1,70 @@ +#!/bin/bash +# +### BEGIN INIT INFO +# Provides: d4e-server +# Required-Start: $network $syslog $remote_fs +# Should-Start: $named $syslog $time +# Required-Stop: $network $syslog +# Should-Stop: $named $syslog $time +# Default-Start: 3 5 +# Default-Stop: 0 1 2 6 +# Short-Description: Dive4Elements server +# Description: Start Dive4Elements server +### END INIT INFO + +RUNAS=flys +DIR="/opt/flys/current/server" + +CLASSPATH= +for l in `find "$DIR/bin/lib" -name \*.jar -print`; do + CLASSPATH=$CLASSPATH:$l +done + + +LOGFILE=/var/log/d4e-river.log +PIDFILE=/var/run/d4e-river.pid +ARGS="-Xmx256m \ + -server \ + -Djava.awt.headless=true \ + -Dflys.datacage.recommendations.development=false \ + -Djava.io.tmpdir=\"$DIR/cache\" \ + -Dflys.backend.enablejmx=true \ + -Dflys.uesk.keep.artifactsdir=false \ + -Dwsplgen.bin.path=\"$DIR/bin/wsplgen.exe\" \ + -Dwsplgen.log.output=false \ + -Dartifact.database.dir=\"$DIR/conf\"" +MAINCLASS=de.intevation.artifactdatabase.App + +# For SELinux we need to use 'runuser' not 'su' +if [ -x "/sbin/runuser" ]; then + SU="/sbin/runuser" +else + SU="/bin/su" +fi + +case "$1" in + start) + echo "Starting D4E-river server..." + $SU - $RUNAS -c "/usr/bin/java -classpath $CLASSPATH $ARGS $MAINCLASS" &> $LOGFILE & + PID=$! + echo $PID > $PIDFILE + ;; + stop) + echo "Stopping D4E-river server..." + PID=`cat $PIDFILE` + STOPRES=0 + while [ $STOPRES -le 0 ] + do + kill -15 $PID &> /dev/null + STOPRES=$? + sleep 1 + done + echo "done." + ;; + restart) + $0 stop && $0 start + ;; + *) + echo "Usage: $0 [start|stop|restart]" +esac +