Rain WikiWindows · Linux · Android

journalctl と systemd ジャーナル

コマンドラインツールsystemd を使用するディストリビューション削除して安全: 専用ツールのみ

journalctl は、ほとんどの最新の Linux ディストリビューションで使用されているバイナリログストアである systemd ジャーナルを読み取るためのコマンドです。サービス、起動時、時間、優先度ごとにメッセージをフィルタリングできるほか、/var/log/journal 内で数ギガバイトにまで肥大化しがちなジャーナルのディスク使用量を報告および制限することも可能です。

1ログの読み取り

journalctl -u nginx.service は特定のユニットのメッセージを表示します。-b は出力を現在の起動時に限定し、-b -1 は前回の起動時に限定します。-p err はエラー以上の重要度のメッセージのみを表示します。'--since "1 hour ago"' は時間で制限し、-f は新しいメッセージをリアルタイムで追跡します。

2ディスク使用量

journalctl --disk-usage は、アクティブおよびアーカイブされたジャーナルファイルの合計サイズを表示します。

--vacuum-size=、--vacuum-time=、および --vacuum-files= は、制限に達するまでアーカイブされたジャーナルファイルを削除します。これらはアクティブなファイルには影響しません。

3永続的な制限

制限は /etc/systemd/journald.conf で設定します(例: SystemMaxUse=500M)。その後、systemctl restart systemd-journald で適用します。設定がない場合、journald はデフォルトでファイルシステムサイズの 10% 以内(最大 4 GB)にジャーナルを保持します。

ジャーナルの縮小方法

  1. サイズの確認: journalctl --disk-usage
  2. アクティブなファイルをローテーションして削除可能にする: sudo journalctl --rotate
  3. 2週間分のみ保持する: sudo journalctl --vacuum-time=2weeks
  4. または最大 500 MB に制限する: sudo journalctl --vacuum-size=500M
  5. 永続的に設定するには、/etc/systemd/journald.conf に SystemMaxUse=500M を設定し、以下を実行します: sudo systemctl restart systemd-journald

注意点

  • 削除されたログは復元できません。問題調査に必要な履歴は保持してください。
  • journald の実行中に /var/log/journal 内のファイルを直接削除しないでください。

出典

  1. journalctl(1) man7.org
  2. journald.conf(5) man7.org

補足: RainServer は Linux サーバーの監視と安全なクリーンアップを提供します。変更内容を表示し、実行前に確認を求めます。

最終確認: