Como despejar os logs do dmesg AKA Kernel em um único arquivo .txt da inicialização do kernel?

Como despejar os logs do dmesg AKA Kernel em um único arquivo .txt da inicialização do kernel?

Estou tentando entender a comunicação SATA Host-Device e para isso coloquei muitas mensagens de depuração no código do driver do kernel. Agora as mensagens são tão grandes que não consigo ver as mensagens iniciais da enumeração do dispositivo no log do dmesg. Para o mesmo, modifiquei a variável de configuração CONFIG_LOG_BUF_SHIFT(=21) para aumentar o tamanho do buffer de anel de onde o dmesg recebe a mensagem, mas ainda estou enfrentando o mesmo problema.

Então, existe algum método disponível pelo qual eu possa registrar todo o dmesg da inicialização do kernel em um arquivo específico?

Obrigado pela ajuda antecipadamente.

Responder1

Você pode usar:

cat /var/log/dmesg > file.txt

E use:

head /var/log/dmesg

se você quiser ver as primeiras linhas do dmesg.

Veja também 'cabeça de homem' para mais especificações. O símbolo '>' redireciona a saída de 'cat' para 'file.txt'

Responder2

Existe um comando chamado dmesgque imprimirá os logs em stdout. Você pode simplesmente redirecionar o stdout para um arquivo de texto.

dmesg > /path/to/dmesg.txt

Você poderia estender isso. Uma opção realmente útil seria adicionar uma linha ao seu ~/.profilearquivo (no seu diretório inicial) que anexa a saída do dmesg no login. Basta adicionar uma linha que diz:

dmesg >> /path/to/dmesg.txt

Se você quiser apenas as primeiras linhas (0,000000 mensagens), poderá canalizá-las headassim.

Com saída padrão:

dmesg | head

ou com headum arquivo .txt já salvo.

head /path/to/dmesg.txt

É basicamente isso, espero que ajude!

EDITAR:Aliás, isso contém as 0,000000 mensagens

informação relacionada