Linuxシステムのログ管理は、システムトラブル解析に不可欠です。journalctl
はsystemd
のジャーナル(ログ)を扱うコマンドで、システム全体・ユーザー単位で詳細なログを簡単に取得・操作できます。
journalctl
は、systemd
によって収集・管理されるログを閲覧・検索・管理するための標準ツールです。ログはバイナリ形式で保存され、高速に検索やフィルターが可能です。
単純にjournalctl
と入力すると、起動以降の全ログを時系列で表示します。
オプション | 説明 | 使用例 |
---|---|---|
-b | 現在の起動(または-b -1 で前回起動)のログを表示 | journalctl -b |
-u <unit> | 指定したsystemdユニットのログを表示 | journalctl -u nginx.service |
-f | 新規ログが追加されたらリアルタイムで表示(tail -f 相当) | journalctl -f |
-r | ログを新しい順に逆順表示 | journalctl -r |
-k | カーネルメッセージのみ表示 | journalctl -k |
--since | 指定日時以降のログを表示 | journalctl --since "2025-10-01" |
--until | 指定日時までのログを表示 | journalctl --until "2025-10-19" |
-p | ログの優先度フィルタリング(emerg –debug まで数値または単語指定) | journalctl -p err / journalctl -p warning..err |
-o | 出力フォーマット指定(short ,verbose ,json など) | journalctl -o json |
--disk-usage | ジャーナルが使用しているディスク容量を表示 | journalctl --disk-usage |
--vacuum-size , --vacuum-time | 古いログの削除(サイズや保存期間で指定) | journalctl --vacuum-size=1G |
・特定ユニットのログ確認
journalctl -u ssh.service
・リアルタイム監視でログを追う
journalctl -f
・起動後のログのみ抽出
journalctl -b
・指定日時のログ表示
journalctl --since "2025-10-15 00:00" --until "2025-10-19 23:59"
・カーネルログだけ閲覧
journalctl -k
・重要度の高いログだけ表示
journalctl -p err
/etc/systemd/journald.conf
でログの保存形式や容量制限、永続化設定が可能。
Storage=persistent
を設定すると /var/log/journal/
に永続化保存。journalctl
は、Linuxのsystemdログ管理における要のコマンドであり、詳細かつ柔軟なログ検索・表示が可能です。豊富なオプションを覚えることで、システムトラブルの調査や監視作業に大いに役立ちます。ぜひ実際の運用で使いこなしてみてください。