Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2014-04-02 08:04:21

  siarka2107 - Użyszkodnik DUG

siarka2107
Użyszkodnik DUG
Skąd: Warszawa
Zarejestrowany: 2006-04-05

logrotate i ldap

zrobiłem rotację logów dla swojego serwera według poniższego:

Kod:

/var/log/ldap.log {
    daily
    dateext
    dateyesterday
    missingok
    notifempty
    compress
    create
    sharedscripts
    postrotate
        /etc/init.d/rsyslog restart > /dev/null
    endscript
}

rotacja zamiast odbywać się równo o 00:00 odbywa się około 4-5 nad ranem, co dziwniejsze w syslogu nie widać aby cron.daily był odpalany ani o 00 ani koło 4-5, jedyny wpis z cron.daily to:

Kod:

Apr  2 06:25:01 debian /USR/SBIN/CRON[28306]: (root) CMD (test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ))

w /etc/cron.daily/logrotate mam:

Kod:

#!/bin/sh

test -x /usr/sbin/logrotate || exit 0
/usr/sbin/logrotate /etc/logrotate.conf

pytanie co może być przyczyną takiego zachowania?

Offline

 

#2  2014-04-02 14:28:22

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: logrotate i ldap

Jak koniecznie chcesz o północy, to możesz zawsze ustawić (zamiast skrypta) wpis określający wykonanie polecenia o dokładnej godzinie.

Przykładowo:

Kod:

0  0  * * *    root     /usr/local/sbin/logrotate.sh

Skrypt logrotate?
U mnie (Gentoo):

Kod:

cat /etc/cron.daily/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

EDIT:
Możesz też sobie wypełnić zmienną:

Kod:

MAILTO="siarka@domena.tld"

w /etc/crontab
i Cron będzie grzecznie zawiadamiał o każdej podjętej akcji, wysyłając wyjście poleceń mailem na wskazany w zmiennej adres.

Pozdro
;-)

Ostatnio edytowany przez Jacekalex (2014-04-02 14:49:46)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#3  2014-04-02 17:02:13

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: logrotate i ldap

Przestaw sobie wykonywanie cron.daily w /etc/crontab: :

Kod:

# m h dom mon dow user    command
17 *    * * *    root    cd / && run-parts --report /etc/cron.hourly
25 19    * * *    root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 19    * * 7    root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 19    1 * *    root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#

Offline

 

#4  2014-04-03 07:52:08

  siarka2107 - Użyszkodnik DUG

siarka2107
Użyszkodnik DUG
Skąd: Warszawa
Zarejestrowany: 2006-04-05

Re: logrotate i ldap

ustawiłem rotowanie logów w crontabie na 0 0 no i widzę że działa... kolejne sprawy to:
- po rotacji logów apache nie wznawia logowania, mój config:

Kod:

/var/log/apache2/*.log {
    daily
    dateext
    dateyesterday
    missingok
    compress
    notifempty
    create 640 root adm
    sharedscripts
    postrotate
        if [ -f /var/run/apache.pid ]; then
            /usr/sbin/apachectl graceful > /dev/null
        fi
    endscript
}

próbowałem również z /etc/init.d/apache2 restart, jednak nie przyniosło to oczekiwanego rezultatu, a co jeszcze dziwniejsze jak odpale po rotacji logów  /etc/init.d/apache2 restart logowanie jest wznawiane

- co 2 h zrzucam za pomocą polecenia:

Kod:

/usr/sbin/slapcat -l /root/ldap/backup/backup-`date "+\%Y\%m\%d\%H\%M"` > /dev/null 2>&1

do pliku bazę ldap, jednak za każdym razem jak to robię czyszczony jest log ldap - co może być tego przyczyną...?

Offline

 

#5  2014-04-03 14:04:52

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/random
Zarejestrowany: 2008-01-07

Re: logrotate i ldap

Apache - domyślnie w Debku Jessie:

Kod:

cat /etc/logrotate.d/apache2

Kod:

/var/log/apache2/*.log {
    weekly
    missingok
    rotate 52
    compress
    delaycompress
    notifempty
    create 640 root adm
    sharedscripts
    postrotate
                if /etc/init.d/apache2 status > /dev/null ; then \
                    /etc/init.d/apache2 reload > /dev/null; \
                fi;
    endscript
    prerotate
        if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
            run-parts /etc/logrotate.d/httpd-prerotate; \
        fi; \
    endscript
}

Ostatnio edytowany przez Jacekalex (2014-04-03 14:05:40)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#6  2014-04-08 18:08:22

  siarka2107 - Użyszkodnik DUG

siarka2107
Użyszkodnik DUG
Skąd: Warszawa
Zarejestrowany: 2006-04-05

Re: logrotate i ldap

po dodaniu sekcji postrotate i prerotate z postu @Jacekalex rotacja przebiega już prawidłowo

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)