/etc/cron.daily/apache2 について、重要なツールかと思いきや、disk_cacheモジュールのキャッシュを削除するツールだったお話
#!/bin/sh
# run htcacheclean
# コマンドが0以外のステータスで終了した場合、一部の場合を除いて即座に終了する
set -e
# 未定義の変数を参照するとエラー・メッセージを表示する
set -u
# htcacheclean,/etc/default/apache2が存在しないとexit
[ -e /usr/sbin/htcacheclean ] || exit 0
[ -e /etc/default/apache2 ] || exit 0
# edit /etc/default/apache2 to change this
HTCACHECLEAN_MODE=daemon
HTCACHECLEAN_RUN=auto
HTCACHECLEAN_SIZE=300M
HTCACHECLEAN_PATH=/var/cache/apache2/mod_disk_cache
HTCACHECLEAN_OPTIONS=""
# /etc/default/apache2によって先ほど設定した変数が上書きされる
. /etc/default/apache2
# cronでない場合、exit
[ "$HTCACHECLEAN_MODE" = "cron" ] || exit 0
# HTCACHECLEAN_RUNがyes、または、autoかつdisk_cacheモジュールが有効のときのみexitしない
[ "$HTCACHECLEAN_RUN" = "yes" ] ||
( [ "$HTCACHECLEAN_RUN" = "auto" ] && \
[ -e /etc/apache2/mods-enabled/disk_cache.load ] ) || exit 0
# -n:CPU使用の優先度を最低にして動作させる
# -p:ディスクキャッシュのルートディレクトリを
# -l:トータルでのディスクキャッシュサイズの制限値を指定する
/usr/sbin/htcacheclean ${HTCACHECLEAN_OPTIONS} \
-p${HTCACHECLEAN_PATH} \
-l${HTCACHECLEAN_SIZE}