]> git.ipfire.org Git - thirdparty/systemd.git/blob - man/systemd-machine-id-commit.service.xml
test-execute: Add tests for new PassEnvironment= directive
[thirdparty/systemd.git] / man / systemd-machine-id-commit.service.xml
1 <?xml version="1.0"?>
2 <!--*-nxml-*-->
3 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4 <!--
5 This file is part of systemd.
6
7 Copyright 2014 Didier Roche
8
9 systemd is free software; you can redistribute it and/or modify it
10 under the terms of the GNU Lesser General Public License as published by
11 the Free Software Foundation; either version 2.1 of the License, or
12 (at your option) any later version.
13
14 systemd is distributed in the hope that it will be useful, but
15 WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 Lesser General Public License for more details.
18
19 You should have received a copy of the GNU Lesser General Public License
20 along with systemd; If not, see <http://www.gnu.org/licenses/>.
21 -->
22 <refentry id="systemd-machine-id-commit.service">
23
24 <refentryinfo>
25 <title>systemd-machine-id-commit.service</title>
26 <productname>systemd</productname>
27
28 <authorgroup>
29 <author>
30 <contrib>Developer</contrib>
31 <firstname>Didier</firstname>
32 <surname>Roche</surname>
33 <email>didrocks@ubuntu.com</email>
34 </author>
35 </authorgroup>
36 </refentryinfo>
37
38 <refmeta>
39 <refentrytitle>systemd-machine-id-commit.service</refentrytitle>
40 <manvolnum>8</manvolnum>
41 </refmeta>
42
43 <refnamediv>
44 <refname>systemd-machine-id-commit.service</refname>
45 <refpurpose>Commit a transient machine ID to disk</refpurpose>
46 </refnamediv>
47
48 <refsynopsisdiv>
49 <para><filename>systemd-machine-id-commit.service</filename></para>
50 </refsynopsisdiv>
51
52 <refsect1>
53 <title>Description</title>
54
55 <para><filename>systemd-machine-id-commit.service</filename> is an
56 early boot service responsible for committing transient
57 <filename>/etc/machine-id</filename> files to a writable disk file
58 system. See
59 <citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
60 for more information about machine IDs.</para>
61
62 <para>This service is started after
63 <filename>local-fs.target</filename> in case
64 <filename>/etc/machine-id</filename> is a mount point of its own
65 (usually from a memory file system such as
66 <literal>tmpfs</literal>) and /etc is writable. The service will
67 invoke <command>systemd-machine-id-setup --commit</command>, which
68 writes the current transient machine ID to disk and unmount the
69 <filename>/etc/machine-id</filename> file in a race-free manner to
70 ensure that file is always valid and accessible for other
71 processes. See
72 <citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>
73 for details.</para>
74
75 <para>The main use case of this service are systems where
76 <filename>/etc/machine-id</filename> is read-only and initially
77 not initialized. In this case, the system manager will generate a
78 transient machine ID file on a memory file system, and mount it
79 over <filename>/etc/machine-id</filename>, during the early boot
80 phase. This service is then invoked in a later boot phase, as soon
81 as <filename>/etc</filename> has been remounted writable and the
82 ID may thus be committed to disk to make it permanent.</para>
83 </refsect1>
84
85 <refsect1>
86 <title>See Also</title>
87 <para>
88 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
89 <citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
90 <citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
91 <citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
92 </para>
93 </refsect1>
94
95 </refentry>