]> git.ipfire.org Git - thirdparty/systemd.git/blame - man/systemd-update-done.service.xml
travis: use UBSan checks from OSS-Fuzz
[thirdparty/systemd.git] / man / systemd-update-done.service.xml
CommitLineData
7caa86ac
LP
1<?xml version="1.0"?>
2<!--*-nxml-*-->
3a54a157
ZJS
3<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
4 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
0307f791 5<!-- SPDX-License-Identifier: LGPL-2.1+ -->
7caa86ac
LP
6<refentry id="systemd-update-done.service">
7
798d3a52
ZJS
8 <refentryinfo>
9 <title>systemd-update-done.service</title>
10 <productname>systemd</productname>
798d3a52
ZJS
11 </refentryinfo>
12
13 <refmeta>
14 <refentrytitle>systemd-update-done.service</refentrytitle>
15 <manvolnum>8</manvolnum>
16 </refmeta>
17
18 <refnamediv>
19 <refname>systemd-update-done.service</refname>
20 <refname>systemd-update-done</refname>
21 <refpurpose>Mark <filename>/etc</filename> and <filename>/var</filename> fully updated</refpurpose>
22 </refnamediv>
23
24 <refsynopsisdiv>
25 <para><filename>systemd-update-done.service</filename></para>
12b42c76 26 <para><filename>/usr/lib/systemd/systemd-update-done</filename></para>
798d3a52
ZJS
27 </refsynopsisdiv>
28
29 <refsect1>
30 <title>Description</title>
31
32 <para><filename>systemd-update-done.service</filename> is a
33 service that is invoked as part of the first boot after the vendor
34 operating system resources in <filename>/usr</filename> have been
35 updated. This is useful to implement offline updates of
a8eaaee7 36 <filename>/usr</filename> which might require updates to
798d3a52
ZJS
37 <filename>/etc</filename> or <filename>/var</filename> on the
38 following boot.</para>
39
40 <para><filename>systemd-update-done.service</filename> updates the
41 file modification time (mtime) of the stamp files
42 <filename>/etc/.updated</filename> and
43 <filename>/var/.updated</filename> to the modification time of the
44 <filename>/usr</filename> directory, unless the stamp files are
45 already newer.</para>
46
47 <para>Services that shall run after offline upgrades of
48 <filename>/usr</filename> should order themselves before
49 <filename>systemd-update-done.service</filename>, and use the
50 <varname>ConditionNeedsUpdate=</varname> (see
51 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>)
52 condition to make sure to run when <filename>/etc</filename> or
53 <filename>/var</filename> are older than <filename>/usr</filename>
54 according to the modification times of the files described above.
55 This requires that updates to <filename>/usr</filename> are always
56 followed by an update of the modification time of
57 <filename>/usr</filename>, for example by invoking
58 <citerefentry project='man-pages'><refentrytitle>touch</refentrytitle><manvolnum>1</manvolnum></citerefentry>
59 on it.</para>
60
61 </refsect1>
62
63 <refsect1>
64 <title>See Also</title>
65 <para>
66 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
67 <citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
68 <citerefentry project='man-pages'><refentrytitle>touch</refentrytitle><manvolnum>1</manvolnum></citerefentry>
69 </para>
70 </refsect1>
7caa86ac
LP
71
72</refentry>