mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-01-10 01:17:44 +03:00
docs: add a note about selectively overriding default dependencies
This documents that explicit `Before=`/`After=` dependencies can be used to selectively override implicit ordering coming from default dependencies. That allows for more granular control compared to the already documented `DefaultDependencies=no` option. The alternative approach came up in a discussion around the ordering of `boot-complete.target`, so this also adds an explicit suggestion in that direction to the "Automatic Boot Assessment" documentation. Ref: https://lists.freedesktop.org/archives/systemd-devel/2022-September/048330.html
This commit is contained in:
parent
55b5daf9b2
commit
72ceee435d
@ -197,6 +197,14 @@ are a couple of recommendations.
|
||||
wrap them in a unit and order them after `boot-complete.target`, pulling it
|
||||
in.
|
||||
|
||||
Such unit would be typically wanted (or required) by one of the
|
||||
[`bootup`](https://www.freedesktop.org/software/systemd/man/bootup.html) targets,
|
||||
for example `multi-user.target`. To avoid potential loops due to conflicting
|
||||
[default dependencies](https://www.freedesktop.org/software/systemd/man/systemd.unit.html#Default%20Dependencies)
|
||||
ordering, it is recommended to also add an explicit dependency (e.g.
|
||||
`After=multi-user.target`) to the unit. This overrides the implicit ordering
|
||||
and allows `boot-complete.target` to start after the given bootup target.
|
||||
|
||||
## FAQ
|
||||
|
||||
1. *I have a service which — when it fails — should immediately cause a
|
||||
|
@ -331,11 +331,11 @@
|
||||
|
||||
<para>For example, target units will complement all configured dependencies of type
|
||||
<varname>Wants=</varname> or <varname>Requires=</varname> with dependencies of type
|
||||
<varname>After=</varname> unless <varname>DefaultDependencies=no</varname> is set in the
|
||||
specified units. See
|
||||
<varname>After=</varname>. See
|
||||
<citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details. Note that this behavior can be turned off by setting
|
||||
<varname>DefaultDependencies=no</varname>.</para>
|
||||
for details. Note that this behavior can be opted out by setting
|
||||
<varname>DefaultDependencies=no</varname> in the specified units, or it can be selectively
|
||||
overidden via an explicit <varname>Before=</varname> dependency.</para>
|
||||
</refsect2>
|
||||
</refsect1>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user