web-dev-qa-db-ja.com

journalctl --verifyは破損を報告します

私はverifyのこのjournalctlオプションに気づき、それを試してみることにしました。破損を示していますが、何が原因なのでしょうか?そして、私はそれについて何かしなければならない場合はどうなりますか?さらに調査する必要がありますか?

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
23
xenoterracide

現在、journalctlは破損したログを検出できますが、修復を試行するための「fsck」タイプのコマンドはありません。 journaldは、問題を検出するとすぐに新しい「クリーン」ファイルの書き込みに自動的に切り替わるので、理論的にはデータの損失は最小限に抑えられます。

ファイル修復コマンドがあるまで、破損したジャーナルファイルを見つけて削除することが唯一の解決策です。ジャーナルのみのロギングをデフォルトにすることで、Fedoraメガスレッドで これについての詳細 を見つけることができます。

末尾の破損については、通常のjournalctlツールが、ファイルから回収できる限りの情報を提供します。最後の完全なログ行を出力して終了します。これはあなたが得ることができるものにかなり近いです。

腐敗の真ん中は状況が異なります。このような破損からデータを復旧するための素晴らしいツールはありませんが、比較的簡単に書き込むことができます。ただし、ジャーナルの「追加のみ」のモデルが原因で発生する可能性は非常に低いため、これはTODOリストには含まれていません。

もちろん、最初に問題の原因を特定して報告できれば、それはいいことです。

16
mattdm

これは、ArchLinuxウィキのこのスレッドに関連しているようです。タイトルは journalctl issues です。 /etc/systemd/journald.confのこの設定SystemMaxUseと関係があるようです。

スレッドは決定的ではありませんが、/var/log/journal/*の下のログをクリアするか、SystemMaxUseの値を増やすことで運が良かった人もいます。

2
slm