デバイスでArch Linuxが失敗しました。デバイスには画面がなく、ネットワークに応答しません。だから私はそのSDカードを取り出し、ubuntuデスクトップに挿入し、そこに新鮮なsystem.journalを見て...中身を見る方法は?
Arch Linuxのドキュメントから、私ができることがわかっています。
strings /mnt/Arch/var/log/journal/.../system.journal | grep -i message
しかし、それは本当に基本的です。質問は:
stringsを使用するよりも、別のシステムからsystem.journalを検査する便利な方法はありますか? journalctlで読み取るファイルを指定できますか?
まず、strings
を使用する機能は、journaldが小さい(現在の実装では64KiB未満)フィールドを圧縮しないという単なる偶然に由来します。これは、ジャーナルを読み取るためのサポートされている方法ではありません。archwikiでは、そのようにマークする必要があります。それは最後の溝の回復方法の詳細です。
それでは質問です。 journalctl(1) から:
-D DIR、-directory = DIR
引数としてディレクトリパスを取ります。指定した場合、journalctlは、デフォルトのランタイムおよびシステムジャーナルパスではなく、指定したジャーナルディレクトリDIRで動作します。
したがって、壊れたシステムのrootfsが_$DEST
_の下にマウントされていると想定して、_journalctl -D $DEST/var/log/journal
_を使用してシステムログを表示します。
完全を期すために、特定のファイルを表示するには、_journalctl --file
_を使用します。 g。 journalctl --file /var/log/journal/$(cat /etc/machine-id)/system.journal
。ただし、ジャーナルファイルは定期的にローテーションされるため、このフォームは完全なジャーナルの表示には実際には使用できません。