Blob Blame History Raw
#!/bin/bash
#
# htcacheclean     Startup script for the htcacheclean
#
# chkconfig: - 85 15
# description:  Htcacheclean is used to keep the size of \
#	        mod_cache_disk's storage within a given size limit.
# processname: htcacheclean
# config: $sysconfdir/sysconfig/htcacheclean
# pidfile: $localstatedir/run/htcacheclean/htcacheclean.pid
#
### BEGIN INIT INFO
# Provides: htcacheclean
# Required-Start: $local_fs $remote_fs $named
# Required-Stop: $local_fs $remote_fs
# Short-Description: start and stop htcacheclean
# Description:  Htcacheclean is used to keep the size of \
#  mod_cache_disk's storage within a given size limit.
### END INIT INFO

# Source function library.
. /etc/rc.d/init.d/functions

# INTERVAL, CACHE_ROOT and CACHE_LIMIT can be set
# in $sysconfdir/sysconfig/htcacheclean configuration file.
if [ -f $sysconfdir/sysconfig/htcacheclean ]; then
        . $sysconfdir/sysconfig/htcacheclean
fi

# Path to the htcacheclean binary.
binary=$sbindir/htcacheclean
prog=htcacheclean
#pidfile=${PIDFILE-/var/run/htcacheclean/htcacheclean.pid}
lockfile=${LOCKFILE-$localstatedir/lock/subsys/htcacheclean}
interval=${INTERVAL-5}
cache_path=${CACHE_ROOT-$localstatedir/cache/mod_proxy}
cache_limit=${CACHE_LIMIT-150M}
RETVAL=0

start() {
        [ "$EUID" != "0" ] && exit 4
        echo -n $"Starting $prog: "
        daemon $binary -d${interval} -n -i -p${cache_path} -l${cache_limit} $OPTIONS
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && touch ${lockfile}
        return $RETVAL
}

stop() {
	[ "$EUID" != "0" ] && exit 4
	echo -n $"Stopping $prog: "
	killproc $binary
	RETVAL=$?
	echo
	[ $RETVAL = 0 ] && rm -f ${lockfile}
}

# See how we were called.
case "$1" in
  start)
	start
	;;
  stop)
	stop
	;;
  status)
        # `status' checks lockfile only in /var/lock/subsys by default.
        # To workaround that, move outside that directory first.
        status -l ../../../${lockfile} $binary
	RETVAL=$?
	;;
  restart)
	stop
	start
	;;
  condrestart|try-restart)
	# `status' checks lockfile only in /var/lock/subsys by default.
	# To workaround that, move outside that directory first.
	if status -l ../../../${lockfile} $binary >&/dev/null; then
		stop
		start
	fi
	;;
  force-reload|reload)
        exit 3
	;;
  *)
	echo $"Usage: $prog {start|stop|restart|condrestart|try-restart|status|help}"
	RETVAL=2
esac

exit $RETVAL