Payments are experiencing issues due to temporary restrictions in Russia. If your payment does not go through, please submit a support request.Our support team is available 24/7 — we are always here to help with hosting and server issues.We are now accepting requests for dedicated server rental and colocation services in our data center.Reminder: we recommend enabling backups for additional data protection.A new VPS/VDS lineup with NVMe storage and improved performance is now available.Maintenance work on some servers has been completed. All services are operating normally.
Article5 min readViews0

How much space do systemd journals occupy: checking without cleanup

Two read-only commands help estimate journal volume and locate their configuration sources in Ubuntu 24.04. We explain result boundaries and the differences between persistent and volatile storage.

Comments 0

External drives and cables in an open box at a computer repair shop. Generated illustration.
In this article

When the disk fills up, the logging system is the first suspect. Before cleaning, find out how much space its files actually occupy and what storage settings are configured. Otherwise, you risk losing crash history while freeing up almost no space.

This guide is intended for Ubuntu 24.04 with systemd 255 and the standard journal namespace. It includes only reading the current state and configuration files. The utility syntax was verified on September 26, 2026, against the official Ubuntu Noble documentation pages. The specified commands were also executed in a local Ubuntu 24.04.3 environment with the systemd package version 255.4-1ubuntu8.17. In this environment, no journal files existed: we verified command execution and configuration reading, but not the behavior of a full journal or log rotation.

To view the full system journal, you must already have administrator access or the appropriate permissions. A regular user may not see all data. In a container, the host journal typically does not become available simply by having the utility installed. Do not change permissions, groups, or settings to follow this instruction.

Get the volume without printing all messages

You can view the version of the installed utility separately:

journalctl --version

Then request the space occupied by the journals:

journalctl --disk-usage

The parameter --disk-usage shows the total size of active and archived journal files in the readable area. It does not print the full text of events nor does it delete records. On large storage, viewing file details also requires file system operations, so it should not be run continuously in a frequent loop.

In our test, the utility completed successfully, showing 0B and separately reporting No journal files were found.. This indicates no files were found in this environment. Such a result cannot be transferred to a production server or interpreted as proof that no events occurred there. First, you must verify the execution location and access to the system journal.

A conditional example for another machine: the result shows 800 MiB, while the file system is 60 GiB full. Even deleting all 800 MiB would not explain the remaining occupied gigabytes. It is more useful here to continue diagnosing other data. This example is arithmetic, not a measurement result from a specific server.

View the main file along with additions

Settings may not be located only in the main file. Read the configuration taking additional fragments into account:

systemd-analyze cat-config systemd/journald.conf

The utility displays found configuration files along with their origin. It does not edit them or restart the service. Reading files on disk does not prove that the running process has already applied their latest revision. This is also not a report with a computed final value for each parameter.

Pay attention to the comments. The line starting with # is not an active assignment. In the supplied file, default values are often shown this way. In the local test, both the main file and an additional provider fragment were visible; reading only the first file would have given an incomplete picture of the configuration sources.

If a parameter appears in multiple active lines, you must account for order and configuration priority rules. Do not select the first familiar value from the output. Before making any changes, the administrator must determine which file sets the required value and whether a higher-priority override exists. In this guide, the files remain unchanged.

Compare the limit with the correct storage location

The Storage= parameter defines the storage mode. For the standard namespace persistent, permanent storage in /var/log/journal is preferred, while volatile uses temporary storage in /run/log/journal. The auto mode uses the presence of a permanent journal directory as a selection condition. Early boot stages and the inability to write to permanent storage can alter the actual write location, so a single configuration line is insufficient to fully determine the server state.

The SystemMaxUse= family belongs to the permanent journal, while RuntimeMaxUse= belongs to the temporary one. The SystemKeepFree= and RuntimeKeepFree= constraints set requirements for free space. The maximum size setting and the requirement to reserve space are considered together. Comparing the temporary journal volume only to the permanent limit would be an error.

Do not confuse the current volume with a promise of immediate reduction. The count of occupied bytes includes active files, and mechanisms for deleting old history have their own conditions. Merely detecting a large number is not grounds to start cleanup. First, determine how much history is needed for investigations and whether the application is logging an unusually large stream of repeated messages.

What to save for further resolution

Record the measurement time, execution environment, read permissions, the result --disk-usage, and active storage parameters along with the filenames from which they were retrieved. If the volume grows noticeably, repeat the same measurement after a reasonable interval and correlate the growth with application activity. Two numbers show the change in volume, but by themselves do not identify the service that generated the events.

To pass the issue to a specialist, only relevant settings and an anonymized result are sufficient. A full event archive may contain tokens, requests, and user data. If it turns out that the retention period needs to be changed or space needs to be freed, that will be a separate operation involving preservation of the necessary history and a verification plan. Until then, you will already have an answer to the original question: how much space the accessible journal occupies and which configuration sources affect its storage.

Discussion 0

Share your experience and ask questions. Comments without links appear after editorial review.

No comments yet. Start the discussion.