Untuk menyetel nilai saat runtime, gunakan sysctl
. (Saya kira seseorang dapat menulis ke /proc/sys/kernel/printk
langsung juga dan ternyata anda juga bisa menggunakan dmesg -n CUR
seperti yang dijelaskan di sini)
Tampilan:
# sysctl kernel.printk
kernel.printk = 2 4 1 7
Pemisah dalam output adalah tab tunggal, btw.
Mengatur. Di sini pemisah hanyalah spasi. Bekerja juga.
# sysctl -w kernel.printk="2 4 1 7"
kernel.printk = 2 4 1 7
# sysctl kernel.printk
kernel.printk = 2 4 1 7
Lihat man sysctl
- "konfigurasi parameter kernel saat runtime" untuk informasi lebih lanjut.
Pengingat tingkat keparahan dan empat nilai kernel.printk yang diberikan oleh Brian di atas:
- CUR =tingkat keparahan saat ini; hanya pesan yang lebih penting dari level ini yang dicetak
- DEF =tingkat keseriusan default yang ditetapkan untuk pesan tanpa tingkat
- MIN =CUR minimum yang diperbolehkan
- BTDEF =CUR default waktu boot
Di CentOS saya:7 4 1 7
CUR DEF MIN BTDEF
0 - emergency x x
1 - alert x x x
2 - critical x x
3 - error x x
4 - warning x x x
5 - notice x x
6 - informational V V
7 - debug
Ini terlalu berisik, saya hanya ingin kritis dan naik (tidak ada kesalahan). Pesan tanpa label harus dianggap sebagai peringatan, jadi DEF bagus:
CUR DEF MIN BTDEF
0 - emergency x x
1 - alert x x x
2 - critical x x
3 - error V V
4 - warning x
5 - notice
6 - informational
7 - debug
Setel ke:3 4 1 3
Saya sarankan Anda mengubah /etc/sysctl.conf
Anda . Khususnya, Anda ingin men-tweak baris kernel.printk.
# Uncomment the following to stop low-level messages on console
kernel.printk = 3 4 1 3
Saya tidak yakin apa pengaturan default centos, tetapi sepertinya saya memiliki hal-hal yang diatur lebih verbose dari yang Anda butuhkan.
Lihat juga bagian dinding pantai tentang penebangan. Anda tidak perlu menggunakan target LOG untuk mencatat log, Anda dapat menggunakan fitur lain, atau menyesuaikan tingkat keparahan log, dan menyesuaikan beberapa hal untuk mengontrol tujuan pesan Anda.
Saya menemukan ini membantu juga. Pada distro berbasis RHEL Anda dapat cat /proc/sys/kernel/printk
untuk melihat pengaturan Anda saat ini.
Empat nilai ditemukan dalam file printk. Setiap nilai ini menentukan aturan yang berbeda untuk menangani pesan kesalahan. Nilai pertama, yang disebut console loglevel, menentukan prioritas terendah dari pesan yang dicetak ke konsol. (Perhatikan bahwa, semakin rendah prioritasnya, semakin tinggi nomor loglevel-nya.) Nilai kedua menetapkan loglevel default untuk pesan tanpa loglevel eksplisit yang dilampirkan padanya. Nilai ketiga menetapkan konfigurasi loglevel serendah mungkin untuk loglevel konsol. Nilai terakhir menetapkan nilai default untuk loglevel konsol.
Penggunaan parameter LOGLEVEL di /etc/sysconfig/init untuk menyetel loglevel konsol tidak lagi didukung. Untuk menyetel loglevel konsol di Red Hat Enterprise Linux 6, berikan loglevel=' sebagai parameter waktu boot. Misalnya, loglevel=6 akan mencetak semua pesan kurang dari 6 (tidak sama dengan hanya kurang dari).
Kredit ke:
- RHEL 6 - E.3.9. /proc/sys/
- Linuxtopia - Level Log Kernel