logrotate w ubuntu 10.10 nie działa

Instalacja i konfiguracja oprogramowania sieciowego.
marcintpi
Sędziwy Jeż
Sędziwy Jeż
Posty: 55
Rejestracja: 02 lut 2007, 09:03
Płeć: Mężczyzna
Wersja Ubuntu: 11.10
Środowisko graficzne: Unity
Architektura: x86
Kontakt:

logrotate w ubuntu 10.10 nie działa

Post autor: marcintpi »

Witam
Mam taki problem na serwerze ubuntu 10.10
A więc sprawa wygląda tak w logrotate.conf mam

Kod: Zaznacz cały

# see "man logrotate" for details
# rotate log files weekly
weekly

# keep 4 weeks worth of backlogs
rotate 1

# create new (empty) log files after rotating old ones
create

# uncomment this if you want your log files compressed
#compress

# packages drop log rotation information into this directory
include /etc/logrotate.d

# no packages own wtmp, or btmp -- we'll rotate them here
/var/log/wtmp {
    missingok
    monthly
    compress
    create 0664 root utmp
    rotate 1
}

/var/log/btmp {
    missingok
    monthly
    create 0660 root utmp
    compress
    rotate 1
}
# system-specific logs may be configured here

/var/log/mail.log 
/var/log/mail.info 
/var/log/mail.warn 
/var/log/mail.err 
{
    missingok
    ifempty
    size 1M
    rotate 1
    notifempty
    create 640 root adm
    compress
    sharedscripts
    postrotate
		/etc/init.d/postfix reload > /dev/null
    endscript
}

/var/log/syslog 
{
    missingok
    ifempty
    size 1M
    rotate 1
    notifempty
    create 640 root adm
    compress
}
crontab

Kod: Zaznacz cały

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user	command
2 * * * * root    cd / && run-parts --report /etc/cron.hourly
17 5 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
57 5 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
48 5 3 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
Jednak logrotate nie uruchamia się codziennie dopiero gdy ręcznie w konsoli wklepe logrotate -f /etc/logrotate.conf to ładnie się logrotate wykona jednak wtedy w nowo utworzonych plikach np. mail.log logi się nie zapisują plik jest pusty do momentu zrestartowania serwera.

Proszę Was o pomoc w tej sprawie
Pozdrawiam
Awatar użytkownika
rob006
Wytworny Kaczor
Wytworny Kaczor
Posty: 417
Rejestracja: 28 paź 2007, 23:11
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64
Lokalizacja: Lublin
Kontakt:

Re: logrotate w ubuntu 10.10 nie działa

Post autor: rob006 »

Czy serwer działa 24/7, czy może go wyłączasz? Jak widzisz w cronie logrotate odpala się o 5 nad ranem, jesli komputer nie jest wtedy włączony, nie ma prawa działać. W takim wypadku pomocne jest zainstalowanie anacrona.
marcintpi
Sędziwy Jeż
Sędziwy Jeż
Posty: 55
Rejestracja: 02 lut 2007, 09:03
Płeć: Mężczyzna
Wersja Ubuntu: 11.10
Środowisko graficzne: Unity
Architektura: x86
Kontakt:

Re: logrotate w ubuntu 10.10 nie działa

Post autor: marcintpi »

