Перечитал все что есть по поиску на opennetb на форуме и в документации. ничего не нашел что качается моей проблемы.
Есть скрипт ftploader который скидывает зазипованные (!!!) логи с одного сервера на другой. есть скрипт logrotate который находится в папке cron.dayli и который просто занимается ротацией логов.
Но он почему во-первых не ротирует логи а во-вторых приводит к тому что squid перестает писать в логи!
crontab :
SHELL=/bin/sh
PATH=/usr/bin:/usr/sbin:/sbin/bin:/usr/lb/news/bin:/bin
MAILTO=root
-*/15 * * * * root test -x /usr/lib/cron/run-crons && /usr/lib/cron/run-crons >/dev/null 2>&1
59 * * * * root rm -f /var/spool/cron/lastrun/cron.hourly
14 4 * * * root rm -f /var/spool/cron/lastrun/cron.daily
29 4 * * 6 root rm -f /var/spool/cron/lastrun/cron.weekly
44 4 1 * * root rm -f /var/spool/cron/lastrun/cron.monthly
57 6 * * * root ~/ftploader >/var/log/squid-mess.log 2>&1
58 * * * * root /usr/sbin/ntpdate 192.168.3.2 >/var/log/ntpdate.log 2>&1
Все окончания строк - вставлены.
logrotate -
#!/bin/sh
/usr/sbin/logrotate /etc/logrotate.conf
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit 0
Проще скритпа не найти!
logrotate.conf -
# see "man logrotate" for details
# rotate log files weekly
weekly
# keep 4 weeks worth of backlogs
rotate 4
# create new (empty) log files after rotating old ones
create
# uncomment this if you want your log files compressed
compress
# uncomment these to switch compression to bzip2
#compresscmd /usr/bin/bzip2
#uncompresscmd /usr/bin/bunzip2
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d
# no packages own wtmp -- we'll rotate them here
#/var/log/wtmp {
# monthly
# create 0664 root utmp
# rotate 1
#}
# system-specific logs may be also be configured here.
Ну и соответственно -
squid для logrotate
/var/log/squid/cache.log {
compress
dateext
maxage 365
rotate 99
size=+1024k
notifempty
missingok
create 640 squid root
postrotate
/etc/init.d/squid reload
endscript
}
/var/log/squid/access.log {
compress
dateext
maxage 365
rotate 99
size=+4096k
notifempty
missingok
create 640 squid root
postrotate
/etc/init.d/squid reload
endscript
}
/var/log/squid/store.log {
compress
dateext
maxage 365
rotate 99
size=+4096k
notifempty
missingok
create 640 squid root
postrotate
/etc/init.d/squid reload
endscript
}
Вроде все правильно - но по какой то причине после ежедневной ротации логов squid перестает записывать access.log!
то есть логи не ведутся!
более того почемуто ротация приводит к тому что файлы не сжимаются а просто кидаются в папку с логами с именем access.log-20041110 (f должны сжиматься и имя соответственно должно быть access.log-20041110.gz!!!
Где искать ошибку?
С уважением schess.
PS наверное все-таки много написал.