2014-06-19 19:06:35 +04:00
<?xml version="1.0"?>
<!-- * - nxml - * -->
2019-03-14 16:40:58 +03:00
< !DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
2023-12-25 17:48:33 +03:00
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
2019-04-25 13:19:16 +03:00
<!ENTITY % entities SYSTEM "custom-entities.ent" >
%entities;
]>
2020-11-09 07:23:58 +03:00
<!-- SPDX - License - Identifier: LGPL - 2.1 - or - later -->
2024-03-31 23:18:19 +03:00
<refentry id= "systemd-debug-generator" xmlns:xi= "http://www.w3.org/2001/XInclude" >
2014-06-19 19:06:35 +04:00
2015-02-04 05:14:13 +03:00
<refentryinfo >
<title > systemd-debug-generator</title>
<productname > systemd</productname>
</refentryinfo>
<refmeta >
<refentrytitle > systemd-debug-generator</refentrytitle>
<manvolnum > 8</manvolnum>
</refmeta>
<refnamediv >
<refname > systemd-debug-generator</refname>
<refpurpose > Generator for enabling a runtime debug shell and
masking specific units at boot</refpurpose>
</refnamediv>
<refsynopsisdiv >
2015-06-18 20:47:44 +03:00
<para > <filename > /usr/lib/systemd/system-generators/systemd-debug-generator</filename> </para>
2015-02-04 05:14:13 +03:00
</refsynopsisdiv>
<refsect1 >
<title > Description</title>
<para > <filename > systemd-debug-generator</filename> is a generator
that reads the kernel command line and understands three
options:</para>
2018-10-25 17:34:00 +03:00
<para > If the <option > systemd.mask=</option> or <option > rd.systemd.mask=</option>
option is specified and followed by a unit name, this unit is
2022-08-23 13:12:28 +03:00
masked for the runtime (i.e. for this session — from boot to shutdown), similarly to the effect of
2015-02-04 05:14:13 +03:00
<citerefentry > <refentrytitle > systemctl</refentrytitle> <manvolnum > 1</manvolnum> </citerefentry> 's
<command > mask</command> command. This is useful to boot with
certain units removed from the initial boot transaction for
2018-10-25 17:34:00 +03:00
debugging system startup. May be specified more than once.
<option > rd.systemd.mask=</option> is honored only by initial
RAM disk (initrd) while <option > systemd.mask=</option> is
honored only in the main system.</para>
2015-02-04 05:14:13 +03:00
2018-10-25 17:34:00 +03:00
<para > If the <option > systemd.wants=</option> or
<option > rd.systemd.wants=</option> option is specified
2015-02-04 05:14:13 +03:00
and followed by a unit name, a start job for this unit is added to
the initial transaction. This is useful to start one or more
2018-10-25 17:34:00 +03:00
additional units at boot. May be specified more than once.
<option > rd.systemd.wants=</option> is honored only by initial
RAM disk (initrd) while <option > systemd.wants=</option> is
honored only in the main system.</para>
2015-02-04 05:14:13 +03:00
2024-02-08 12:54:54 +03:00
<para > If the <option > systemd.debug_shell</option> or <option > rd.systemd.debug_shell</option> option is
specified, the debug shell service <literal > debug-shell.service</literal> is pulled into the boot
transaction and a debug shell will be spawned during early boot. By default,
<filename > &DEBUGTTY; </filename> is used, but a specific tty can also be specified, either with or without
the <filename > /dev/</filename> prefix. To set the tty to use without enabling the debug shell, the
<option > systemd.default_debug_tty=</option> option can be used which also takes a tty with or without the
<filename > /dev/</filename> prefix. Note that the shell may also be turned on persistently by enabling it
with <citerefentry > <refentrytitle > systemctl</refentrytitle> <manvolnum > 1</manvolnum> </citerefentry> 's
2024-03-04 21:19:58 +03:00
<command > enable</command> command. <option > rd.systemd.debug_shell</option> is honored only by initial
2024-02-08 12:54:54 +03:00
RAM disk (initrd) while <option > systemd.debug_shell</option> is honored only in the main system.</para>
2015-02-04 05:14:13 +03:00
2015-03-05 02:43:20 +03:00
<para > <filename > systemd-debug-generator</filename> implements
<citerefentry > <refentrytitle > systemd.generator</refentrytitle> <manvolnum > 7</manvolnum> </citerefentry> .</para>
2015-02-04 05:14:13 +03:00
</refsect1>
2024-03-31 23:18:19 +03:00
<refsect1 >
<title > System Credentials</title>
<variablelist class= 'system-credentials' >
<varlistentry >
<term > <varname > systemd.extra-unit.*</varname> </term>
<listitem > <para > Credentials prefixed with <literal > systemd.extra-unit.</literal> specify additional
units to add to the final system. Note that these additional units are added to both the initrd and
the final system. <varname > ConditionPathExists=!/etc/initrd-release</varname> can be used to make
sure the unit is conditioned out in the initrd.</para>
<xi:include href= "version-info.xml" xpointer= "v256" /> </listitem>
</varlistentry>
<varlistentry >
<term > <varname > systemd.unit-dropin.*</varname> </term>
<listitem > <para > Credentials prefixed with <literal > systemd.unit-dropin.</literal> add drop-ins for
the corresponding units in the final system. Each credential must be suffixed with the full unit name
including the unit extension. Its contents must be a valid unit drop-in file. Only one drop-in per
unit can be specified. The name of the generated drop-in will be
<literal > 50-credential.conf</literal> . Note that these additional drop-ins are added to both the
initrd and the final system.</para>
<xi:include href= "version-info.xml" xpointer= "v256" /> </listitem>
</varlistentry>
</variablelist>
</refsect1>
2015-02-04 05:14:13 +03:00
<refsect1 >
<title > See Also</title>
2023-12-22 21:09:32 +03:00
<para > <simplelist type= "inline" >
<member > <citerefentry > <refentrytitle > systemd</refentrytitle> <manvolnum > 1</manvolnum> </citerefentry> </member>
<member > <citerefentry > <refentrytitle > systemctl</refentrytitle> <manvolnum > 1</manvolnum> </citerefentry> </member>
<member > <citerefentry > <refentrytitle > kernel-command-line</refentrytitle> <manvolnum > 7</manvolnum> </citerefentry> </member>
</simplelist> </para>
2015-02-04 05:14:13 +03:00
</refsect1>
2014-06-19 19:06:35 +04:00
</refentry>