

高岡智則
年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)
systemd-journaldとは?
systemd-journaldは、Linux の起動管理ツールである systemd の一部として動作する「ログ管理デーモン」です。パソコンやサーバーが動いている間に起こる出来事を記録し、後で確認できるように保管します。エラーメッセージ、警告、システムの状態、アプリの動作など、いろいろな情報が集められます。これにより、原因の特定やトラブルの解決がしやすくなります。
ポイント:systemd-journald はログを時系列で保存し、必要に応じて圧縮されたり古いログが削除されたりします。ログを人が読みやすく見るには、別のツール「journalctl」を使います。
どう動くのか
systemd-journaldは、様々な出力元からログを受け取り、/var/log/journal にバイナリ形式で保存します。設定次第では /run/log/journal のようにメモリ上にだけ保存されることもあります。バイナリ形式は高速で圧縮もしやすく、長い期間のデータを効率的に管理できます。
よく使うコマンド
ログの確認には journalctl を使います。以下は基本的な使い方です。
| コマンド | 意味 |
|---|---|
| journalctl | 現在のログ全体を表示します。 |
| journalctl -b | 前回のブート以降のログを表示します。 |
| journalctl -n 100 | 最新の100行だけ表示します。 |
| journalctl -u nginx.service | 特定のサービスのログを表示します。 |
設定ファイルと保存場所
主な設定は /etc/systemd/journald.conf にあります。代表的な設定例は次のとおりです。
Storage = auto / persistent / volatile
Compress = yes / no
SystemMaxUse = 使用量の上限例: 1G など
初期設定では volatile が多く、再起動でログが消える場合があります。長期保存したい場合は Storage=persistent を設定し、/var/log/journal が存在することを確認してください。
ログの閲覧を簡単にするコツ
journalctl はフィルタリングが強力です。日付やユーザー、サービス、ブートごとなど、欲しい情報だけを絞り込んで見ることができます。以下は初心者にも役立つ例です。
例1: 24時間のログを表示
journalctl --since "24 hours ago"
例2: 直近のエラーログのみ表示
journalctl -p err -n 50
よくある質問とトラブルシューティング
Q: ログが /var/log/journal に保存されていません。
A: persistent を有効化するには、/var/log/journal ディレクトリを作成し、systemd-journald を再起動します。
Q: ログが見づらい。
A: journalctl の出力をカラフルに整形したり、必要な期間だけ表示するオプションを利用しましょう。
まとめ
systemd-journald は、Linux のログを集約して保存する中心的な仕組みです。ログを読むためには journalctl を使います。初心者には、まず persistent な保存設定と基本的な journalctl の使い方を覚えることから始めると良いでしょう。
systemd-journaldの同意語
- systemd ジャーナル
- systemd が提供するジャーナル機能の名称。ログの収集・保存・検索を担うコンポーネントを指します。
- systemd-journald
- systemd のジャーナルデーモン(journald)そのもの。ログの収集・格納・クエリを担当する実体。
- ジャーナルデーモン
- ジャーナルを収集・蓄積・管理する背景プロセス。journald と同義で使われることがある表現。
- ジャーナル
- systemd-journald が作成・管理するログの総称。時刻・優先度などのメタ情報付きで保存されます。
- systemd ログデーモン
- systemd のログ収集・保管を担うデーモンの総称。journald の別名として使われることがあります。
- ジャーナルファイル
- journald が保存するログデータを格納するファイル。/var/log/journal に配置されることが多い。
- バイナリジャーナル
- journald が内部的に使用するバイナリ形式のジャーナルファイル。人が直接読むには難しいデータ形式。
- ジャーナルデータベース
- ジャーナルデータを蓄積・検索可能な形式で保存する概念。journald が提供する検索機能の対象。
- systemd のログ機構
- systemd が提供するログの収集・管理・表示・検索機能の総称。journald を含む一連の機能。
- systemd ジャーナルサービス
- ジャーナル関連の機能を提供するサービスの総称。journald の役割を強調する表現。
systemd-journaldの対義語・反対語
- 非systemdジャーナル
- systemdを使わないジャーナル・ログ収集の仕組み。systemd-journaldとは別のログ機構を使い、ログの保管や参照方法が異なります。
- syslogベースのログ管理
- 伝統的なsyslog系のデーモン(rsyslogや syslog-ng など)で行うログ収集・保存の仕組み。journaldとは別の設計思想のロギングです。
- テキストファイルベースのログ
- ログをプレーンテキストのファイルに直接書き出す方式。検索性や回復性はバイナリジャーナルとは異なります。
- テキスト形式のジャーナル
- ジャーナルをテキスト形式で扱う方法。journaldのバイナリ形式に対する対比として理解します。
- 手動・スクリプトによるログ収集
- 自動化されたジャーナル daemon に頼らず、手動またはスクリプトでログを収集・管理するアプローチ。
- 中央集約ログ管理システム
- 各ホストのジャーナルをその場で保持せず、Elasticsearch/Fluentd などの中央集約システムに集約して解析する方針。
- 古典的なsyslogを使う環境
- 従来のsyslogによりログを収集・保存する環境のこと。systemdのジャーナルとは別世界のアーキテクチャです。
systemd-journaldの共起語
- systemd
- Linux の init システム。サービスの起動・停止・依存関係の解決を行い、他のプロセスを管理します。
- journald
- systemd のログ収集デーモン。ログの受信・保存・検索・転送を行います。
- journal
- journald が記録・保存するログデータ。メタデータ付きのバイナリ形式で格納されます。
- journalctl
- journald のログを閲覧・検索・抽出する公式コマンドです。
- /var/log/journal
- 永続的なジャーナルデータを格納するディレクトリ。存在すると永続化モードになります。
- /run/log/journal
- ランタイム用のジャーナルデータを格納するディレクトリ。再起動時には消えます。
- Storage
- ジャーナルデータの保存先を決める journald.conf の設定項目です。
- Persistent
- ジャーナルをディスクに保存する状態。主に /var/log/journal を使います。
- Runtime
- ランタイム用のジャーナル。メモリ上に保持され、再起動で消えます。
- SystemMaxUse
- 永続ジャーナルの総使用容量の上限を設定します。
- RuntimeMaxUse
- ランタイムジャーナルの総使用容量の上限を設定します。
- SystemMaxFileSize
- 永続ジャーナルファイルの最大サイズを設定します。
- RuntimeMaxFileSize
- ランタイムジャーナルファイルの最大サイズを設定します。
- SystemMaxFiles
- 永続ジャーナルファイルの最大個数を設定します。
- RuntimeMaxFiles
- ランタイムジャーナルファイルの最大個数を設定します。
- ForwardToSyslog
- journald から syslog へ転送する設定。syslog 連携を有効にします。
- ForwardToKMsg
- ジャーナルをカーネルのメッセージバッファ(/dev/kmsg)へ転送する設定。
- ForwardToWall
- ログを端末全体へ通知するなどの出力先へ転送する設定。
- Compress
- アーカイブ時のジャーナルファイルを圧縮して保存します。
- RateLimitInterval
- ログの送信レートの制限時間間隔です。
- RateLimitBurst
- 一定時間内に許可する最大イベント数のバースト制限。
- _PID
- ログを生成したプロセスの識別子。
- _UID
- ログを生成したユーザーの識別子。
- _SYSTEMD_UNIT
- ログを出力した systemd ユニット名(例: ssh.service)を示すメタデータ。
- _BOOT_ID
- 現在のブートを一意に識別する ID。
- _MACHINE_ID
- マシンを一意に識別する ID。
- _HOSTNAME
- ホスト名。
- _SOURCE_REALTIME_TIMESTAMP
- ログの実生成時刻(リアルタイムのタイムスタンプ)。
- kmsg
- カーネルメッセージ(kernel log)を journald が受信する経路のひとつ。
- kernel
- カーネルからのログも journald に取り込まれます。
- systemd-journal-remote
- リモートマシンからジャーナルを受信する機能です。
- systemd-journal-gatewayd
- HTTP 経由でジャーナルの閲覧を提供するゲートウェイ機能。
- systemd-journal-upload
- ジャーナルをリモートストレージへアップロードする機能の関連ツール。
- rsyslog
- syslog 互換のデーモン。journald と組み合わせて使われることがあります。
- JSON
- journalctl の出力を JSON 形式で得ることができます。
- json-pretty
- JSON 出力を見やすく整形します(journalctl のオプション)
- binary
- ジャーナルファイルはデフォルトでバイナリ形式で保存され、検索が高速です。
- structured logging
- ジャーナルはメタデータを含む構造化ログとして扱えます。
- sd_journal_send
- プログラムから journald へログを送るための API(C など)。
- libsystemd
- systemd の機能へアクセスするための共通ライブラリ。
- unit
- systemd のユニット名。ログはどのユニット由来かで分類されます。
- service
- サービスとして管理されるユニットの代表例。
- cgroups
- systemd がログの所属ユニットを特定する際に用いる資源管理の枠組み。
- permissions
- ジャーナルを読み取るには適切な権限が必要です(例: systemd-journal グループ)。
- rsyslog_integration
- rsyslog などの syslog デーモンとの連携設定のことも含まれます。
systemd-journaldの関連用語
- systemd-journald
- systemdのジャーナル機能を提供するデーモン。カーネルやアプリのログを収集・保存・提供します。
- journald
- systemd-journaldの実体。ログの受信・格納・検索機能を担うデーモンの名称です。
- journalctl
- journaldのログを閲覧・検索・フィルタするコマンド。過去のログを絞り込んで表示できます。
- Storage
- ジャーナルの保存先を決める設定項目。auto/persistent/volatile/none のいずれかを指定します。
- SystemMaxUse
- システム全体のジャーナルが使用するディスク容量の上限を設定します。超えると古いエントリから削除されます。
- RuntimeMaxUse
- ランタイムジャーナルの使用容量上限。再起動でリセットされる領域にも上限を設けられます。
- SystemKeepFree
- ディスク上の空き容量を一定量は必ず確保する設定。空きが不足すると削除の対象になります。
- RuntimeKeepFree
- ランタイムジャーナル用に確保する最小空き容量の設定です。
- SystemMaxFileSize
- 1つのジャーナルファイルの最大サイズ。これを超えると新しいファイルに切り替わります。
- RuntimeMaxFileSize
- ランタイムジャーナルのファイルサイズ上限。
- SystemMaxFiles
- 保存するジャーナルファイルの最大数。上限を超えると最も古いファイルが削除されます。
- RuntimeMaxFiles
- ランタイムジャーナルの最大ファイル数。
- Compress
- ジャーナルファイルを圧縮してディスク使用量を抑えます。必須ではありませんが容量節約に役立ちます。
- ForwardToSyslog
- ジャーナルのログをsyslogへ転送して他のログ処理系と統合します。
- ForwardToKMsg
- ジャーナルのメッセージをカーネルの/kmsg経由へ転送します。カーネルのログ取り込みと連携します。
- ForwardToConsole
- ログをコンソールにも出力します。緊急時の可視化に有効です。
- ForwardToWall
- ログを全ユーザーへ通知するwallへ転送します。
- MaxLevelStore
- 保存対象の最大ログレベルを制限します。例: err 以上のみ保存など。
- MaxLevelSyslog
- syslogへ転送する際の最大ログレベルを制限します。
- RateLimitIntervalSec
- ログ受信を制限する間隔(秒)。同時多発を抑制します。
- RateLimitBurst
- 上記Interval内に許容する最大イベント数。閾値を超えると一時的に受信を制限します。
- TTYPath
- ジャーナルの出力先としてのTTYデバイスパスを指定します。



















