I file di LOG: Syslog | ALTRI capitoli | ||||
I file di LOG di Linux si trovano nella directory:
Esistono vari comandi per poterli leggere:
La gran parte dei file di LOG sono controllati da un demone, chiamato:
anche se esistono alcuni file non gestiti dal demone, quali:
file binari che approfondiremo nelle pagine successive. Un demone, lo ricordiamo, è semplicemente un programma che, lanciato, solitamente, in fase di startup del sistema operativo, resta in esecuzione durante l'intera sessione. Una volta in esecuzione il demone
è possibile dire a
per i sistemi operativi Debian-based (Ubuntu incluso), oppure:
per i sistemi operativi Redhat-based, quali CentOS o Rhel, dove vengono memorizzati i messaggi non specifici ad un sottosistema ed i messaggi informativi sul sistema operativo, come specificato nella direttiva contenuta nel file di configurazione
che indica: esegui il LOG di tutti i messaggi, salvandoli nel file indicato, qualsiasi priorità abbiano associata, eccetto i messaggi apparetenenti alle categorie auth, authpriv (ai quali, probabilmente, verrà riservata una riga successiva nel file di configurazione). Cosa significa quel trattino posto prima del nome del file di destinazione? Che differenza c'è tra le due seguenti sintassi?
Nel secondo esempio, il trattino indica al demone
in testa al file di configurazione:
Ma, partiamo dall'inizio. Il kernel invia i suoi messaggi di LOG ad un buffer di memoria circolare (ring buffer), una struttura di dati di tipo first-in-first-out (FIFO). La ragione dell'utilizzo del ring buffer è che i messaggi di LOG prodotti nel corso dello startup del sistema operativo devono essere conservati fino all'esecuzione del demone
Il file virtuale utilizza la funzione:
resa disponibile dal kernel, per accedere al buffer circolare. Il contenuto del buffer circolare può essere visualizzato con il comando:
oppure, non appena il demone
Tutti i messaggi di LOG che non provengono dal kernel vengono inviati direttamente al demone
Le dimensioni del buffer circolare sono definite dal parametro di configurazione del kernel: CONFIG_LOG_BUF_SHIFT, il cui valore di default è 14, che indica il numero di byte complessivi:
cioè: 16KB. Le dimensioni del messaggio di LOG, invece, non possono superare 1 KB. Ecco un esempio di invio di un messaggio di LOG da parte del kernel:
Il kernel chiede di classificare ciascun messaggio, assegnandogli un livello di importanza/priorità (uno di otto disponibili), che ne definisce l'urgenza. Il codice del kernel si attende il livello di LOG come primo argomento della chiamata alla funzione
|
|||||
I file di LOG: Syslog | Le guide di .bit: contenuto originale |