SYSTEMD-UPDATE-DONE.SERVICE(8) systemd-update-done.service SYSTEMD-UPDATE-DONE.SERVICE(8)

.SH "NAME" systemd-update-done.service, systemd-update-done - Mark /etc/ and /var/ as fully updated

.SH "SYNOPSIS"

.PP systemd-update-done.service

.PP /usr/lib/systemd/systemd-update-done

.SH "DESCRIPTION"

.PP systemd-update-done.service is a service that is invoked as part of the first boot after the vendor operating system resources in /usr/ have been updated. This is useful to implement offline updates of /usr/ which might require updates to /etc/ or /var/ on the following boot.

.PP systemd-update-done.service updates the file modification time (mtime) stored in and "on" the files /etc/.updated and /var/.updated to the modification time of the /usr/ directory, unless the stamp files are already newer. (The timestamp is stored as the mtime field on the file, but also *in* the file to support filesystems that do not store full timestamp precision.)

.PP Services that shall run after offline upgrades of /usr/ should order themselves before systemd-update-done.service, and use the *ConditionNeedsUpdate=* (see [**systemd.unit**(5)](/man/os/systemd/systemd.unit.5)) condition to make sure to run when /etc/ or /var/ are older than /usr/ according to the modification times of the files described above. This requires that updates to /usr/ are always followed by an update of the modification time of /usr/, for example by invoking [**touch**(1)](/man/os/systemd/touch.1) on it.

.PP Note that if the *systemd.condition\_needs\_update=* kernel command line option is used it overrides the *ConditionNeedsUpdate=* unit condition checks. In that case systemd-update-done.service will not reset the condition state until a follow-up reboot where the kernel switch is not specified anymore.

.SH "OPTIONS"

.PP The following options are understood:

.PP **--root=root**

Takes a directory path as an argument. The program will operate on paths below the specified root directory.

Added in version 258.

.RE

.PP **-h**, **--help**

Print a short help text and exit.

.RE  
.PP **--version**

Print a short version string and exit.

.RE

.SH "SEE ALSO"

.PP [**systemd**(1)](/man/os/systemd/systemd.1), [**systemd.unit**(5)](/man/os/systemd/systemd.unit.5), [**touch**(1)](/man/os/systemd/touch.1)

systemd 262.2

---

Document: systemd-update-done.service(8) from systemd 262.2-r1 (Chainguard OS)
Source: https://github.com/systemd/systemd
