Como faço para desativar mensagens ou fazer log de impressão no console / terminais virtuais?

25

Meu driver sem fio é barulhento. Ele imprime mensagens para o console a cada 10 a 30 segundos. Então, se estou trabalhando no VT1 ou algo assim, recebo mensagens rolando o tempo todo. Existe uma maneira de desligar esse recurso? Eu gosto de trabalhar nos terminais virtuais, mas isso dificulta o trabalho. :)

Alguma ideia?

    
por dpb 21.01.2012 / 03:57

3 respostas

33

Você pode usar o comando

sudo dmesg -n 1

para suprimir todas as mensagens do kernel (e seus drivers), exceto as mensagens de pânico que aparecem no console.

Para corrigir a cada inicialização, adicione o comando a:

/etc/rc.local
    
por oddfellow 21.01.2012 / 10:44
20

dmesg vem com duas opções úteis para isso:

-D, --console-off           disable printing messages to console
-E, --console-on            enable printing messages to console

dmesg -D é apenas um atalho para dmesg -n 1 , exceto pelo fato de armazenar o nível de registro atual, para que você possa restaurá-lo facilmente com dmesg -E . Portanto, é um pouco mais conveniente do que alterar o nível de log com dmesg -n .

Além disso, você pode verificar o nível de registro atual com:

$ cat /proc/sys/kernel/printk
7       4       1       7

man klogctl para mais explicações sobre esses números ...

    
por elboulangero 29.06.2015 / 00:02
4

/proc/sys/kernel/printk

Você também pode definir o nível de log diretamente com

echo 1 > /proc/sys/kernel/printk

que é basicamente o que o dmesg está fazendo.

O formato desse arquivo é explicado em: link

loglevel parâmetro de inicialização da linha de comando

Define o valor inicial no momento da inicialização.