]> git.ipfire.org Git - thirdparty/systemd.git/blame - man/systemd-veritysetup-generator.xml
final v236 update (#7649)
[thirdparty/systemd.git] / man / systemd-veritysetup-generator.xml
CommitLineData
2f3dfc6f
LP
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<!--
572eb058
ZJS
5 SPDX-License-Identifier: LGPL-2.1+
6
2f3dfc6f
LP
7 This file is part of systemd.
8
9 Copyright 2016 Lennart Poettering
10
11 systemd is free software; you can redistribute it and/or modify it
12 under the terms of the GNU Lesser General Public License as published by
13 the Free Software Foundation; either version 2.1 of the License, or
14 (at your option) any later version.
15
16 systemd is distributed in the hope that it will be useful, but
17 WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 Lesser General Public License for more details.
20
21 You should have received a copy of the GNU Lesser General Public License
22 along with systemd; If not, see <http://www.gnu.org/licenses/>.
23-->
24<refentry id="systemd-veritysetup-generator" conditional='HAVE_LIBCRYPTSETUP'>
25
26 <refentryinfo>
27 <title>systemd-veritysetup-generator</title>
28 <productname>systemd</productname>
29
30 <authorgroup>
31 <author>
32 <contrib>Developer</contrib>
33 <firstname>Lennart</firstname>
34 <surname>Poettering</surname>
35 <email>lennart@poettering.net</email>
36 </author>
37 </authorgroup>
38 </refentryinfo>
39
40 <refmeta>
41 <refentrytitle>systemd-veritysetup-generator</refentrytitle>
42 <manvolnum>8</manvolnum>
43 </refmeta>
44
45 <refnamediv>
46 <refname>systemd-veritysetup-generator</refname>
47 <refpurpose>Unit generator for integrity protected block devices</refpurpose>
48 </refnamediv>
49
50 <refsynopsisdiv>
51 <para><filename>/usr/lib/systemd/system-generators/systemd-veritysetup-generator</filename></para>
52 </refsynopsisdiv>
53
54 <refsect1>
55 <title>Description</title>
56
57 <para><filename>systemd-veritysetup-generator</filename> is a generator that translates kernel command line options
58 configuring integrity protected block devices (verity) into native systemd units early at boot and when
59 configuration of the system manager is reloaded. This will create
60 <citerefentry><refentrytitle>systemd-veritysetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
61 units as necessary.</para>
62
63 <para>Currently, only a single verity device may be se up with this generator, backing the root file system of the
64 OS.</para>
65
66 <para><filename>systemd-veritysetup-generator</filename> implements
67 <citerefentry><refentrytitle>systemd.generator</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
68 </refsect1>
69
70 <refsect1>
71 <title>Kernel Command Line</title>
72
73 <para><filename>systemd-veritysetup-generator</filename>
74 understands the following kernel command line parameters:</para>
75
76 <variablelist class='kernel-commandline-options'>
77 <varlistentry>
78 <term><varname>systemd.verity=</varname></term>
79 <term><varname>rd.systemd.verity=</varname></term>
80
81 <listitem><para>Takes a boolean argument. Defaults to <literal>yes</literal>. If <literal>no</literal>,
82 disables the generator entirely. <varname>rd.systemd.verity=</varname> is honored only by the initial RAM disk
83 (initrd) while <varname>systemd.verity=</varname> is honored by both the host system and the
84 initrd. </para></listitem>
85 </varlistentry>
86
87 <varlistentry>
88 <term><varname>roothash=</varname></term>
89
90 <listitem><para>Takes a root hash value for the root file system. Expects a hash value formatted in hexadecimal
91 characters, of the appropriate length (i.e. most likely 256 bit/64 characters, or longer). If not specified via
92 <varname>systemd.verity_root_data=</varname> and <varname>systemd.verity_root_hash=</varname>, the hash and
93 data devices to use are automatically derived from the specified hash value. Specifically, the data partition
94 device is looked for under a GPT partition UUID derived from the first 128bit of the root hash, the hash
95 partition device is looked for under a GPT partition UUID derived from the last 128bit of the root hash. Hence
96 it is usually sufficient to specify the root hash to boot from an integrity protected root file system, as
97 device paths are automatically determined from it — as long as the partition table is properly set up.</para>
98 </listitem>
99 </varlistentry>
100
101 <varlistentry>
102 <term><varname>systemd.verity_root_data=</varname></term>
103 <term><varname>systemd.verity_root_hash=</varname></term>
104
105 <listitem><para>These two settings take block device paths as arguments, and may be use to explicitly configure
106 the data partition and hash partition to use for setting up the integrity protection for the root file
107 system. If not specified, these paths are automatically derived from the <varname>roothash=</varname> argument
108 (see above).</para></listitem>
109 </varlistentry>
110
111 </variablelist>
112 </refsect1>
113
114 <refsect1>
115 <title>See Also</title>
116 <para>
117 <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
118 <citerefentry><refentrytitle>systemd-veritysetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
119 <citerefentry project='die-net'><refentrytitle>veritysetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
120 <citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
121 </para>
122 </refsect1>
123
124</refentry>