Logrotate e la rotazione dei log
I vari demoni di sistema registrano in appositi file gli eventi degni di nota per futura memoria. Nelle moderne distribuzioni i programmi più diffusi per questo scopo sono journald e rsyslogd. Come è facile intuire, la dimensione dei file di log è direttamente proporzionale alla frequenza e alla verbosità delle registrazioni chiamate dai processi. Serve quindi un qualcosa per manutenerli, evitando così la saturazione di intere partizioni.
Per effettuare la rotazione dei file di registro, è stato creato un apposito programma chiamato logrotate. Configurarlo ci permette di automatizzare una serie di operazioni quali la compressione dei file di registro o la rimozione delle loro versioni obsolete. Le direttive per il suo funzionamento generale sono contenute, come suole, nel file /etc/logrotate.conf.
Riassumiamo le principali istruzioni:
-
daily, weekly, monthly: indicano i tempi di rotazione;
-
rotate n: specifica il numero n di copie dei file di log che devono essere mantenute in una successione di rotazioni. Il file n+1 esimo sarà cancellato;
-
create: crea un nuovo file di log vuoto al termine della rotazione;
-
compress: comprime le vecchie versioni del file di log tramite gzip;
-
prerotate, postrotate: per eseguire dei comandi precedentemente o successivamente una rotazione.