Checking the systemd journal size helps catch runaway logging before it fills a disk and starts triggering failures like aborted package installs, databases refusing writes, or services crashing during startup.
systemd-journald stores log entries in binary journal files and rotates them over time. journalctl can report the combined size of active and archived journals, making it easy to confirm whether log retention is staying within expected limits.
journalctl access often requires root privileges or membership in the systemd-journal group, and retention behavior is controlled by settings in /etc/systemd/journald.conf plus any drop-in overrides. Large journals can be normal on busy hosts, but a sudden size jump often points to a noisy unit or debug-level logging.
Steps to check systemd journal size with journalctl in Linux:
- Open a terminal with sudo privileges.
- Display total disk usage for the system journal.
$ sudo journalctl --disk-usage Archived and active journals take up 10.0M in the file system.
Reported size includes both active journals and rotated (archived) journal files.
- Display total disk usage for the current user's journals.
$ journalctl --user --disk-usage Archived and active journals take up 10.0M in the file system.
User journals are typically stored under ~/.local/share/systemd/journal when enabled.
- Check size of the persistent journal directory.
$ sudo du --summarize --human-readable /var/log/journal 8.0K /var/log/journal
Persistent storage survives reboots and is commonly used when /var/log/journal exists.
- Check size of the runtime journal directory.
$ sudo du --summarize --human-readable /run/log/journal 11M /run/log/journal
Runtime storage is usually on tmpfs and is cleared on reboot when journald runs in volatile mode.
- Review journald storage and retention limits in the configuration file.
$ sudo grep --extended-regexp '^[[:space:]]*(#)?(Storage|SystemMaxUse|SystemKeepFree|SystemMaxFileSize|RuntimeMaxUse|RuntimeKeepFree|RuntimeMaxFileSize|MaxRetentionSec|MaxFileSec)=' /etc/systemd/journald.conf #Storage=auto #SystemMaxUse= #SystemKeepFree= #SystemMaxFileSize= #RuntimeMaxUse= #RuntimeKeepFree= #RuntimeMaxFileSize= #MaxRetentionSec= #MaxFileSec=1month
Uncommented values apply explicit limits; drop-ins in /etc/systemd/journald.conf.d override the main file.
Mohd Shakir Zakaria is a cloud architect with deep roots in software development and open-source advocacy. Certified in AWS, Red Hat, VMware, ITIL, and Linux, he specializes in designing and managing robust cloud and on-premises infrastructures.
