chiark / gitweb /
machine-id-commit: add unit file
authorDidier Roche <didrocks@ubuntu.com>
Mon, 24 Nov 2014 09:12:06 +0000 (10:12 +0100)
committerLennart Poettering <lennart@poettering.net>
Wed, 3 Dec 2014 02:41:19 +0000 (03:41 +0100)
The unit file only active the machine-id-commit helper if /etc is mounted
writable and /etc/machine-id is an independant mount point (should be a tmpfs).

Makefile.am
units/.gitignore
units/systemd-machine-id-commit.service.in [new file with mode: 0644]

index 2efd033..5b46243 100644 (file)
@@ -537,6 +537,7 @@ nodist_systemunit_DATA = \
        units/systemd-kexec.service \
        units/systemd-fsck@.service \
        units/systemd-fsck-root.service \
        units/systemd-kexec.service \
        units/systemd-fsck@.service \
        units/systemd-fsck-root.service \
+       units/systemd-machine-id-commit.service \
        units/systemd-udevd.service \
        units/systemd-udev-trigger.service \
        units/systemd-udev-settle.service \
        units/systemd-udevd.service \
        units/systemd-udev-trigger.service \
        units/systemd-udev-settle.service \
@@ -589,6 +590,7 @@ EXTRA_DIST += \
        units/user/systemd-exit.service.in \
        units/systemd-fsck@.service.in \
        units/systemd-fsck-root.service.in \
        units/user/systemd-exit.service.in \
        units/systemd-fsck@.service.in \
        units/systemd-fsck-root.service.in \
+       units/systemd-machine-id-commit.service.in \
        units/user@.service.in \
        units/debug-shell.service.in \
        units/systemd-suspend.service.in \
        units/user@.service.in \
        units/debug-shell.service.in \
        units/systemd-suspend.service.in \
@@ -2227,6 +2229,9 @@ systemd_machine_id_commit_LDADD = \
        libsystemd-internal.la \
        libsystemd-shared.la
 
        libsystemd-internal.la \
        libsystemd-shared.la
 
+SYSINIT_TARGET_WANTS += \
+       systemd-machine-id-commit.service
+
 # ------------------------------------------------------------------------------
 systemd_ac_power_SOURCES = \
        src/ac-power/ac-power.c
 # ------------------------------------------------------------------------------
 systemd_ac_power_SOURCES = \
        src/ac-power/ac-power.c
index a1276e5..e12d299 100644 (file)
@@ -25,6 +25,7 @@
 /systemd-firstboot.service
 /systemd-fsck-root.service
 /systemd-fsck@.service
 /systemd-firstboot.service
 /systemd-fsck-root.service
 /systemd-fsck@.service
+/systemd-machine-id-commit.service
 /systemd-halt.service
 /systemd-hibernate.service
 /systemd-hostnamed.service
 /systemd-halt.service
 /systemd-hibernate.service
 /systemd-hostnamed.service
diff --git a/units/systemd-machine-id-commit.service.in b/units/systemd-machine-id-commit.service.in
new file mode 100644 (file)
index 0000000..dd765b6
--- /dev/null
@@ -0,0 +1,21 @@
+#  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=Commit a transient machine-id on disk
+Documentation=man:systemd-machine-id-commit.service(8)
+DefaultDependencies=no
+Conflicts=shutdown.target
+Before=sysinit.target shutdown.target
+After=local-fs.target
+ConditionPathIsReadWrite=/etc
+ConditionPathIsMountPoint=/etc/machine-id
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart=@rootlibexecdir@/systemd-machine-id-commit