#!/sbin/runscript # Copyright 1999-2005 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ # homedir YACY_HOME="/opt/yacy" # user who run yacy YACY_USER="yacy" # java options (optional) JAVA_OPTIONS="-Xms16m -Xmx128m" # niceness (optional) NICENESS="5" # logfile or /dev/null LOG="yacy.log" # waitung on stop, should be >= maxWaitingWordFlush, see DATA/SETTINGS/httpProxy.conf WAIT_ON_STOP="180" depend() { need net } cd $YACY_HOME JAVA="$(java-config --java)" CLASSPATH="" test -e lib/ && for N in `ls -1 lib/*.jar`; do CLASSPATH="$CLASSPATH$N:"; done test -e libx/ && for N in `ls -1 libx/*.jar`; do CLASSPATH="$CLASSPATH$N:"; done CLASSPATH="-classpath classes:htroot:$CLASSPATH" if [ -n "${NICENESS}" ] ; then NICE="nice -n ${NICENESS}" fi start() { ebegin "Starting yacy" ${NICE} sudo -u ${YACY_USER} ${JAVA} ${JAVA_OPTIONS} ${CLASSPATH} yacy &> ${LOG} & echo $! > /var/run/yacy.pid sleep 1 ps ax|grep "^ *$(cat /var/run/yacy.pid)" > /dev/null eend $? } stop() { ebegin "Shutting down yacy" sudo -u ${YACY_USER} ${JAVA} ${JAVA_OPTIONS} ${CLASSPATH} yacy -shutdown &> ${LOG} & einfon "Waiting ." cnt=0 while ( ps ax|grep "^ *$(cat /var/run/yacy.pid)" > /dev/null ) do cnt=`expr $cnt + 2` if [ $cnt -gt ${WAIT_ON_STOP} ] then eend 1 "Failed." break fi sleep 2 echo -n "." done echo "done." rm /var/run/yacy.pid eend $? }