Differenza tra / var / log / messages, / var / log / syslog e /var/log/kern.log?


68

Ai fini della registrazione del kernel, perché ho tre diversi livelli, non inclusivo di logging tra /var/log/messages, /var/log/sysloge /var/log/kern.log?


Si noti che / var / log / messages è il syslog su sistemi non Debian / non Ubuntu come RHEL o CentOS.
Thomas Ward

Si noti che si journalctlsta lentamente sostituendo syslogcome andare alla risorsa per il monitoraggio dei messaggi di sistema.
WinEunuuchs2Unix,

Risposte:


52

Syslog è una funzione di registrazione standard. Raccoglie i messaggi di vari programmi e servizi incluso il kernel e li memorizza, a seconda della configurazione, in un gruppo di file di registro in genere sotto /var/log. In alcune configurazioni del datacenter ci sono centinaia di dispositivi ciascuno con il proprio registro; syslog è utile anche qui. Uno crea un server syslog dedicato che raccoglie tutti i registri dei singoli dispositivi sulla rete. Syslog può anche salvare i log nei database e in altri client.

Secondo me /etc/syslog.conf, il default /var/log/kern.logcattura solo i messaggi del kernel di qualsiasi livello di Google; cioè l'uscita di dmesg.

/var/log/messagesmira invece a memorizzare messaggi preziosi, non di debug e non critici. Questo registro deve essere considerato il registro "attività di sistema generale".

/var/log/syslog a sua volta registra tutto, tranne i messaggi relativi all'autorizzazione.

Altri ceppi standard di insteresting gestiti da syslog sono /var/log/auth.log, /var/log/mail.log.

Per quanto riguarda la tua domanda: se hai bisogno solo del registro dei messaggi del kernel, usa kern.logo call dmesg.


1
qualche riferimento alle tue affermazioni per favore?
Goaler444

8
@ Goaler444, man syslog.conf.
Ulidtko,

2
Nota che le voci nel buffer dell'anello del kernel (cosa legge dmesg) non lo trasformeranno in alcun file / var / log per impostazione predefinita se sono state scritte da un processo dello spazio utente. È necessario impostare $KLogPermitNonKernelFacility onla configurazione di rsyslogd se si desidera visualizzare tali messaggi /var/log. Vedi la mia risposta su askubuntu.com/a/490900/297973 per maggiori dettagli.
Vanessa Phipps,

7
vale anche la pena notare che Ubuntu ( dal momento che natty ) non utilizza più /var/log/messagese memorizza tutto su/var/log/syslog
jackbravo

1
in Ubuntu 16.04 /var/log/syslogè davvero un superset netto /var/log/kern.logcon l'avvertimento che si deve tenere conto delle diverse strategie di rotazione. Ad esempio, nel mio sistema (configurazione di default invariato) i messaggi di ieri di oggi e sono tenuti in un unico file in /var/log/kern.log, mentre la maggior parte dei messaggi di ieri per syslogsono in /var/log/syslog.1.
Marco Junius Bruto

12
  • syslog contiene tutti i messaggi tranne il tipo auth.
  • i messaggi contiene solo messaggi generici non critici. La categoria è info, noticeewarn
  • Per un registro completo, guarda /var/log/sysloge/var/log/auth.log
  • AFAIK /var/log/kern.logcontiene messaggi del kernel.
  • i file di registro sono solo una convenzione spiegata in /etc/syslog.conf
  • leggi syslog(3)per maggiori informazioni

Controlla questa pagina sulle differenze tra messaggi e syslog

dice /var/log/messages /var/log/syslog


1
Il link che hai fornito è interrotto.
slm,


4
Duplicando il commento una risposta di ulidtko: vale anche la pena notare che Ubuntu ( dal momento che natty ) non utilizza più /var/log/messagese memorizza tutto su/var/log/syslog
jackbravo
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.