LOGROTATE – ARCHIWIAZACJA LOGÓW
Rosnące logi na dysku potrafią zniechęcić każdego administratora do logów. Pomocą tutaj okazuje się program Logrotate który pozwala w ładny sposób administrować logami.
Konfiguracja programu odbywa się na dwa sposoby. Opcje globalne oraz niezbędne dyrektywy dla kilku plików logów są zdefiniowane w pliku /etc/logrotate.conf. Dodatkowe procedury dla programów instalowanych z pakietów są zdefiniowane w plikach w katalogu /etc/logrotate.d
Opcje globalne (domyślne)
Pliki można archiwizować tygodniowo (weekly) lub co miesiąc (monthly). Nie należy trzymać w nieskończoność ich ale powinno się określić czas jak długo są przechowywane. Pomaga tutaj dyrektywa rotate określająca jak długo są one trzymane (w jednostce czasu określonej poprzednio). Najlepiej pliki archiwalne trzymać spakowane (compress). Wygodnie jest również trzymać dodatkowe include /etc/logrotate.d definicje dla programów w osobnym katalogu include nazwa_katalogu, korzystają z tego programy instalowane z pakietów.
Te wymagania spełnia poniższy plik (domyślny dla dystrybucji Mandriva; tłumaczenia własne).
# /etc/logrotate # see "man logrotate" for details # pliki domyślnie są archiwizowane co tydzień weekly # pliki logów są trzymane 4 tygodnie rotate 4 # na miejsce zarchiwizowanych logów tworzone są nowe pliki create # pliki archiwalnych logów powinny być archiwizowane compress # dodatkowe procedury dla programów instalowanych z pakietów # są zdefiniowane w plikach w katalogu /etc/logrotate.d include /etc/logrotate.d
Przykładowe definicje
Plik wtmp jest archiwizowany co miesiąc a logi są trzymane także przez miesiąc.
/var/log/lastlog { monthly rotate 1 }
Plik lastlog jest archiwizowany co miesiąc a logi są trzymane także przez miesiąc. Nowy plik logów o nazwie utmp tworzony jest z uprawnieniami roota i prawami dostępu 0644 ( prawo zapisu u odczytu dla roota, dla grupy oraz innych tylko prawo odczytu).
/var/log/wtmp { monthly create 0664 root utmp rotate 1 }