От няколко дена се боря с конфигурирането на logrotate i
crontab но явно съм тъп и не зацепвам нещо... прочетох секви
манове, хелпове но без ефект... искам да направя следното
нещо: за всеки ден от седмицата да се създава компресиран
архив за maillog messages secure syslog cron логовете след
което да се трият и т.н. (пробвах и да направя за всеки ден
на всеки час да се създава архив)
Това е logrotate.conf файла ми:
# see "man logrotate" for details
# rotate log files weekly
weekly
# keep 7 weeks worth of backlogs
rotate 7
# create new (empty) log files after rotating old ones
create
# uncomment this if you want your log files compressed
compress
# 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
съответно ето и съдържанието на /etc/logrotate.d:
cups* httpd mysqld named rpm samba snmpd squid
syslog tux up2date uucp vsftpd.log yum
и на syslog файла:
var/log/messages /var/log/secure /var/log/maillog /var/
log/spooler /var/log/boot.log /var/log/cron {
sharedscripts
postrotate
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/
null` 2> /dev/null || true
endscript
}
Доколкото разбрах за да се изпълнява логротате трябва да е
сложен като задача в кронтаб - направил съм го по следния
начин:
Това е /etc/crontab файла ми:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
01 0 * * * root run-parts /etc/cron.daily
01 0 * * 0 root run-parts /etc/cron.weekly
01 0 1 * * root run-parts /etc/cron.monthly
а това е съдържанието на /etc/cron.weekly/logrotate:
#!/bin/sh
/usr/sbin/logrotate /etc/logrotate.conf
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
/usr/bin/logger -t logrotate "ALERT exited abnormally
with [$EXITVALUE]"
fi
exit 0
Пичове, наистина съм се нервирал защото мисля че съм сетнал
всичко както трябва, но явно греша : ) Не става нищо -
изпълнява се веднъж логротате от кронтаба, създават се
веднъж maillog.1.gz messages.1.gz secure.1.gz и т.н. и до
тук - по натам не се създават никви други файлове на
следващия ден, по-следващия ден и т.н. .. все едно нищо.
Пробвах да направя daily с rotate 24 (мисля че тва означава
в часа на стартиране на задачата от кронтаб до следващото и
изпъление на следващия ден да се създадат 24 файла - по 1
на всеки час) но пак същата работа - през деня не се
създават никви файлове .гз
Явно не зацепвам начина по който бачка логротате и нещо ми
се губи (както си трябва при всяка промяна рестартирам кронд
и сислогд, за дейли сложих логротате в /етц/крон.дейли )
Ако някой се сеща къв ми е проблема .... помогнете :)
много благодаря
azonic racing dh team
|