Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 78 del 15/01/2023 18.16.45

Nascondi questo messaggio


Attenzione! Questa è una Pagina di prova. Le informazioni riportate potrebbero essere incomplete, errate e potenzialmente pericolose. Per contribuire alla realizzazione di questa pagina consultare la discussione di riferimento.

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Questa guida spiega le configurazioni di base per Logrotate, utilità di sistema che gestisce la rotazione automatica e la compressione dei file di log.
È preinstallata in Ubuntu, insieme agli altri strumenti che servono per il suo funzionamento, incluso il gestore di log di sistema rsyslog.

Descrizione

A intervalli di tempo predefiniti, i file di log vengono ruotati. Ciò vuol dire che vengono rinominati automaticamente e sostituiti da nuovi file, poi compressi con gzip allo scopo di ridurre lo spazio necessario alla loro memorizzazione, mantenendoli comunque disponibili per controlli futuri.

Il comando logrotate si occupa della rotazione dei file di log. Di norma logrotate viene lanciato a intervalli periodici dal servizio cron.

Le informazioni generali (versione, strumenti in uso per mail e compressione ecc.) possono essere ottenute con il comando:

logrotate --version

Configurazioni generali

Le configurazioni principali risiedono principalmente in due file:

  • /etc/logrotate.conf: contiene le configurazioni principali di logrotate e quelle della rotazione dei log non presenti nella directory /etc/logrotate.d/.

  • /etc/logrotate.d/: directory che contiene i file di configurazione dei log dei programmi che necessitano di essere ruotati. Comprende sia quelli relativi ai quelli installati dall'utente sia a quelli preinstallati di sistema (apt, dpkg, lightdm ecc.).

Di seguito un esempio del file /etc/logrotate.conf:

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

# use the adm group by default, since this is the owning group
# of /var/log/syslog.
su root adm

# keep 4 weeks worth of backlogs
rotate 4

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

# use date as a suffix of the rotated file
#dateext

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

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

# system-specific logs may be also be configured here.

Si noti che di default è configurata la rotazione settimanale (parametro weekly) con un file di log appartenente all'utente root e al gruppo syslog, con quattro file di conservati per volta (parametro rotate 4) e con nuovi file di registro vuoti creati dopo la rotazione di quello corrente (parametro create).

Di seguito vengono elencate alcune delle istruzioni più utili:

  • daily, weekly, monthly: indicano i tempi di rotazione.

  • rotate n: specifica il numero di copie dei file di log che devono essere mantenute in una successione di rotazioni. Il file eccedente verrà eliminato.

  • 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: permette di eseguire dei comandi precedentemente o successivamente alla rotazione.

Rotazione singole applicazioni

Come detto precedentemente i file di configurazioni per la rotazione delle singole app sono presenti nella directory /etc/logrotate.d/.
Seguono la sintassi seguente:

/var/log/nome_app.log {
        impostazione 1
        impostazione 2

Ad esempio per /etc/logrotate.d/dpkg:

/var/log/dpkg.log {
        monthly
        rotate 12
        compress
        delaycompress
        missingok
        notifempty
        create 644 root root
}

Il file /etc/logrotate.d/rsyslog contiene le impostazioni di log importanti di sistema, fra cui /var/log/syslog, /var/log/kern.log e /var/log/auth.log.

Esempio rotazione personalizzata

Applicazione che esegue rotazione giornaliera, con file si dimensione massima di 20 K, lasciando dieci copie: