#!/bin/sh # kFreeBSD do not accept scripts as interpreters, using #!/bin/sh and sourcing. if [ true != "$INIT_D_SCRIPT_SOURCED" ] ; then set "$0" "$@"; INIT_D_SCRIPT_SOURCED=true . /lib/init/init-d-script fi ### BEGIN INIT INFO # Provides: apache-htcacheclean # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Cache cleaner process for Apache2 web server # Description: Start the htcacheclean helper # This script will start htcacheclean which will periodically scan the # cache directory of Apache2's mod_cache_disk and remove outdated files. ### END INIT INFO DESC="Apache htcacheclean" DAEMON=/usr/bin/htcacheclean NAME="${0##*/}" NAME="${NAME##[KS][0-9][0-9]}" DIR_SUFFIX="${NAME##apache-htcacheclean}" APACHE_CONFDIR="${APACHE_CONFDIR:=/etc/apache2$DIR_SUFFIX}" RUN_USER=$(. $APACHE_CONFDIR/envvars > /dev/null && echo "$APACHE_RUN_USER") # Default values. Edit /etc/default/apache-htcacheclean$DIR_SUFFIX to change these HTCACHECLEAN_SIZE="${HTCACHECLEAN_SIZE:=300M}" HTCACHECLEAN_DAEMON_INTERVAL="${HTCACHECLEAN_DAEMON_INTERVAL:=120}" HTCACHECLEAN_PATH="${HTCACHECLEAN_PATH:=/var/cache/apache2$DIR_SUFFIX/mod_cache_disk}" HTCACHECLEAN_OPTIONS="${HTCACHECLEAN_OPTIONS:=-n}" # Read configuration variable file if it is present if [ -f /etc/default/apache-htcacheclean$DIR_SUFFIX ] ; then . /etc/default/apache-htcacheclean$DIR_SUFFIX elif [ -f /etc/default/apache-htcacheclean ] ; then . /etc/default/apache-htcacheclean fi PIDDIR="/var/run/apache2/$RUN_USER" PIDFILE="$PIDDIR/$NAME.pid" DAEMON_ARGS="$HTCACHECLEAN_OPTIONS \ -d$HTCACHECLEAN_DAEMON_INTERVAL \ -P$PIDFILE -i \ -p$HTCACHECLEAN_PATH \ -l$HTCACHECLEAN_SIZE" do_start_prepare () { if [ ! -d "$PIDDIR" ] ; then mkdir -p "$PIDDIR" chown "$RUN_USER:" "$PIDDIR" fi if [ ! -d "$HTCACHECLEAN_PATH" ] ; then echo "Directory $HTCACHECLEAN_PATH does not exist!" >&2 exit 2 fi } do_start_cmd_override () { start-stop-daemon --start --quiet --pidfile ${PIDFILE} \ -u $RUN_USER --startas $DAEMON --name htcacheclean --test > /dev/null \ || return 1 start-stop-daemon --start --quiet --pidfile ${PIDFILE} \ -c $RUN_USER --startas $DAEMON --name htcacheclean -- $DAEMON_ARGS \ || return 2 } do_stop_cmd_override () { start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 \ -u $RUN_USER --pidfile ${PIDFILE} --name htcacheclean }