Quando gestiamo server e computer client in qualsiasi tipo di luogo, una delle funzioni più pratiche e utili da utilizzare sono gli eventi che il sistema stesso crea sia per i suoi servizi e parametri, sia per le applicazioni installate e le attività che ciascun utente esegue. Eeto è utile per attività di supporto, auditing e controllo. Per gestire questo tipo di log o eventi in modo molto più completo, Linux integra uno strumento chiamato logrotate che consente la rotazione, la compressione, la cancellazione e l'invio automatici dei file di log, facilitando così le attività amministrative.
Solvetic spiegherà come installare e utilizzare logrotate su Linux.
Cos'è logrotateQuesto è uno strumento che è stato creato con l'obiettivo di poter gestire i sistemi in modo naturale creando grandi quantità di file di registro. Logrotate, quindi, consente la rotazione, la compressione, la cancellazione e l'invio automatici dei file di registro. La cosa migliore è la sua versatilità poiché ogni file di registro può essere gestito periodicamente o man mano che cresce. Per impostazione predefinita, logrotate viene eseguito come cron job giornaliero, che impedisce a un record di essere modificato più volte al giorno a meno che non venga specificato un criterio per quel record basato sulla dimensione di questo record e quindi logrotate deve essere eseguito più volte al giorno, o a meno che viene utilizzata l'opzione -fo --force.
Nella riga di comando di logrotate può essere presente un numero qualsiasi di file di configurazione, ma è normale utilizzare un singolo file di configurazione in cui sono inclusi tutti gli altri file di configurazione che devono essere analizzati. Se non vengono forniti argomenti della riga di comando, logrotate stamperà la versione e le informazioni sul copyright, insieme a un breve riepilogo del suo utilizzo.
Funzionalità di logrotazioneUtilizzando logrotate sarà possibile eseguire task come:
- avviare un nuovo file di registro in base a una pianificazione, ad esempio giornaliera, settimanale o mensile.
- Comprimi i vecchi file di registro per risparmiare spazio sul disco rigido.
- tagliare i vecchi file in modo da conservare solo un certo numero di vecchi record.
- rinominare i vecchi file di registro con una data in modo da sapere dove cercare i registri più vecchi.
- Esegue i comandi prima o dopo la rotazione di un recordset.
1. Installa logrotate su Ubuntu Linux
Passo 1
Di default logrotate è preinstallato sul sistema, in questo caso Ubuntu 18, ma in caso contrario possiamo installarlo con il seguente comando:
sudo apt install logrotate -y
Passo 2
Una volta installato logrotate su Ubuntu 18, sarà possibile verificare la versione di logrotate utilizzando il seguente comando:
sudo logrotate
2. Configura logrotate su Ubuntu Linux
Passo 1
Per impostazione predefinita, il file di configurazione principale di logrotate è "logrotate.conf" che si trova nella directory /etc/logrotate.conf. Altri file di configurazione sono disponibili in /etc/logrotate.d, sarà possibile elencarli con il seguente comando:
sudo ls /etc/logrotate.d
Passo 2
Possiamo vedere il contenuto del file di configurazione principale di logrotate eseguendo una delle seguenti opzioni:
cat /etc/logrotate.conf nano /etc/logrotate.conf
Passaggio 3
Le opzioni più essenziali in questo file sono:
Ruota i file di registro una volta alla settimana
settimanale (settimanale)
Archivia i log utilizzando utenti (root) e gruppi (syslog) specifici per evitare problemi con i permessi associati
su root syslog
Salva quattro vecchie versioni del file
ruota di 4
Salva il vecchio file con un nuovo nome e viene creato un nuovo file
creare
Comprimi i file di registro per risparmiare spazioQuesto viene fatto usando gzip per impostazione predefinita, ma è possibile specificare un altro programma se necessario.
comprimere
Assicurati che il contenuto della directory sia inclusoIn questa directory /etc/logrotate.d, ci sono file che specificano come gestire alcuni file di log individuali.
includere
Non genera un errore se manca il record principale
mancante
Non ruotare il file di registro quando è vuoto
notificavuota
Passaggio 4
Per impostazione predefinita, logrotate viene eseguito quotidianamente eseguendo lo script di shell /etc/cron.daily/logrotate, possiamo utilizzare la logrotation di Apache eseguendo il seguente comando:
sudo logrotate -d /etc/logrotate.d/apache2
INGRANDIRE
Passaggio 5
Per impostazione predefinita, logrotate viene eseguito come cron job giornaliero. Ogni file in /etc/logrotate.d viene utilizzato per aggiungere configurazioni aggiuntive o sovrascrivere le configurazioni predefinite per file specifici, nella cartella viene memorizzata anche la configurazione logrotate di qualsiasi pacchetto installato che necessita di rotazione del registro, possiamo eseguire quanto segue per vedere detto Contenuti:
ls -l /etc/logrotate.d
INGRANDIRE
Passaggio 6
Alcuni dei parametri da utilizzare con logrotate sono:
Attiva la modalità di debugAttiva la modalità di debug e implica -v. In modalità debug, non verranno apportate modifiche ai registri o al file di stato logrotate.
-d, --debug
Forza rotazioneDire a logrotate di forzare la rotazione, anche se non è necessario. e.
-f, --force
Prompt dei comandiDice a logrotate quale comando usare quando si inviano record per posta, quando si utilizza questo comando è necessario accettare due argomenti: 1) l'oggetto del messaggio e 2) il destinatario. Il comando dovrebbe leggere un messaggio sullo standard input e inviarlo al destinatario. Il comando di posta predefinito è /bin/mail -s.
-m, --mail
Indicatore di stato alternativoIndica a logrotate di utilizzare un file di stato alternativo, il file di stato predefinito è /var/lib/logrotate.status.
-s, --state
Stampa un breve messaggio d'uso
--utilizzo
Stampa un messaggio di aiuto
- ?, --aiuto
Attiva la modalità dettagliata
-v, --verboso
Quindi, abbiamo visto come usare logrotate per amministrare e gestire gli eventi in Ubuntu Linux in modo pratico.