mirror of
https://github.com/systemd/systemd.git
synced 2024-11-23 18:23:32 +08:00
82c2214539
A fixed name is too rigid, let's give users the ability to define custom drop-in names which at the same time also allows defining multiple dropins per unit. We use ~ as the separator because: - ':' is not allowed in credential names - '=' is used to separate credential from value in mkosi's --credential argument. - '-' is commonly used in filenames - '@' already has meaning as the unit template specifier which might be confusing when adding dropins for template units
115 lines
5.6 KiB
XML
115 lines
5.6 KiB
XML
<?xml version="1.0"?>
|
|
<!--*-nxml-*-->
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
<!ENTITY % entities SYSTEM "custom-entities.ent" >
|
|
%entities;
|
|
]>
|
|
<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->
|
|
<refentry id="systemd-debug-generator" xmlns:xi="http://www.w3.org/2001/XInclude">
|
|
|
|
<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>
|
|
<para><filename>/usr/lib/systemd/system-generators/systemd-debug-generator</filename></para>
|
|
</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>
|
|
|
|
<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
|
|
masked for the runtime (i.e. for this session — from boot to shutdown), similarly to the effect of
|
|
<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
|
|
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>
|
|
|
|
<para>If the <option>systemd.wants=</option> or
|
|
<option>rd.systemd.wants=</option> option is specified
|
|
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
|
|
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>
|
|
|
|
<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
|
|
<command>enable</command> command. <option>rd.systemd.debug_shell</option> is honored only by initial
|
|
RAM disk (initrd) while <option>systemd.debug_shell</option> is honored only in the main system.</para>
|
|
|
|
<para><filename>systemd-debug-generator</filename> implements
|
|
<citerefentry><refentrytitle>systemd.generator</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
|
</refsect1>
|
|
|
|
<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. Note that this can also be used to mask units, by
|
|
simply specifying an empty value.</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. Optionally, the unit
|
|
name may be followed with <literal>~</literal>, followed by the drop-in name without the
|
|
<literal>.conf</literal> suffix. If not 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>
|
|
|
|
<refsect1>
|
|
<title>See Also</title>
|
|
<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>
|
|
</refsect1>
|
|
|
|
</refentry>
|