mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-01-05 09:17:44 +03:00
units: make system-update-pre.target a passive unit (#9349)
This is an additional synchronization point normally not needed. Hence, let's make it passive, i.e. pull it in from the unit which wants to be ordered before the update service rather than by the update service itself.
This commit is contained in:
parent
6dd9477dde
commit
c7668c1ce0
6
NEWS
6
NEWS
@ -326,6 +326,12 @@ CHANGES WITH 239 in spe:
|
|||||||
system namespacing options. One such service is systemd-udevd.service
|
system namespacing options. One such service is systemd-udevd.service
|
||||||
wher this is now used by default.
|
wher this is now used by default.
|
||||||
|
|
||||||
|
* A new unit "system-update-pre.target" is added, which defines an
|
||||||
|
optional synchronization point for offline system updates, as
|
||||||
|
implemented by the pre-existing "system-update.target" unit. It
|
||||||
|
allows ordering services before the service that executes the actual
|
||||||
|
update process in a generic way.
|
||||||
|
|
||||||
Contributions from: Adam Duskett, Alan Jenkins, Alessandro Casale,
|
Contributions from: Adam Duskett, Alan Jenkins, Alessandro Casale,
|
||||||
Alexander Kurtz, Alex Gartrell, Anssi Hannula, Arnaud Rebillout, Brian
|
Alexander Kurtz, Alex Gartrell, Anssi Hannula, Arnaud Rebillout, Brian
|
||||||
J. Murrell, Bruno Vernay, Chris Lesiak, Christian Brauner, Christian
|
J. Murrell, Bruno Vernay, Chris Lesiak, Christian Brauner, Christian
|
||||||
|
@ -78,6 +78,7 @@
|
|||||||
<filename>swap.target</filename>,
|
<filename>swap.target</filename>,
|
||||||
<filename>sysinit.target</filename>,
|
<filename>sysinit.target</filename>,
|
||||||
<filename>system-update.target</filename>,
|
<filename>system-update.target</filename>,
|
||||||
|
<filename>system-update-pre.target</filename>,
|
||||||
<filename>time-sync.target</filename>,
|
<filename>time-sync.target</filename>,
|
||||||
<filename>timers.target</filename>,
|
<filename>timers.target</filename>,
|
||||||
<filename>umount.target</filename>,
|
<filename>umount.target</filename>,
|
||||||
@ -658,6 +659,7 @@
|
|||||||
</varlistentry>
|
</varlistentry>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term><filename>system-update.target</filename></term>
|
<term><filename>system-update.target</filename></term>
|
||||||
|
<term><filename>system-update-pre.target</filename></term>
|
||||||
<term><filename>system-update-cleanup.service</filename></term>
|
<term><filename>system-update-cleanup.service</filename></term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<para>A special target unit that is used for offline system updates.
|
<para>A special target unit that is used for offline system updates.
|
||||||
@ -667,12 +669,13 @@
|
|||||||
<citerefentry><refentrytitle>systemd.offline-updates</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
|
<citerefentry><refentrytitle>systemd.offline-updates</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>Updates should happen before the <filename>system-update.target</filename> is
|
<para>Updates should happen before the <filename>system-update.target</filename> is reached, and the services
|
||||||
reached, and the services which implement them should cause the machine to reboot. As
|
which implement them should cause the machine to reboot. The main units executing the update should order
|
||||||
a safety measure, if this does not happen, and <filename>/system-update</filename>
|
themselves after <filename>system-update-pre.target</filename> but not pull it in. Services which want to run
|
||||||
still exists after <filename>system-update.target</filename> is reached,
|
during system updates only, but before the actual system update is executed should order themselves before
|
||||||
<filename>system-update-cleanup.service</filename> will remove this symlink and
|
this unit and pull it in. As a safety measure, if this does not happen, and
|
||||||
reboot the machine.</para>
|
<filename>/system-update</filename> still exists after <filename>system-update.target</filename> is reached,
|
||||||
|
<filename>system-update-cleanup.service</filename> will remove this symlink and reboot the machine.</para>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
|
@ -13,4 +13,3 @@ Documentation=man:systemd.offline-updates(7)
|
|||||||
Documentation=man:systemd.special(7) man:systemd-system-update-generator(8)
|
Documentation=man:systemd.special(7) man:systemd-system-update-generator(8)
|
||||||
RefuseManualStart=yes
|
RefuseManualStart=yes
|
||||||
After=sysinit.target
|
After=sysinit.target
|
||||||
Before=system-update.target
|
|
||||||
|
@ -12,7 +12,6 @@ Description=Offline System Update
|
|||||||
Documentation=man:systemd.offline-updates(7)
|
Documentation=man:systemd.offline-updates(7)
|
||||||
Documentation=man:systemd.special(7) man:systemd-system-update-generator(8)
|
Documentation=man:systemd.special(7) man:systemd-system-update-generator(8)
|
||||||
Requires=sysinit.target
|
Requires=sysinit.target
|
||||||
After=sysinit.target
|
After=sysinit.target system-update.target
|
||||||
AllowIsolate=yes
|
AllowIsolate=yes
|
||||||
Wants=system-update-pre.target
|
|
||||||
Wants=system-update-cleanup.service
|
Wants=system-update-cleanup.service
|
||||||
|
Loading…
Reference in New Issue
Block a user