mirror of
https://github.com/systemd/systemd
synced 2024-09-06 16:56:43 +00:00
![Franck Bui](/assets/img/avatar_default.png)
Due to the fact that systemd-journal-flush.service has "Requires=systemd-journald.service", this service is stopped too when journald is requested to do so. However stopping systemd-journal-flush.service implies that journald relinquishes /var hence implicitly switching back to the volatile storage mode and removing /run/systemd/journal/flushed. If journald is started afterwards, it will run in volatile storage mode regardless of the value of 'Storage=' as it believes now that /var is not yet ready (because the flushed flag is missing). Because this flag is mainly an indication for journald that the initialization of /var/log/journal (during the boot process) has been done, systemd-journal-flush.service shouldn't be tied to the state of journald itself but to the state of /var/log/journal, hence to the state of the system.
25 lines
788 B
Desktop File
25 lines
788 B
Desktop File
# SPDX-License-Identifier: LGPL-2.1-or-later
|
|
#
|
|
# This file is part of systemd.
|
|
#
|
|
# systemd is free software; you can redistribute it and/or modify it
|
|
# under the terms of the GNU Lesser General Public License as published by
|
|
# the Free Software Foundation; either version 2.1 of the License, or
|
|
# (at your option) any later version.
|
|
|
|
[Unit]
|
|
Description=Flush Journal to Persistent Storage
|
|
Documentation=man:systemd-journald.service(8) man:journald.conf(5)
|
|
DefaultDependencies=no
|
|
After=systemd-journald.service systemd-remount-fs.service
|
|
Before=systemd-tmpfiles-setup.service
|
|
RequiresMountsFor=/var/log/journal
|
|
ConditionPathExists=!/etc/initrd-release
|
|
|
|
[Service]
|
|
ExecStart=journalctl --flush
|
|
ExecStop=journalctl --smart-relinquish-var
|
|
Type=oneshot
|
|
RemainAfterExit=yes
|
|
TimeoutSec=90s
|