Para definir os valores em tempo de execução, use sysctl
. (Eu suponho que alguém pode escrever para /proc/sys/kernel/printk
diretamente também e aparentemente você também pode usar dmesg -n CUR
como descrito aqui )
Exibição:
# sysctl kernel.printk
kernel.printk = 2 4 1 7
Os separadores na saída são guias únicas, por exemplo.
Definir. Aqui os separadores são apenas espaços. Funciona também.
# sysctl -w kernel.printk="2 4 1 7"
kernel.printk = 2 4 1 7
# sysctl kernel.printk
kernel.printk = 2 4 1 7
Veja man sysctl
- "configurar parâmetros do kernel em tempo de execução" para mais.
Lembrete dos níveis de severidade e os quatro valores de kernel.printk dados por Brian acima:
- CUR = nível de gravidade atual; somente mensagens mais importantes que esse nível são impressas
- DEF = nível de gravidade padrão atribuído a mensagens sem nível
- MIN = CUR mínimo permitido
- BTDEF = CUR padrão de inicialização
No meu CentOS: 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
Isso é muito barulhento, eu só quero crítico e para cima (sem erros). Mensagens não rotuladas devem ser consideradas como aviso, então DEF é bom:
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
Defina como: 3 4 1 3