|
Dimensione: 4885
Commento:
|
Dimensione: 5686
Commento:
|
| Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
| Linea 10: | Linea 10: |
| Questa guida spiega le configurazioni di base per '''Logrotate''', utilità di sistema che gestisce la rotazione automatica e la compressione dei [[AmministrazioneSistema/LogDiSistema|file di log]].<<BR>> È preinstallata in Ubuntu, insieme agli altri strumenti che servono per il suo funzionamento, incluso il gestore di log di sistema '''rsyslog'''. |
Questa guida spiega le configurazioni di base per '''logrotate''', utilità di sistema che gestisce la rotazione automatica e la compressione dei [[AmministrazioneSistema/LogDiSistema|file di log]].<<BR>> È preinstallata in Ubuntu, come '''rsyslog''' e gli altri strumenti che servono per il suo funzionamento dei log di sistema. |
| Linea 15: | Linea 15: |
| 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. | 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. |
| Linea 25: | Linea 25: |
| Le configurazioni principali risiedono principalmente in due file: | Le configurazioni di '''logrotate''' risiedono principalmente in due file: |
| Linea 27: | Linea 27: |
| * '''`/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.). |
* '''`/etc/logrotate.conf`''': contiene le configurazioni principali di logrotate, fra cui le istruzioni sulla rotazione dei file di log, se non diversamente specificato nei file 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 (sia quelli installati dall'utente. sia a quelli preinstallati di sistema come apt, dpkg, ecc.). |
| Linea 30: | Linea 30: |
| Di seguito un esempio del file `/etc/logrotate.conf`:{{{ | Di seguito un esempio di file `/etc/logrotate.conf`:{{{ |
| Linea 60: | Linea 60: |
| = Parametri = |
|
| Linea 62: | Linea 64: |
| * '''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. |
||<:-2 #cccccc>'''Parametro'''|| ||<#f7f7f7> '''daily, weekly, monthly''' || Frequenza della rotazione (giornaliera, settimanale, mensile). || ||<#f7f7f7> '''rotate [n]''' || specifica il numero di copie dei file di log che devono essere mantenute nelle successive rotazioni. Il file eccedente verrà eliminato. || ||<#f7f7f7> '''create''' || Crea un nuovo file di log vuoto al termine della rotazione. || ||<#f7f7f7> '''compress''' || Comprime le vecchie versioni del file di log tramite gzip. || ||<#f7f7f7> '''delaycompress''' || Rimanda la compressione alla successiva esecuzione di logrotate. || ||<#f7f7f7> '''prerotate''' || Eseguire un comando/programma prima della rotazione. || ||<#f7f7f7> '''postrotate''' || Eseguire un comando/programma dopo la rotazione. || ||<#f7f7f7> '''size [dimensione]''' || Imposta un limite raggiunto il quale il file viene ruotato. || |
| Linea 71: | Linea 77: |
| Seguono la sintassi seguente:{{{ | Di seguito un esempio del contenuto della cartella:{{{ ls /etc/logrotate.d/ alternatives bootlog cups-daemon rsyslog apport ubuntu-advantage-tools unattended-upgrades apt btmp dpkg ppp speech-dispatcher ufw wtmp }}} I vari file nella directory seguono la sintassi seguente:{{{ |
| Linea 77: | Linea 89: |
| Ad esempio per `/etc/logrotate.d/dpkg`:{{{ | Un esempio per `/etc/logrotate.d/apache2` potrebbe essere il seguente:{{{ |
| Linea 79: | Linea 91: |
| monthly rotate 12 compress delaycompress missingok notifempty create 644 root root |
weekly rotate 3 size 10M compress delaycompress |
| Linea 95: | Linea 105: |
| Applicazione che esegue rotazione giornaliera, con file si dimensione massima di 20 K, lasciando dieci copie:{{{ | Applicazione che esegue rotazione giornaliera, con file si dimensione massima di 200 MB, lasciando dieci copie:{{{ |
| Linea 103: | Linea 113: |
| size 20k | size 200M |
| Linea 108: | Linea 118: |
| }}} | |
| Linea 113: | Linea 124: |
| * /etc/cron.hourly ##(casi estremi?) |
* /etc/cron.hourly (casi estremi?) |
| Linea 123: | Linea 133: |
| * [[https://linux.die.net/man/8/logrotate|Linux man page]] | |
| Linea 127: | Linea 138: |
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, come rsyslog e gli altri strumenti che servono per il suo funzionamento dei log di sistema.
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 di logrotate risiedono principalmente in due file:
/etc/logrotate.conf: contiene le configurazioni principali di logrotate, fra cui le istruzioni sulla rotazione dei file di log, se non diversamente specificato nei file 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 (sia quelli installati dall'utente. sia a quelli preinstallati di sistema come apt, dpkg, ecc.).
Di seguito un esempio di 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).
Parametri
Di seguito vengono elencate alcune delle istruzioni più utili:
Parametro |
|
daily, weekly, monthly |
Frequenza della rotazione (giornaliera, settimanale, mensile). |
rotate [n] |
specifica il numero di copie dei file di log che devono essere mantenute nelle successive 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. |
delaycompress |
Rimanda la compressione alla successiva esecuzione di logrotate. |
prerotate |
Eseguire un comando/programma prima della rotazione. |
postrotate |
Eseguire un comando/programma dopo la rotazione. |
size [dimensione] |
Imposta un limite raggiunto il quale il file viene ruotato. |
Rotazione singole applicazioni
Come detto precedentemente i file di configurazioni per la rotazione delle singole app sono presenti nella directory /etc/logrotate.d/.
Di seguito un esempio del contenuto della cartella:
ls /etc/logrotate.d/ alternatives bootlog cups-daemon rsyslog apport ubuntu-advantage-tools unattended-upgrades apt btmp dpkg ppp speech-dispatcher ufw wtmp
I vari file nella directory seguono la sintassi seguente:
/var/log/nome_app.log {
impostazione 1
impostazione 2Un esempio per /etc/logrotate.d/apache2 potrebbe essere il seguente:
/var/log/dpkg.log {
weekly
rotate 3
size 10M
compress
delaycompress
}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 200 MB, lasciando dieci copie:
/var/log/[mio_programma].log
{
daily
missingok
rotate 10
compress
notifempty
size 200M
compress
create 0600 root root
endscript
}
Cron
Script in:
- /etc/cron.daily/logrotate
- /etc/cron.hourly (casi estremi?)
Risoluzione dei problemi
[testo]
Ulteriori risorse
https://docs.rackspace.com/support/how-to/understanding-logrotate-utility/
https://docs.rackspace.com/support/how-to/sample-logrotate-configuration-and-troubleshooting
