[simple-way:~] CTO% cat 2008年08月07日14:59.txt
よく考えたら、logrotateかrotatelogsを使わなくてもcronで定期的に実行すればいいのではないですかね。
ということで、定期的にログを切り分けるシェルスクリプト書いてみました。これを希望する期間のcronディレクトリに突っ込んでおけば自動的に切り分けてくれます。
ひとまず、うちの場合はアクセス数がそれほど多くないということで、cron.monthlyディレクトリに入れておきました。
パスやファイル名はそれぞれ違うと思うので、適宜変更してください。インデントのために全角スペースとかも入っています。
#!/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
STR_STAMP=`date '+%Y%m%d'`
STR_HOME="[ウェブサイトが入っているディレクトリ]"
for STR_DIR in `ls ${STR_HOME}`
do
if [ -s ${STR_HOME}/${STR_DIR}/logs/log_access ] || [ -s ${STR_HOME}/${STR_DIR}/logs/log_error ] ; then
mv ${STR_HOME}/${STR_DIR}/logs/log_access ${STR_HOME}/${STR_DIR}/logs/log_access_${STR_STAMP}
mv ${STR_HOME}/${STR_DIR}/logs/log_error ${STR_HOME}/${STR_DIR}/logs/log_error_${STR_STAMP}
touch ${STR_HOME}/${STR_DIR}/logs/log_access
touch ${STR_HOME}/${STR_DIR}/logs/log_error
fi
done
/etc/rc.d/init.d/httpd restart
[simple-way:~] CTO% []