Serwer działa oczywiście cały czas .
Poza tym że logrotate się nie uruchamia automatycznie zastanawia mnie dlaczego gdy uruchomie go z palca w nowo powstałym pliku logi się nie zapisują :-(
Awatar użytkownika
rob006
Wytworny Kaczor
Wytworny Kaczor
Posty: 417
Rejestracja: 28 paź 2007, 23:11
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: Unity
Architektura: x86_64
Lokalizacja: Lublin
Kontakt:

Re: logrotate w ubuntu 10.10 nie działa

Post autor: rob006 »

Kurcze, chyba też kiedyś miałem taki problem, tylko że mój serwer nie działał non stop (choć działał po kilka dni). Pamiętam że zainstalowałem anacrona, po jakimś czasie odinstalowałem, i nagle jakoś samo zaskoczyło...
Ubek308
Zakręcona Traszka
Zakręcona Traszka
Posty: 574
Rejestracja: 25 maja 2011, 10:17
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: logrotate w ubuntu 10.10 nie działa

Post autor: Ubek308 »

crontab jest a czy widzisz crond ?
moze sie wali z jakiegos powodu albo nie startuje ?
A plik /etc/cron.daily/logrotate istnieje ?

Przestaw sobie czas cron.daily z 5 rano na wtedy gdy siedzisz prze ekranie i popatrz co sie dzieje.
marcintpi
Sędziwy Jeż
Sędziwy Jeż
Posty: 55
Rejestracja: 02 lut 2007, 09:03
Płeć: Mężczyzna
Wersja Ubuntu: 11.10
Środowisko graficzne: Unity
Architektura: x86
Kontakt:

Re: logrotate w ubuntu 10.10 nie działa

Post autor: marcintpi »

Ubek308 pisze:crontab jest a czy widzisz crond ?
moze sie wali z jakiegos powodu albo nie startuje ?
A plik /etc/cron.daily/logrotate istnieje ?

Przestaw sobie czas cron.daily z 5 rano na wtedy gdy siedzisz prze ekranie i popatrz co sie dzieje.
Zrobię tak jak napisałeś, jednak tak jak wspominałem to że logrotate nie startuje sam to jeszcze nie taki wielki problem jakoś sobie z tym poradzę jednak większym problemem dla mnie jest to że po wykonaniu się logrotate w nowo powstałym pliku np. mail.log nic się nie zapisuje pewnie mam coś namotane w pliku logrotate.conf i właśnie o to was bardzo proszę jak miał by wyglądać wpis w logrotate.conf odnoszący sie do logów tworzonych przez serwer pocztowy postfix (mail.err mail.log itp) a jak dla syslog .

Mój plik logrotate.conf jest w pierwszym poście.

Pozdrawiam
Ubek308
Zakręcona Traszka
Zakręcona Traszka
Posty: 574
Rejestracja: 25 maja 2011, 10:17
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: GNOME
Architektura: x86_64

Re: logrotate w ubuntu 10.10 nie działa

Post autor: Ubek308 »

dopisz tam w sekcji miedzy {} slowo copytruncate i sprawdz czy pomoze.
marcintpi
Sędziwy Jeż
Sędziwy Jeż
Posty: 55
Rejestracja: 02 lut 2007, 09:03
Płeć: Mężczyzna
Wersja Ubuntu: 11.10
Środowisko graficzne: Unity
Architektura: x86
Kontakt:

Re: logrotate w ubuntu 10.10 nie działa

Post autor: marcintpi »

Ubek308 pisze:dopisz tam w sekcji miedzy {} slowo copytruncate i sprawdz czy pomoze.
Niestety nadal w pliku utworzonym przez logrotate nie zapisują się logi :/
Tak mam w logrotate.conf

Kod: Zaznacz cały

# see "man logrotate" for details
# rotate log files weekly
weekly

# keep 4 weeks worth of backlogs
rotate 1

# create new (empty) log files after rotating old ones
create

# uncomment this if you want your log files compressed
#compress

# packages drop log rotation information into this directory
include /etc/logrotate.d

# no packages own wtmp, or btmp -- we'll rotate them here
/var/log/wtmp {
    missingok
    monthly
    compress
    create 0664 root utmp
    rotate 1
}

/var/log/btmp {
    missingok
    monthly
    create 0660 root utmp
    compress
    rotate 1
}
# system-specific logs may be configured here
/var/log/mail.log
/var/log/mail.info
/var/log/mail.warn
/var/log/mail.err
{
    copytruncate
    missingok
    ifempty
    size 1M
    rotate 1
    notifempty
    create 640 root adm
    compress
	sharedscripts
	postrotate
		/usr/bin/killall -HUP syslogd
	endscript
}

/var/log/syslog
{
    copytruncate
    missingok
    ifempty
    size 1M
    rotate 1
    notifempty
    create 640 root adm
    compress
	sharedscripts
	postrotate
		/usr/bin/killall -HUP syslogd
	endscript
}
Jak miał by ktoś jakiś pomysł bardzo był bym wdzięczny za pomoc.

---------------------------------------------------------------------------
A więc nadszedł weekend miałem więcej czasu by sprawdzić co i jak mam pomieszane w logrotate i crontab :) i problem rozwiązałem, w sumie to fakt że logrotate się nie uruchamiał automatycznie to moje niedopatrzenie bo w pliku crontab nie miałem na końcu dodanej pustej linii a więc powinno być tak

Kod: Zaznacz cały

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user	command
2 * * * * root    cd / && run-parts --report /etc/cron.hourly
17 1 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
57 1 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
48 1 3 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
A wpis w logrotate conf dotyczący syslog i logów mail powinno być dopisane tak:

Kod: Zaznacz cały

/var/log/syslog
{
	rotate 2
	daily
	missingok
	size 1M
	notifempty
	delaycompress
	compress
	postrotate
		invoke-rc.d rsyslog reload > /dev/null
	endscript
}

/var/log/mail.info
/var/log/mail.warn
/var/log/mail.err
/var/log/mail.log
/var/log/messages
{
	rotate 2
	weekly
	missingok
	size 1M
	notifempty
	compress
	delaycompress
	sharedscripts
	postrotate
		invoke-rc.d rsyslog reload > /dev/null
	endscript
}
oczywiście można zmieniać ten plik dla swoich potrzeb :)
Efekt końcowy jest taki że logi mi nie powinny zbytnio zapchać dysku ;)

Pozdrawiam i dzięki wielkie za każdą poradę.
ODPOWIEDZ

Wróć do „Sieci, serwery, Internet”

Kto jest online

Użytkownicy przeglądający to forum: Amazon [Bot] i 29 gości