From 7c149e0f9d8f312cd7f2ad52fc74e470e42a6889 Mon Sep 17 00:00:00 2001 From: low012 Date: Mon, 18 Apr 2011 19:09:54 +0000 Subject: [PATCH] *) ./stopYACY:sh -f kills YaCy in case regular shutdown does not work git-svn-id: https://svn.berlios.de/svnroot/repos/yacy/trunk@7667 6c8d7289-2bf4-0310-a012-ef5d649a1542 --- stopYACY.sh | 71 ++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 48 insertions(+), 23 deletions(-) diff --git a/stopYACY.sh b/stopYACY.sh index 3b45c134a..f8baf57b1 100755 --- a/stopYACY.sh +++ b/stopYACY.sh @@ -1,34 +1,59 @@ #!/bin/sh cd `dirname $0` -if [ -x `which wget` ] +# KILL YACY IF SCRIPT HAS BEEN STARTED WITH PARAMETER -f +if [ $# -eq 1 ] then - bin/apicall.sh "Steering.html?shutdown=true" + if [ $1 = "-f" ] + then + if [ -e "yacy.pid" ] + then + PID=`cat yacy.pid` + kill -9 "$PID" 2> /dev/null + if [ $? -ne 0 ] + then + echo "Unable to force closed YaCy, daemon seems to have terminated already." + else + echo "Force closed YaCy (process ID was $PID)." + fi + else + echo "Unable to determine YaCy process ID, aborting operation." + fi + fi + +# ELSE TRY TO STOP YACY GRACEFULLY +else -echo "Please wait until the YaCy daemon process terminates [wget]" -echo "You can monitor this with 'tail -f DATA/LOG/yacy00.log' and 'fuser log/yacy00.log'" + if [ -x `which wget` ] + then + bin/apicall.sh "Steering.html?shutdown=true" -elif [ -x `which curl` ] -then - bin/apicall.sh "Steering.html?shutdown=true" + echo "Please wait until the YaCy daemon process terminates [wget]" + echo "You can monitor this with 'tail -f DATA/LOG/yacy00.log' and 'fuser log/yacy00.log'" -echo "Please wait until the YaCy daemon process terminates [curl]" -echo "You can monitor this with 'tail -f DATA/LOG/yacy00.log' and 'fuser log/yacy00.log'" + elif [ -x `which curl` ] + then + bin/apicall.sh "Steering.html?shutdown=true" -elif [ -x `which java` ] -then - # generating the proper classpath - CLASSPATH="" - for N in lib/*.jar; do CLASSPATH="$CLASSPATH$N:"; done - for N in libx/*.jar; do CLASSPATH="$CLASSPATH$N:"; done + echo "Please wait until the YaCy daemon process terminates [curl]" + echo "You can monitor this with 'tail -f DATA/LOG/yacy00.log' and 'fuser log/yacy00.log'" - java -classpath classes:htroot:$CLASSPATH net.yacy.yacy -shutdown + elif [ -x `which java` ] + then + # generating the proper classpath + CLASSPATH="" + for N in lib/*.jar; do CLASSPATH="$CLASSPATH$N:"; done + for N in libx/*.jar; do CLASSPATH="$CLASSPATH$N:"; done - echo "Please wait until the YaCy daemon process terminates [java]" - echo "You can monitor this with 'tail -f DATA/LOG/yacy00.log' and 'fuser log/yacy00.log'" + java -classpath classes:htroot:$CLASSPATH net.yacy.yacy -shutdown -else - port=`cat DATA/SETTINGS/yacy.conf |grep "^port="|sed "s/.*=//"` - echo "Neither wget nor java could be found or are not executable." - echo "Visit http://localhost:$port/Steering.html?shutdown=true to stop YaCy or (in emergency case) use ./killYACY.sh" -fi + echo "Please wait until the YaCy daemon process terminates [java]" + echo "You can monitor this with 'tail -f DATA/LOG/yacy00.log' and 'fuser log/yacy00.log'" + + else + port=`cat DATA/SETTINGS/yacy.conf |grep "^port="|sed "s/.*=//"` + echo "Neither wget nor java could be found or are not executable." + echo "Visit http://localhost:$port/Steering.html?shutdown=true to stop YaCy or (in emergency case) use ./killYACY.sh" + fi + +fi \ No newline at end of file