Linuxのログ管理に必須!journalctlコマンド完全ガイド

Linuxシステムのログ管理は、システムトラブル解析に不可欠です。journalctlsystemdのジャーナル(ログ)を扱うコマンドで、システム全体・ユーザー単位で詳細なログを簡単に取得・操作できます。

journalctlとは?

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ログの優先度フィルタリング(emergdebugまで数値または単語指定)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

journald設定のポイント

/etc/systemd/journald.confでログの保存形式や容量制限、永続化設定が可能。

  • Storage=persistent を設定すると /var/log/journal/に永続化保存。
  • ログサイズ制限や圧縮方式の指定も可能。

まとめ

journalctlは、Linuxのsystemdログ管理における要のコマンドであり、詳細かつ柔軟なログ検索・表示が可能です。豊富なオプションを覚えることで、システムトラブルの調査や監視作業に大いに役立ちます。ぜひ実際の運用で使いこなしてみてください。

にいやん

出身 : 関西 居住区 : 関西 職業 : 組み込み機器エンジニア (エンジニア歴13年) 年齢 : 38歳(2022年11月現在) 最近 業務の効率化で噂もありPython言語に興味を持ち勉強しています。 そこで学んだことを記事にして皆さんとシェアさせていただければと思いブログをはじめました!! 興味ある記事があれば皆さん見ていってください!! にほんブログ村