htcacheclean.init revision a5fc5d4a0ebd2cbc89e230f89fc2477e01bc4e84
f545d156561c08020a67f9640c51454c2df4fb57fabien#!/bin/bash
f545d156561c08020a67f9640c51454c2df4fb57fabien#
f545d156561c08020a67f9640c51454c2df4fb57fabien# Licensed to the Apache Software Foundation (ASF) under one or more
f545d156561c08020a67f9640c51454c2df4fb57fabien# contributor license agreements. See the NOTICE file distributed with
f545d156561c08020a67f9640c51454c2df4fb57fabien# this work for additional information regarding copyright ownership.
f545d156561c08020a67f9640c51454c2df4fb57fabien# The ASF licenses this file to You under the Apache License, Version 2.0
f545d156561c08020a67f9640c51454c2df4fb57fabien# (the "License"); you may not use this file except in compliance with
f545d156561c08020a67f9640c51454c2df4fb57fabien# the License. You may obtain a copy of the License at
f545d156561c08020a67f9640c51454c2df4fb57fabien#
f545d156561c08020a67f9640c51454c2df4fb57fabien# http://www.apache.org/licenses/LICENSE-2.0
f545d156561c08020a67f9640c51454c2df4fb57fabien#
f545d156561c08020a67f9640c51454c2df4fb57fabien# Unless required by applicable law or agreed to in writing, software
f545d156561c08020a67f9640c51454c2df4fb57fabien# distributed under the License is distributed on an "AS IS" BASIS,
f545d156561c08020a67f9640c51454c2df4fb57fabien# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
f545d156561c08020a67f9640c51454c2df4fb57fabien# See the License for the specific language governing permissions and
f545d156561c08020a67f9640c51454c2df4fb57fabien# limitations under the License.
f545d156561c08020a67f9640c51454c2df4fb57fabien#
f545d156561c08020a67f9640c51454c2df4fb57fabien#
f545d156561c08020a67f9640c51454c2df4fb57fabien# htcacheclean Startup script for the Apache cache cleaner
f545d156561c08020a67f9640c51454c2df4fb57fabien#
f545d156561c08020a67f9640c51454c2df4fb57fabien# chkconfig: - 85 15
f545d156561c08020a67f9640c51454c2df4fb57fabien# description: The Apache htcacheclean daemon maintains and prunes the
f545d156561c08020a67f9640c51454c2df4fb57fabien# size of the mod_cache_disk cache directory.
f545d156561c08020a67f9640c51454c2df4fb57fabien# processname: htcacheclean
f545d156561c08020a67f9640c51454c2df4fb57fabien# pidfile: /var/log/httpd/htcacheclean.pid
f545d156561c08020a67f9640c51454c2df4fb57fabien# config: /etc/sysconfig/htcacheclean
f545d156561c08020a67f9640c51454c2df4fb57fabien#
f545d156561c08020a67f9640c51454c2df4fb57fabien### BEGIN INIT INFO
f545d156561c08020a67f9640c51454c2df4fb57fabien# Provides: htcacheclean
f545d156561c08020a67f9640c51454c2df4fb57fabien# Required-Start: $local_fs $remote_fs $network
f545d156561c08020a67f9640c51454c2df4fb57fabien# Required-Stop: $local_fs $remote_fs $network
f545d156561c08020a67f9640c51454c2df4fb57fabien# Should-Start: httpd
f545d156561c08020a67f9640c51454c2df4fb57fabien# Short-Description: start and stop Apache htcacheclean
f545d156561c08020a67f9640c51454c2df4fb57fabien# Description: The Apache htcacheclean daemon maintains a mod_cache_disk
f545d156561c08020a67f9640c51454c2df4fb57fabien### END INIT INFO
f545d156561c08020a67f9640c51454c2df4fb57fabien
f545d156561c08020a67f9640c51454c2df4fb57fabien# Source function library.
f545d156561c08020a67f9640c51454c2df4fb57fabien. /etc/rc.d/init.d/functions
f545d156561c08020a67f9640c51454c2df4fb57fabien
f545d156561c08020a67f9640c51454c2df4fb57fabien# What were we called? Multiple instances of the same daemon can be
f545d156561c08020a67f9640c51454c2df4fb57fabien# created by creating suitably named symlinks to this startup script
f545d156561c08020a67f9640c51454c2df4fb57fabienprog=$(basename $0 | sed -e 's/^[SK][0-9][0-9]//')
f545d156561c08020a67f9640c51454c2df4fb57fabien
f545d156561c08020a67f9640c51454c2df4fb57fabienif [ -f /etc/sysconfig/${prog} ]; then
f545d156561c08020a67f9640c51454c2df4fb57fabien . /etc/sysconfig/${prog}
f545d156561c08020a67f9640c51454c2df4fb57fabienfi
f545d156561c08020a67f9640c51454c2df4fb57fabien
f545d156561c08020a67f9640c51454c2df4fb57fabien# Path to htcacheclean, server binary, and short-form for messages.
f545d156561c08020a67f9640c51454c2df4fb57fabienhtcacheclean=${HTTPD-/usr/sbin/htcacheclean}
f545d156561c08020a67f9640c51454c2df4fb57fabienlockfile=${LOCKFILE-/var/lock/subsys/${prog}}
f545d156561c08020a67f9640c51454c2df4fb57fabienpidfile=/var/run/${prog}.pid
f545d156561c08020a67f9640c51454c2df4fb57fabieninterval=${INTERVAL-10}
f545d156561c08020a67f9640c51454c2df4fb57fabiencachepath=${CACHEPATH-/var/cache/httpd/cache-root}
f545d156561c08020a67f9640c51454c2df4fb57fabienlimit=${LIMIT-100M}
f545d156561c08020a67f9640c51454c2df4fb57fabienRETVAL=0
f545d156561c08020a67f9640c51454c2df4fb57fabien
f545d156561c08020a67f9640c51454c2df4fb57fabienstart() {
f545d156561c08020a67f9640c51454c2df4fb57fabien echo -n $"Starting $prog: "
f545d156561c08020a67f9640c51454c2df4fb57fabien daemon --pidfile=${pidfile} $htcacheclean -d "$interval" -p "$cachepath" -l "$limit" -P "$pidfile" $OPTIONS
f545d156561c08020a67f9640c51454c2df4fb57fabien RETVAL=$?
f545d156561c08020a67f9640c51454c2df4fb57fabien echo
f545d156561c08020a67f9640c51454c2df4fb57fabien [ $RETVAL = 0 ] && touch ${lockfile}
f545d156561c08020a67f9640c51454c2df4fb57fabien return $RETVAL
f545d156561c08020a67f9640c51454c2df4fb57fabien}
f545d156561c08020a67f9640c51454c2df4fb57fabienstop() {
f545d156561c08020a67f9640c51454c2df4fb57fabien echo -n $"Stopping $prog: "
f545d156561c08020a67f9640c51454c2df4fb57fabien killproc -p ${pidfile} $htcacheclean
f545d156561c08020a67f9640c51454c2df4fb57fabien RETVAL=$?
f545d156561c08020a67f9640c51454c2df4fb57fabien echo
f545d156561c08020a67f9640c51454c2df4fb57fabien [ $RETVAL = 0 ] && rm -f ${lockfile}
f545d156561c08020a67f9640c51454c2df4fb57fabien}
f545d156561c08020a67f9640c51454c2df4fb57fabien
f545d156561c08020a67f9640c51454c2df4fb57fabien# See how we were called.
f545d156561c08020a67f9640c51454c2df4fb57fabiencase "$1" in
f545d156561c08020a67f9640c51454c2df4fb57fabien start)
f545d156561c08020a67f9640c51454c2df4fb57fabien start
f545d156561c08020a67f9640c51454c2df4fb57fabien ;;
f545d156561c08020a67f9640c51454c2df4fb57fabien stop)
dd1e093863f13a4a3fbf09497cbd5cb039fadd76ylavic stop
dd1e093863f13a4a3fbf09497cbd5cb039fadd76ylavic ;;
f545d156561c08020a67f9640c51454c2df4fb57fabien status)
f545d156561c08020a67f9640c51454c2df4fb57fabien status -p ${pidfile} $htcacheclean
f545d156561c08020a67f9640c51454c2df4fb57fabien RETVAL=$?
f545d156561c08020a67f9640c51454c2df4fb57fabien ;;
f545d156561c08020a67f9640c51454c2df4fb57fabien restart)
f545d156561c08020a67f9640c51454c2df4fb57fabien stop
f545d156561c08020a67f9640c51454c2df4fb57fabien start
f545d156561c08020a67f9640c51454c2df4fb57fabien ;;
f545d156561c08020a67f9640c51454c2df4fb57fabien condrestart)
f545d156561c08020a67f9640c51454c2df4fb57fabien if status -p ${pidfile} $htcacheclean >&/dev/null; then
f545d156561c08020a67f9640c51454c2df4fb57fabien stop
f545d156561c08020a67f9640c51454c2df4fb57fabien start
f545d156561c08020a67f9640c51454c2df4fb57fabien fi
f545d156561c08020a67f9640c51454c2df4fb57fabien ;;
f545d156561c08020a67f9640c51454c2df4fb57fabien *)
f545d156561c08020a67f9640c51454c2df4fb57fabien echo $"Usage: $prog {start|stop|restart|condrestart|status|help}"
f545d156561c08020a67f9640c51454c2df4fb57fabien exit 1
f545d156561c08020a67f9640c51454c2df4fb57fabienesac
f545d156561c08020a67f9640c51454c2df4fb57fabien
f545d156561c08020a67f9640c51454c2df4fb57fabienexit $RETVAL
f545d156561c08020a67f9640c51454c2df4fb57fabien