chiark / gitweb /
cryptsetup-generator: Add support for naming luks devices on kernel cmdline
[elogind.git] / man / systemd-cryptsetup-generator.xml
index 49d4d5545b810a683c57e24481eca4b53cae72d2..c8753cef37dff7a88214fe98e25f9863750d2803 100644 (file)
@@ -19,7 +19,7 @@
   You should have received a copy of the GNU Lesser General Public License
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
-<refentry id="systemd-cryptsetup-generator">
+<refentry id="systemd-cryptsetup-generator" conditional='HAVE_LIBCRYPTSETUP'>
 
         <refentryinfo>
                 <title>systemd-cryptsetup-generator</title>
@@ -72,7 +72,7 @@
                 <para><filename>systemd-cryptsetup-generator</filename> understands
                 the following kernel command line parameters:</para>
 
-                <variablelist>
+                <variablelist class='kernel-commandline-options'>
                         <varlistentry>
                                 <term><varname>luks=</varname></term>
                                 <term><varname>rd.luks=</varname></term>
@@ -80,7 +80,7 @@
                                 <listitem><para>Takes a boolean
                                 argument. Defaults to
                                 <literal>yes</literal>. If
-                                <literal>no</literal> disables the
+                                <literal>no</literal>, disables the
                                 generator
                                 entirely. <varname>rd.luks=</varname>
                                 is honored only by initial RAM disk
@@ -97,7 +97,7 @@
                                 <listitem><para>Takes a boolean
                                 argument. Defaults to
                                 <literal>yes</literal>. If
-                                <literal>no</literal> causes the
+                                <literal>no</literal>, causes the
                                 generator to ignore any devices
                                 configured in
                                 <filename>/etc/crypttab</filename>
                                 <term><varname>luks.uuid=</varname></term>
                                 <term><varname>rd.luks.uuid=</varname></term>
 
-                                <listitem><para>Takes a LUKS super
-                                block UUID as argument. This will
+                                <listitem><para>Takes a LUKS superblock
+                                UUID as argument. This will
                                 activate the specified device as part
                                 of the boot process as if it was
                                 listed in
-                                <filename>/etc/fstab</filename>. This
+                                <filename>/etc/crypttab</filename>. This
                                 option may be specified more than once
                                 in order to set up multiple
                                 devices. <varname>rd.luks.uuid=</varname>
                                 (initrd) while
                                 <varname>luks.uuid=</varname> is
                                 honored by both the main system and
-                                the initrd.</para></listitem>
+                                the initrd.</para>
+                                <para>If /etc/crypttab contains entries with
+                                the same UUID, then the name, keyfile and options
+                                specified there will be used. Otherwise the device
+                                will have the name <literal>luks-UUID</literal>.</para>
+                                <para>If /etc/crypttab exists, only those UUIDs
+                                specified on the kernel command line
+                                will be activated in the initrd or the real root.</para>
+                                </listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><varname>luks.name=</varname></term>
+                                <term><varname>rd.luks.name=</varname></term>
+
+                                <listitem><para>Takes a LUKS super
+                                block UUID followed by an '=' and a name. This implies
+                                <varname>rd.luks.uuid=</varname> or <varname>luks.uuid=</varname>
+                                and will additionally make the LUKS device given by
+                                the UUID appear under the provided name.</para>
+
+                                <para><varname>rd.luks.name=</varname>
+                                is honored only by initial RAM disk
+                                (initrd) while
+                                <varname>luks.name=</varname> is
+                                honored by both the main system and
+                                the initrd.</para>
+                                </listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><varname>luks.options=</varname></term>
+                                <term><varname>rd.luks.options=</varname></term>
+
+                                <listitem><para>Takes a LUKS super
+                                block UUID followed by an '=' and a string
+                                of options separated by commas as argument.
+                                This will override the options for the given
+                                UUID.</para>
+                                <para>If only a list of options, without an
+                                UUID, is specified, they apply to any UUIDs not
+                                specified elsewhere, and without an entry in
+                                /etc/crypttab.</para><para>
+                                <varname>rd.luks.options=</varname>
+                                is honored only by initial RAM disk
+                                (initrd) while
+                                <varname>luks.options=</varname> is
+                                honored by both the main system and
+                                the initrd.</para>
+                                </listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><varname>luks.key=</varname></term>
+                                <term><varname>rd.luks.key=</varname></term>
+
+                                <listitem><para>Takes a password file name as argument or
+                                a LUKS super block UUID followed by a '=' and a password
+                                file name.</para>
+
+                                <para>For those entries specified with
+                                <varname>rd.luks.uuid=</varname> or <varname>luks.uuid=</varname>,
+                                the password file will be set to the one specified by
+                                <varname>rd.luks.key=</varname> or <varname>luks.key=</varname>
+                                of the corresponding UUID, or the password file that was specified
+                                without a UUID.</para>
+                                <para><varname>rd.luks.key=</varname>
+                                is honored only by initial RAM disk
+                                (initrd) while
+                                <varname>luks.key=</varname> is
+                                honored by both the main system and
+                                the initrd.</para>
+                                </listitem>
                         </varlistentry>
                 </variablelist>
         </refsect1>