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