mirror of
https://github.com/systemd/systemd
synced 2024-09-06 16:56:43 +00:00
![Zbigniew Jędrzejewski-Szmek](/assets/img/avatar_default.png)
I'm working on building initramfs images directly from normal packages, and it doesn't make sense for those units to be started. Pristine system rpms need to behave correctly as much as possible also in the initrd, and those units are enabled by the rpms. There usually isn't enough time for the timer to actually fire, but starting it gives a line on the console and generally looks confusing and sloppy. Flushing the journal means that its actually lost, since the real /var is not available yet. Another approach would be not enable those units, but right now they are statically enabled, and changing that would be more work, and doesn't really seem necessary, since the condition checks are very quick. Checking for /etc/initrd-release is the standard condition that the initrd units use, so let's do the same here.
33 lines
1.1 KiB
SYSTEMD
33 lines
1.1 KiB
SYSTEMD
# 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=Load/Save Random Seed
|
|
Documentation=man:systemd-random-seed.service(8) man:random(4)
|
|
DefaultDependencies=no
|
|
RequiresMountsFor={{RANDOM_SEED}}
|
|
Conflicts=shutdown.target
|
|
After=systemd-remount-fs.service
|
|
Before=first-boot-complete.target shutdown.target
|
|
Wants=first-boot-complete.target
|
|
ConditionVirtualization=!container
|
|
ConditionPathExists=!/etc/initrd-release
|
|
|
|
[Service]
|
|
Type=oneshot
|
|
RemainAfterExit=yes
|
|
ExecStart={{ROOTLIBEXECDIR}}/systemd-random-seed load
|
|
ExecStop={{ROOTLIBEXECDIR}}/systemd-random-seed save
|
|
|
|
# This service waits until the kernel's entropy pool is initialized, and may be
|
|
# used as ordering barrier for service that require an initialized entropy
|
|
# pool. Since initialization can take a while on entropy-starved systems, let's
|
|
# increase the timeout substantially here.
|
|
TimeoutSec=10min
|