journalctl --verify relata corrupção

22

Acabei de perceber essa verifyopção journalctle decidi tentar, está mostrando corrupção, o que pode causar isso? e se alguma coisa eu devo fazer sobre isso? devo investigar mais?

journalctl --verify
PASS: /var/log/journal/19184893a1d645c7a43729e79b10a876/user-1000.journal
Invalid object contents at 3733856░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░   0%
File corruption detected at /var/log/journal/19184893a1d645c7a43729e79b10a876/system.journal:3733856 (of 91734016, 4%).
FAIL: /var/log/journal/19184893a1d645c7a43729e79b10a876/system.journal (Bad message)
Invalid object contents at 21575496░░░░░░░░░░░░░░░░░░░░░░░░░░░░░  45%
File corruption detected at /var/log/journal/19184893a1d645c7a43729e79b10a876/system@60e058db556e4de4b256d0b1ff176aa4-0000000000000001-0004e0b436d20aa1.journal:21575496 (of 44052480, 48%).
FAIL: /var/log/journal/19184893a1d645c7a43729e79b10a876/system@60e058db556e4de4b256d0b1ff176aa4-0000000000000001-0004e0b436d20aa1.journal (Bad message)
PASS: /var/log/journal/19184893a1d645c7a43729e79b10a876/user-1000@60e058db556e4de4b256d0b1ff176aa4-0000000000000a91-0004e0b4ff9a949a.journal
PASS: /var/log/journal/19184893a1d645c7a43729e79b10a876/user-1001.journal
xenoterracida
fonte

Respostas:

14

Atualmente, o journalctl pode detectar logs corrompidos, mas não possui o comando do tipo "fsck" para tentar reparar. O diário mudará automaticamente para escrever um novo arquivo "limpo" assim que detectar o problema, portanto, teoricamente, a perda de dados deve ser mínima.

Até que exista um comando de reparo de arquivo, encontrar o arquivo de diário corrompido e removê-lo é a única solução. Você pode encontrar mais sobre isso em nosso mega-thread do Fedora sobre como tornar o registro somente em diário o padrão:

Para corrupções de cauda, ​​sua ferramenta journalctl normal fornecerá o máximo de informações possível para recuperar o arquivo. Ele produzirá a última linha de log completa e depois terminará. Isso é bem parecido com o quão bom você pode obter.

As coisas são diferentes para corrupções no meio. Não temos uma boa ferramenta para recuperar dados dessa corrupção, mas eles podem ser gravados com relativa facilidade. No entanto, como são altamente improváveis ​​devido ao modelo "apenas anexar" do diário, isso não está na nossa lista de tarefas.

Obviamente, se você puder identificar o que causou o problema inicialmente e denunciá-lo, isso seria bom.

mattdm
fonte
o que é uma FAA?
Xenoterracide
@xenoterracide algum tipo de erro de digitação estranho é o que é isso. :)
mattdm
1
@ slm Sim, há uma longa viagem de ônibus do escritório. :) Desculpe pelo desperdício de tempo - espero que pelo menos tenha aprendido algo sobre a aviação.
mattdm
1
no meu sistema, pelo menos, periódicos corrompidos parecem comuns ... há algum conselho sobre como identificar o que causou o problema?
Xenoterracide
2
Em todos os sistemas systemd que eu já vi, logs de diário corrompidos são comuns. Agora, essa resposta tem quase 5 anos e, até onde sei, não há solução para esse problema.
MountainX para Monica Cellio 26/03
2

Parece estar relacionado a este tópico no wiki do ArchLinux, intitulado: journalctl issues . Parece ter algo a ver com esta definição SystemMaxUseno /etc/systemd/journald.conf.

O encadeamento não é conclusivo, mas várias pessoas tiveram alguma sorte em limpar os logs abaixo /var/log/journal/*ou aumentar o valor para SystemMaxUse.

slm
fonte
infelizmente jogar com esse valor não parece ter ajudado. Suspeito que limpar logs ajuda porque exclui os logs inválidos.
Xenoterracide
@xenoterracide - Vou continuar procurando. Sim, limpar os logs parecia absurdo para mim também, mas as pessoas estavam denunciando, então achei que valia a pena tentar.
slm