Perbedaan antara / var / log / messages, / var / log / syslog, dan /var/log/kern.log?
68
Untuk keperluan kernel logging, mengapa saya memiliki tiga yang berbeda, tingkat non-termasuk logging di antara /var/log/messages, /var/log/syslogdan /var/log/kern.log?
Perhatikan bahwa / var / log / messages adalah syslog pada sistem non-Debian / non-Ubuntu seperti sistem RHEL atau CentOS biasanya.
Thomas Ward
Catatan yang journalctlperlahan diganti syslogsebagai sumber daya untuk memonitor pesan sistem.
WinEunuuchs2Unix
Jawaban:
52
Syslog adalah fasilitas logging standar. Ia mengumpulkan pesan dari berbagai program dan layanan termasuk kernel, dan menyimpannya, tergantung pada pengaturan, dalam banyak file log yang biasanya ada di bawah /var/log. Dalam beberapa pengaturan pusat data ada ratusan perangkat masing-masing dengan lognya sendiri; syslog juga berguna di sini. Satu hanya menyiapkan server syslog khusus yang mengumpulkan semua log perangkat individu melalui jaringan. Syslog juga dapat menyimpan log ke database, dan klien lain.
Menurut saya /etc/syslog.conf, default /var/log/kern.loghanya menangkap pesan kernel dari sembarang loglevel; yaitu output dari dmesg.
/var/log/messagesalih-alih bertujuan menyimpan pesan yang berharga, non-debug, dan tidak-kritis. Log ini harus dianggap sebagai log "aktivitas sistem umum".
/var/log/syslog pada gilirannya mencatat segalanya, kecuali pesan terkait auth.
Lainnya log insteresting standar dikelola oleh syslog yang /var/log/auth.log, /var/log/mail.log.
Mengenai pertanyaan Anda: jika Anda hanya perlu log pesan kernel, gunakan kern.logatau panggil dmesg.
Perhatikan bahwa entri dalam buffer cincin kernel (apa yang dibaca dmesg) tidak akan membuatnya menjadi file / var / log secara default jika itu ditulis oleh proses ruang pengguna. Anda perlu mengatur $KLogPermitNonKernelFacility onkonfigurasi rsyslogd jika Anda ingin melihat pesan-pesan itu /var/log. Lihat jawaban saya di askubuntu.com/a/490900/297973 untuk lebih jelasnya.
Vanessa Phipps
7
juga patut dicatat bahwa ubuntu ( karena rapi ) tidak lagi digunakan /var/log/messages, dan menyimpan semuanya di/var/log/syslog
jackbravo
1
di Ubuntu 16.04 /var/log/syslogmemang superset bersih /var/log/kern.logdengan peringatan bahwa seseorang harus memperhitungkan strategi rotasi yang berbeda. Misalnya dalam sistem saya (konfigurasi default tidak berubah) pesan hari ini dan kemarin disimpan dalam satu file di mana /var/log/kern.logsebagian besar pesan kemarin untuk syslogberada di /var/log/syslog.1.
Marcus Junius Brutus
12
syslog berisi semua pesan kecuali dari tipe auth.
pesan hanya berisi pesan umum non-kritis. Kategori ini adalah info, noticedanwarn
Untuk log lengkap lihat /var/log/syslogdan/var/log/auth.log
AFAIK /var/log/kern.logberisi pesan-pesan kernel.
file log hanyalah sebuah konvensi yang dijabarkan di /etc/syslog.conf
Menggandakan komentar dan jawaban ulidtko: juga patut dicatat bahwa ubuntu ( karena rapi ) tidak lagi digunakan /var/log/messages, dan menyimpan semuanya di/var/log/syslog
journalctl
perlahan digantisyslog
sebagai sumber daya untuk memonitor pesan sistem.Jawaban:
Syslog adalah fasilitas logging standar. Ia mengumpulkan pesan dari berbagai program dan layanan termasuk kernel, dan menyimpannya, tergantung pada pengaturan, dalam banyak file log yang biasanya ada di bawah
/var/log
. Dalam beberapa pengaturan pusat data ada ratusan perangkat masing-masing dengan lognya sendiri; syslog juga berguna di sini. Satu hanya menyiapkan server syslog khusus yang mengumpulkan semua log perangkat individu melalui jaringan. Syslog juga dapat menyimpan log ke database, dan klien lain.Menurut saya
/etc/syslog.conf
, default/var/log/kern.log
hanya menangkap pesan kernel dari sembarang loglevel; yaitu output daridmesg
./var/log/messages
alih-alih bertujuan menyimpan pesan yang berharga, non-debug, dan tidak-kritis. Log ini harus dianggap sebagai log "aktivitas sistem umum"./var/log/syslog
pada gilirannya mencatat segalanya, kecuali pesan terkait auth.Lainnya log insteresting standar dikelola oleh syslog yang
/var/log/auth.log
,/var/log/mail.log
.Mengenai pertanyaan Anda: jika Anda hanya perlu log pesan kernel, gunakan
kern.log
atau panggildmesg
.sumber
man syslog.conf
,.$KLogPermitNonKernelFacility on
konfigurasi rsyslogd jika Anda ingin melihat pesan-pesan itu/var/log
. Lihat jawaban saya di askubuntu.com/a/490900/297973 untuk lebih jelasnya./var/log/messages
, dan menyimpan semuanya di/var/log/syslog
/var/log/syslog
memang superset bersih/var/log/kern.log
dengan peringatan bahwa seseorang harus memperhitungkan strategi rotasi yang berbeda. Misalnya dalam sistem saya (konfigurasi default tidak berubah) pesan hari ini dan kemarin disimpan dalam satu file di mana/var/log/kern.log
sebagian besar pesan kemarin untuksyslog
berada di/var/log/syslog.1
.info
,notice
danwarn
/var/log/syslog
dan/var/log/auth.log
/var/log/kern.log
berisi pesan-pesan kernel.syslog(3)
untuk informasi lebih lanjutPeriksa halaman ini tentang perbedaan antara pesan dan syslog
katanya
/var/log/messages
⊂/var/log/syslog
sumber
/var/log/messages
, dan menyimpan semuanya di/var/log/syslog