DEV Community

vast cow
vast cow

Posted on

Enabling Persistent Systemd Journal Logging on Linux

Systemd’s journal (journald) stores system logs, but by default, these logs may not persist across reboots. This means that troubleshooting issues from previous sessions can be difficult. Enabling persistent logging ensures that logs are retained even after a system restart.

Why Enable Persistent Logging

By default, many systems store journal logs in a temporary directory (/run/log/journal), which is cleared on reboot. Enabling persistent storage allows you to:

  • Access logs from previous boots
  • Investigate system crashes or unexpected reboots
  • Maintain a continuous log history for auditing and debugging

Steps to Enable Persistent Journal Storage

1. Create the Persistent Log Directory

sudo mkdir -p /var/log/journal
Enter fullscreen mode Exit fullscreen mode

This directory is where systemd will store persistent journal files.

2. Apply Correct Permissions and Settings

sudo systemd-tmpfiles --create --prefix /var/log/journal
Enter fullscreen mode Exit fullscreen mode

This command ensures that the directory has the proper ownership and permissions required by journald.

3. Restart the Journaling Service

sudo systemctl restart systemd-journald
Enter fullscreen mode Exit fullscreen mode

Restarting the service makes the change effective immediately.

Verifying the Configuration

Check Directory Existence

ls -ld /var/log/journal
Enter fullscreen mode Exit fullscreen mode

This confirms that the directory exists and has the expected permissions.

List Available Boot Logs

journalctl --list-boots
Enter fullscreen mode Exit fullscreen mode

After enabling persistence and rebooting at least once, this command will show a list of previous system boots, allowing you to inspect logs from earlier sessions.

Summary

Enabling persistent journaling is a straightforward but important configuration step for maintaining system observability. Once configured, you gain access to historical logs that are essential for diagnosing issues and understanding system behavior over time.

Top comments (0)