Estou usando o Centos 6, log de rsyslog. O console é inundado com mensagens do kernel.
- O Klogd não está funcionando (estou usando o rsyslog)
- A configuração do Rsyslog não direciona nada para o console
- Até tentou parar o rsyslog completamente
Ainda algo está inundando meu console com mensagens de log do kernel. O que é e como faço para parar?
Atualização : Estas são as mensagens geradas pelo kernel (hardware, iptables, etc.), coisas que saem /proc/kmsg
assim:
Shorewall: pub2loc: GOTA: IN = br0 OUT = MAC = xxx SRC = xxx DST = xxx LEN = 60 TOS = 0x00 PREC = 0x00 TTL = 128 ID = 15731 PROTO DF = TCP SPT = 63767 DPT = 3493 WINDOW = 8192 RES = 0x00 SYN URGP = 0
xterm
janela, por isso, se o console estiver inundado, isso não me incomoda.) #Respostas:
Eu sugiro que você altere o seu
/etc/sysctl.conf
. Especificamente, você deseja ajustar a linha kernel.printk .Não tenho certeza de quais são as configurações padrão do centos, mas parece provável que as coisas sejam definidas com mais detalhes do que você precisa.
Veja também a seção shorewall no registro. Você não precisa usar o destino LOG para fazer logon, pode usar outras ferramentas ou ajustar a gravidade do log e ajustar as coisas para controlar para onde as mensagens vão.
fonte
Para definir os valores em tempo de execução, use
sysctl
. (Suponho que se possa escrever/proc/sys/kernel/printk
diretamente também e, aparentemente, você também pode usardmesg -n CUR
como descrito aqui )Exibição:
Os separadores na saída são guias únicas, btw.
Conjunto. Aqui os separadores são apenas espaços. Funciona também.
Veja
man sysctl
- "configurar parâmetros do kernel em tempo de execução" para mais.Lembrete dos níveis de gravidade e dos quatro valores de kernel.printk fornecidos por Brian acima:
No meu CentOS: 7 4 1 7
Isso é muito barulhento, eu só quero críticas e até (sem erros). Mensagens sem rótulo devem ser consideradas como aviso, portanto a DEF é boa:
Defina para: 3 4 1 3
fonte
man klogctl
também explica os níveis.Achei isso útil também. Nas distros baseadas em RHEL, você pode
cat /proc/sys/kernel/printk
ver quais são suas configurações atuais.Quatro valores são encontrados no arquivo printk. Cada um desses valores define uma regra diferente para lidar com mensagens de erro. O primeiro valor, chamado de nível de log do console, define a menor prioridade das mensagens impressas no console. (Observe que, quanto menor a prioridade, maior o número do nível de log.) O segundo valor define o nível de log padrão para mensagens sem um nível de log explícito anexado a elas. O terceiro valor define a configuração de nível de log mais baixa possível para o nível de log do console. O último valor define o valor padrão para o nível de log do console.
O uso do parâmetro LOGLEVEL em / etc / sysconfig / init para definir o nível de log do console não é mais suportado. Para definir o nível de log do console no Red Hat Enterprise Linux 6, passe loglevel = 'como um parâmetro de tempo de inicialização. Por exemplo, loglevel = 6 imprimirá todas as mensagens menores que 6 (não iguais a apenas menores que).
Crédito para:
fonte
Aqui está a maneira "oficial" de fazê-lo, de acordo com o RedHat :
fonte
Você também pode suprimir temporariamente todos os logs do kernel no console usando:
Consulte também: https://askubuntu.com/questions/97256/how-do-i-disable-messages-or-logging-from-printing-on-the-console-virtual-termin
fonte
O que você vê são mensagens de log do kernel impressas no console. Quais mensagens de log atingem o console dependem do nível de log do console definido atualmente.
Quando o cmdline do kernel inclui o
quiet
parâmetro kernel, o nível de log do console resultante é4
(erros ou pior). Sem ele, é definido como7
(ou seja, informações e coisas piores).Você pode visualizar os parâmetros ativos do kernel
cat /proc/cmdline
e o nível de log atual do consolesysctl kernel.printk
. Pode ser alterado dinamicamente comdmesg -n X
(ou mesmo comsysctl -w
).Para tornar a alteração permanente, você pode adicionar parâmetros do kernel ao cmdline do kernel (por exemplo,
quiet
e / ouloglevel=X
) ou adicionar um.conf
arquivo sysctl em/etc/sysctl.d
.O parâmetro kernel pode ser adicionado assim:
fonte
Como este é um site relacionado ao estouro de pilha, começarei dizendo que você não deve desligar a saída, que deve resolver os erros.
Se você estiver em um console e não conseguir nem ver o que está fazendo por causa das mensagens, tente digitar isso.
sudo dmesg -D
Isso deve torná-lo silencioso o suficiente para analisar as outras soluções.
fonte
Se você estiver em um congestionamento real, basta desabilitar temporariamente o serviço syslog caso haja uma inundação que não consiga visualizar ou digitar qualquer coisa corretamente.
fonte