mirror of
https://github.com/morgan9e/systemd
synced 2026-04-14 00:14:32 +09:00
Reindent man pages to 2ch
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
- 8ch indent, no tabs
|
||||
- 8ch indent, no tabs, except for files in man/ which are 2ch indent,
|
||||
and still no tabs
|
||||
|
||||
- Don't break code lines too eagerly. We do *not* force line breaks at
|
||||
80ch, all of today's screens should be much larger than that. But
|
||||
|
||||
125
man/binfmt.d.xml
125
man/binfmt.d.xml
@@ -20,83 +20,82 @@
|
||||
along with systemd; If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<refentry id="binfmt.d" conditional='ENABLE_BINFMT'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>binfmt.d</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>binfmt.d</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>binfmt.d</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>binfmt.d</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>binfmt.d</refname>
|
||||
<refpurpose>Configure additional binary formats for
|
||||
executables at boot</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>binfmt.d</refname>
|
||||
<refpurpose>Configure additional binary formats for
|
||||
executables at boot</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/binfmt.d/*.conf</filename></para>
|
||||
<para><filename>/run/binfmt.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/binfmt.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/binfmt.d/*.conf</filename></para>
|
||||
<para><filename>/run/binfmt.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/binfmt.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>At boot,
|
||||
<citerefentry><refentrytitle>systemd-binfmt.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
reads configuration files from the above directories
|
||||
to register in the kernel additional binary
|
||||
formats for executables.</para>
|
||||
</refsect1>
|
||||
<para>At boot,
|
||||
<citerefentry><refentrytitle>systemd-binfmt.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
reads configuration files from the above directories to register
|
||||
in the kernel additional binary formats for executables.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Configuration Format</title>
|
||||
<refsect1>
|
||||
<title>Configuration Format</title>
|
||||
|
||||
<para>Each file contains a list of binfmt_misc kernel
|
||||
binary format rules. Consult <ulink
|
||||
url="https://www.kernel.org/doc/Documentation/binfmt_misc.txt">binfmt_misc.txt</ulink>
|
||||
for more information on registration of additional
|
||||
binary formats and how to write rules.</para>
|
||||
<para>Each file contains a list of binfmt_misc kernel binary
|
||||
format rules. Consult <ulink
|
||||
url="https://www.kernel.org/doc/Documentation/binfmt_misc.txt">binfmt_misc.txt</ulink>
|
||||
for more information on registration of additional binary formats
|
||||
and how to write rules.</para>
|
||||
|
||||
<para>Empty lines and lines beginning with ; and # are
|
||||
ignored. Note that this means you may not use ; and #
|
||||
as delimiter in binary format rules.</para>
|
||||
</refsect1>
|
||||
<para>Empty lines and lines beginning with ; and # are ignored.
|
||||
Note that this means you may not use ; and # as delimiter in
|
||||
binary format rules.</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<example>
|
||||
<title>/etc/binfmt.d/wine.conf example:</title>
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<example>
|
||||
<title>/etc/binfmt.d/wine.conf example:</title>
|
||||
|
||||
<programlisting># Start WINE on Windows executables
|
||||
<programlisting># Start WINE on Windows executables
|
||||
:DOSWin:M::MZ::/usr/bin/wine:</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
</example>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-binfmt.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>wine</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-binfmt.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>wine</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -26,148 +26,149 @@
|
||||
-->
|
||||
|
||||
<refentry id="bootchart.conf" conditional='ENABLE_BOOTCHART'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<refentryinfo>
|
||||
<title>bootchart.conf</title>
|
||||
<productname>systemd</productname>
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<refentryinfo>
|
||||
<title>bootchart.conf</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Auke</firstname>
|
||||
<surname>Kok</surname>
|
||||
<email>auke-jan.h.kok@intel.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Auke</firstname>
|
||||
<surname>Kok</surname>
|
||||
<email>auke-jan.h.kok@intel.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>bootchart.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>bootchart.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>bootchart.conf</refname>
|
||||
<refname>bootchart.conf.d</refname>
|
||||
<refpurpose>Boot performance analysis graphing tool configuration files</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>bootchart.conf</refname>
|
||||
<refname>bootchart.conf.d</refname>
|
||||
<refpurpose>Boot performance analysis graphing tool configuration files</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/systemd/bootchart.conf</filename></para>
|
||||
<para><filename>/etc/systemd/bootchart.conf.d/*.conf</filename></para>
|
||||
<para><filename>/run/systemd/bootchart.conf.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/systemd/bootchart.conf.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/systemd/bootchart.conf</filename></para>
|
||||
<para><filename>/etc/systemd/bootchart.conf.d/*.conf</filename></para>
|
||||
<para><filename>/run/systemd/bootchart.conf.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/systemd/bootchart.conf.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>When starting, systemd-bootchart will read the
|
||||
configuration file
|
||||
<filename>/etc/systemd/bootchart.conf</filename>, followed by
|
||||
the files in the <filename>bootchart.conf.d</filename>
|
||||
directories. These configuration files determine logging
|
||||
parameters and graph output.</para>
|
||||
</refsect1>
|
||||
<para>When starting, systemd-bootchart will read the configuration
|
||||
file <filename>/etc/systemd/bootchart.conf</filename>, followed by
|
||||
the files in the <filename>bootchart.conf.d</filename>
|
||||
directories. These configuration files determine logging
|
||||
parameters and graph output.</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="conf" />
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="conf" />
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<variablelist class='bootchart-directives'>
|
||||
<variablelist class='bootchart-directives'>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>Samples=500</varname></term>
|
||||
<listitem><para>Configure the amount of samples to
|
||||
record in total before bootchart exits. Each sample will
|
||||
record at intervals defined by Frequency=.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>Samples=500</varname></term>
|
||||
<listitem><para>Configure the amount of samples to record in
|
||||
total before bootchart exits. Each sample will record at
|
||||
intervals defined by Frequency=.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>Frequency=25</varname></term>
|
||||
<listitem><para>Configure the sample log frequency.
|
||||
This can be a fractional number, but must be larger than
|
||||
0.0. Most systems can cope with values under 25-50 without
|
||||
impacting boot time severely.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>Frequency=25</varname></term>
|
||||
<listitem><para>Configure the sample log frequency. This can
|
||||
be a fractional number, but must be larger than 0.0. Most
|
||||
systems can cope with values under 25-50 without impacting
|
||||
boot time severely.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>Relative=no</varname></term>
|
||||
<listitem><para>Configures whether the left axis of the
|
||||
output graph equals time=0.0 (<constant>CLOCK_MONOTONIC</constant> start). This
|
||||
is useful for using bootchart at post-boot time to profile
|
||||
an already booted system, otherwise the graph would become
|
||||
extremely large. If set to yes, the horizontal axis starts
|
||||
at the first recorded sample instead of time=0.0.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>Relative=no</varname></term>
|
||||
<listitem><para>Configures whether the left axis of the output
|
||||
graph equals time=0.0 (<constant>CLOCK_MONOTONIC</constant>
|
||||
start). This is useful for using bootchart at post-boot time
|
||||
to profile an already booted system, otherwise the graph would
|
||||
become extremely large. If set to yes, the horizontal axis
|
||||
starts at the first recorded sample instead of time=0.0.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>Filter=no</varname></term>
|
||||
<listitem><para>Configures whether the resulting graph
|
||||
should omit tasks that did not contribute significantly
|
||||
to the boot. Processes that are too short-lived (only
|
||||
seen in one sample) or that do not consume any significant
|
||||
CPU time (less than 0.001sec) will not be displayed in
|
||||
the output graph.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>Filter=no</varname></term>
|
||||
<listitem><para>Configures whether the resulting graph should
|
||||
omit tasks that did not contribute significantly to the boot.
|
||||
Processes that are too short-lived (only seen in one sample)
|
||||
or that do not consume any significant CPU time (less than
|
||||
0.001sec) will not be displayed in the output
|
||||
graph.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>Output=[path]</varname></term>
|
||||
<listitem><para>Configures the output directory for writing
|
||||
the graphs. By default, bootchart writes the graphs to
|
||||
<filename>/run/log</filename>.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>Output=[path]</varname></term>
|
||||
<listitem><para>Configures the output directory for writing
|
||||
the graphs. By default, bootchart writes the graphs to
|
||||
<filename>/run/log</filename>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>Init=[path]</varname></term>
|
||||
<listitem><para>Configures bootchart to run a non-standard
|
||||
binary instead of <filename>/usr/lib/systemd/systemd</filename>. This
|
||||
option is only relevant if bootchart was invoked from the
|
||||
kernel command line with
|
||||
init=/usr/lib/systemd/systemd-bootchart.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>Init=[path]</varname></term>
|
||||
<listitem><para>Configures bootchart to run a non-standard
|
||||
binary instead of
|
||||
<filename>/usr/lib/systemd/systemd</filename>. This option is
|
||||
only relevant if bootchart was invoked from the kernel command
|
||||
line with
|
||||
init=/usr/lib/systemd/systemd-bootchart.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>PlotMemoryUsage=no</varname></term>
|
||||
<listitem><para>If set to yes, enables logging and graphing
|
||||
of processes' PSS memory consumption.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>PlotMemoryUsage=no</varname></term>
|
||||
<listitem><para>If set to yes, enables logging and graphing of
|
||||
processes' PSS memory consumption.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>PlotEntropyGraph=no</varname></term>
|
||||
<listitem><para>If set to yes, enables logging and graphing
|
||||
of the kernel random entropy pool size.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>PlotEntropyGraph=no</varname></term>
|
||||
<listitem><para>If set to yes, enables logging and graphing of
|
||||
the kernel random entropy pool size.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>ScaleX=100</varname></term>
|
||||
<listitem><para>Horizontal scaling factor for all variable
|
||||
graph components.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>ScaleX=100</varname></term>
|
||||
<listitem><para>Horizontal scaling factor for all variable
|
||||
graph components.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>ScaleY=20</varname></term>
|
||||
<listitem><para>Vertical scaling factor for all variable
|
||||
graph components.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>ScaleY=20</varname></term>
|
||||
<listitem><para>Vertical scaling factor for all variable graph
|
||||
components.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>ControlGroup=no</varname></term>
|
||||
<listitem><para>Display process control group.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>ControlGroup=no</varname></term>
|
||||
<listitem><para>Display process control group.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd-bootchart</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.directives</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
142
man/bootctl.xml
142
man/bootctl.xml
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -20,95 +20,93 @@
|
||||
-->
|
||||
|
||||
<refentry id="bootctl" conditional='ENABLE_EFI'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>bootctl</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>bootctl</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Kay</firstname>
|
||||
<surname>Sievers</surname>
|
||||
<email>kay@vrfy.org</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Kay</firstname>
|
||||
<surname>Sievers</surname>
|
||||
<email>kay@vrfy.org</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>bootctl</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>bootctl</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>bootctl</refname>
|
||||
<refpurpose>Control the firmware and boot manager settings</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>bootctl</refname>
|
||||
<refpurpose>Control the firmware and boot manager settings</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>bootctl</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="req">COMMAND</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>bootctl</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="req">COMMAND</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>bootctl</command> may be used to
|
||||
query or (in the future) change the firmware and boot
|
||||
manager settings.</para>
|
||||
<para><command>bootctl</command> may be used to query or (in the
|
||||
future) change the firmware and boot manager settings.</para>
|
||||
|
||||
<para>Firmware information is available only on EFI
|
||||
systems.</para>
|
||||
<para>Firmware information is available only on EFI systems.
|
||||
</para>
|
||||
|
||||
<para>Currently, only the <citerefentry project='gummiboot'><refentrytitle>gummiboot</refentrytitle><manvolnum>8</manvolnum></citerefentry> boot
|
||||
manager implements the required boot loader interface
|
||||
to provide complete boot manager information.</para>
|
||||
</refsect1>
|
||||
<para>Currently, only the
|
||||
<citerefentry project='gummiboot'><refentrytitle>gummiboot</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
boot manager implements the required boot loader interface to
|
||||
provide complete boot manager information.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
<variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
|
||||
<para>The following commands are understood:</para>
|
||||
<para>The following commands are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><command>status</command></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><command>status</command></term>
|
||||
|
||||
<listitem><para>Show firmware and boot
|
||||
manager information about the system,
|
||||
including secure boot mode status and
|
||||
selected firmware entry (where
|
||||
available).</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<listitem><para>Show firmware and boot manager information
|
||||
about the system, including secure boot mode status and
|
||||
selected firmware entry (where available).</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<ulink url="http://www.freedesktop.org/wiki/Software/systemd/BootLoaderInterface">Boot loader interface</ulink>,
|
||||
<ulink url="http://www.freedesktop.org/wiki/Specifications/BootLoaderSpec">Boot loader specification</ulink>,
|
||||
<ulink url="http://www.freedesktop.org/wiki/Software/gummiboot/">gummiboot</ulink>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<ulink url="http://www.freedesktop.org/wiki/Software/systemd/BootLoaderInterface">Boot loader interface</ulink>,
|
||||
<ulink url="http://www.freedesktop.org/wiki/Specifications/BootLoaderSpec">Boot loader specification</ulink>,
|
||||
<ulink url="http://www.freedesktop.org/wiki/Software/gummiboot/">gummiboot</ulink>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
518
man/bootup.xml
518
man/bootup.xml
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,301 +23,279 @@
|
||||
|
||||
<refentry id="bootup">
|
||||
|
||||
<refentryinfo>
|
||||
<title>bootup</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>bootup</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>bootup</refentrytitle>
|
||||
<manvolnum>7</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>bootup</refentrytitle>
|
||||
<manvolnum>7</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>bootup</refname>
|
||||
<refpurpose>System bootup process</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>bootup</refname>
|
||||
<refpurpose>System bootup process</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>A number of different components are involved in
|
||||
the system boot. Immediately after power-up, the
|
||||
system BIOS will do minimal hardware initialization,
|
||||
and hand control over to a boot loader stored on a
|
||||
persistent storage device. This boot loader will then
|
||||
invoke an OS kernel from disk (or the network). In the
|
||||
Linux case, this kernel (optionally) extracts and
|
||||
executes an initial RAM disk image (initrd), such as
|
||||
generated by
|
||||
<citerefentry project='die-net'><refentrytitle>dracut</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
which looks for the root file system (possibly using
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
for this). After the root file system is found and
|
||||
mounted, the initrd hands over control to the host's
|
||||
system manager (such as
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>)
|
||||
stored on the OS image, which is then responsible for
|
||||
probing all remaining hardware, mounting all necessary
|
||||
file systems and spawning all configured
|
||||
services.</para>
|
||||
<para>A number of different components are involved in the system
|
||||
boot. Immediately after power-up, the system BIOS will do minimal
|
||||
hardware initialization, and hand control over to a boot loader
|
||||
stored on a persistent storage device. This boot loader will then
|
||||
invoke an OS kernel from disk (or the network). In the Linux case,
|
||||
this kernel (optionally) extracts and executes an initial RAM disk
|
||||
image (initrd), such as generated by
|
||||
<citerefentry project='die-net'><refentrytitle>dracut</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
which looks for the root file system (possibly using
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
for this). After the root file system is found and mounted, the
|
||||
initrd hands over control to the host's system manager (such as
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>)
|
||||
stored on the OS image, which is then responsible for probing all
|
||||
remaining hardware, mounting all necessary file systems and
|
||||
spawning all configured services.</para>
|
||||
|
||||
<para>On shutdown, the system manager stops all
|
||||
services, unmounts all file systems (detaching the
|
||||
storage technologies backing them), and then
|
||||
(optionally) jumps back into the initrd code which
|
||||
unmounts/detaches the root file system and the storage
|
||||
it resides on. As a last step, the system is powered down.</para>
|
||||
<para>On shutdown, the system manager stops all services, unmounts
|
||||
all file systems (detaching the storage technologies backing
|
||||
them), and then (optionally) jumps back into the initrd code which
|
||||
unmounts/detaches the root file system and the storage it resides
|
||||
on. As a last step, the system is powered down.</para>
|
||||
|
||||
<para>Additional information about the system boot
|
||||
process may be found in
|
||||
<citerefentry project='man-pages'><refentrytitle>boot</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
<para>Additional information about the system boot process may be
|
||||
found in
|
||||
<citerefentry project='man-pages'><refentrytitle>boot</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>System Manager Bootup</title>
|
||||
<refsect1>
|
||||
<title>System Manager Bootup</title>
|
||||
|
||||
<para>At boot, the system manager on the OS image is
|
||||
responsible for initializing the required file
|
||||
systems, services and drivers that are necessary for
|
||||
operation of the system. On
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
systems, this process is split up in various discrete
|
||||
steps which are exposed as target units. (See
|
||||
<citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for detailed information about target units.) The
|
||||
boot-up process is highly parallelized so that the
|
||||
order in which specific target units are reached is not
|
||||
deterministic, but still adheres to a limited amount
|
||||
of ordering structure.</para>
|
||||
<para>At boot, the system manager on the OS image is responsible
|
||||
for initializing the required file systems, services and drivers
|
||||
that are necessary for operation of the system. On
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
systems, this process is split up in various discrete steps which
|
||||
are exposed as target units. (See
|
||||
<citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for detailed information about target units.) The boot-up process
|
||||
is highly parallelized so that the order in which specific target
|
||||
units are reached is not deterministic, but still adheres to a
|
||||
limited amount of ordering structure.</para>
|
||||
|
||||
<para>When systemd starts up the system, it will
|
||||
activate all units that are dependencies of
|
||||
<filename>default.target</filename> (as well as
|
||||
recursively all dependencies of these
|
||||
dependencies). Usually,
|
||||
<filename>default.target</filename> is simply an alias
|
||||
of <filename>graphical.target</filename> or
|
||||
<filename>multi-user.target</filename>, depending on
|
||||
whether the system is configured for a graphical UI or
|
||||
only for a text console. To enforce minimal ordering
|
||||
between the units pulled in, a number of well-known
|
||||
target units are available, as listed on
|
||||
<citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
||||
<para>When systemd starts up the system, it will activate all
|
||||
units that are dependencies of <filename>default.target</filename>
|
||||
(as well as recursively all dependencies of these dependencies).
|
||||
Usually, <filename>default.target</filename> is simply an alias of
|
||||
<filename>graphical.target</filename> or
|
||||
<filename>multi-user.target</filename>, depending on whether the
|
||||
system is configured for a graphical UI or only for a text
|
||||
console. To enforce minimal ordering between the units pulled in,
|
||||
a number of well-known target units are available, as listed on
|
||||
<citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para>The following chart is a structural overview of
|
||||
these well-known units and their position in the
|
||||
boot-up logic. The arrows describe which units are
|
||||
pulled in and ordered before which other units. Units
|
||||
near the top are started before units nearer to the
|
||||
bottom of the chart.</para>
|
||||
<para>The following chart is a structural overview of these
|
||||
well-known units and their position in the boot-up logic. The
|
||||
arrows describe which units are pulled in and ordered before which
|
||||
other units. Units near the top are started before units nearer to
|
||||
the bottom of the chart.</para>
|
||||
|
||||
<programlisting>local-fs-pre.target
|
||||
|
|
||||
v
|
||||
|
|
||||
v
|
||||
(various mounts and (various swap (various cryptsetup
|
||||
fsck services...) devices...) devices...) (various low-level (various low-level
|
||||
| | | services: udevd, API VFS mounts:
|
||||
v v v tmpfiles, random mqueue, configfs,
|
||||
fsck services...) devices...) devices...) (various low-level (various low-level
|
||||
| | | services: udevd, API VFS mounts:
|
||||
v v v tmpfiles, random mqueue, configfs,
|
||||
local-fs.target swap.target cryptsetup.target seed, sysctl, ...) debugfs, ...)
|
||||
| | | | |
|
||||
\__________________|_________________ | ___________________|____________________/
|
||||
\|/
|
||||
v
|
||||
sysinit.target
|
||||
|
|
||||
____________________________________/|\________________________________________
|
||||
/ | | | \
|
||||
| | | | |
|
||||
v v | v v
|
||||
(various (various | (various rescue.service
|
||||
timers...) paths...) | sockets...) |
|
||||
| | | | v
|
||||
v v | v <emphasis>rescue.target</emphasis>
|
||||
timers.target paths.target | sockets.target
|
||||
| | | |
|
||||
v |_________________ | ___________________/
|
||||
\|/
|
||||
v
|
||||
basic.target
|
||||
|
|
||||
____________________________________/| emergency.service
|
||||
/ | | |
|
||||
| | | v
|
||||
v v v <emphasis>emergency.target</emphasis>
|
||||
display- (various system (various system
|
||||
manager.service services services)
|
||||
| required for |
|
||||
| graphical UIs) v
|
||||
| | <emphasis>multi-user.target</emphasis>
|
||||
| | |
|
||||
\_________________ | _________________/
|
||||
\|/
|
||||
v
|
||||
<emphasis>graphical.target</emphasis></programlisting>
|
||||
| | | | |
|
||||
\__________________|_________________ | ___________________|____________________/
|
||||
\|/
|
||||
v
|
||||
sysinit.target
|
||||
|
|
||||
____________________________________/|\________________________________________
|
||||
/ | | | \
|
||||
| | | | |
|
||||
v v | v v
|
||||
(various (various | (various rescue.service
|
||||
timers...) paths...) | sockets...) |
|
||||
| | | | v
|
||||
v v | v <emphasis>rescue.target</emphasis>
|
||||
timers.target paths.target | sockets.target
|
||||
| | | |
|
||||
v |_________________ | ___________________/
|
||||
\|/
|
||||
v
|
||||
basic.target
|
||||
|
|
||||
____________________________________/| emergency.service
|
||||
/ | | |
|
||||
| | | v
|
||||
v v v <emphasis>emergency.target</emphasis>
|
||||
display- (various system (various system
|
||||
manager.service services services)
|
||||
| required for |
|
||||
| graphical UIs) v
|
||||
| | <emphasis>multi-user.target</emphasis>
|
||||
| | |
|
||||
\_________________ | _________________/
|
||||
\|/
|
||||
v
|
||||
<emphasis>graphical.target</emphasis></programlisting>
|
||||
|
||||
<para>Target units that are commonly used as boot
|
||||
targets are <emphasis>emphasized</emphasis>. These
|
||||
units are good choices as goal targets, for
|
||||
example by passing them to the
|
||||
<varname>systemd.unit=</varname> kernel command line
|
||||
option (see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>)
|
||||
or by symlinking <filename>default.target</filename>
|
||||
to them.</para>
|
||||
<para>Target units that are commonly used as boot targets are
|
||||
<emphasis>emphasized</emphasis>. These units are good choices as
|
||||
goal targets, for example by passing them to the
|
||||
<varname>systemd.unit=</varname> kernel command line option (see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>)
|
||||
or by symlinking <filename>default.target</filename> to
|
||||
them.</para>
|
||||
|
||||
<para><filename>timers.target</filename> is pulled-in
|
||||
by <filename>basic.target</filename> asynchronously.
|
||||
This allows timers units to depend on services which
|
||||
become only available later in boot.</para>
|
||||
</refsect1>
|
||||
<para><filename>timers.target</filename> is pulled-in by
|
||||
<filename>basic.target</filename> asynchronously. This allows
|
||||
timers units to depend on services which become only available
|
||||
later in boot.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Bootup in the Initial RAM Disk (initrd)</title>
|
||||
<para>The initial RAM disk implementation (initrd) can
|
||||
be set up using systemd as well. In this case, boot up
|
||||
inside the initrd follows the following
|
||||
structure.</para>
|
||||
<refsect1>
|
||||
<title>Bootup in the Initial RAM Disk (initrd)</title>
|
||||
<para>The initial RAM disk implementation (initrd) can be set up
|
||||
using systemd as well. In this case, boot up inside the initrd
|
||||
follows the following structure.</para>
|
||||
|
||||
<para>The default target in the initrd is
|
||||
<filename>initrd.target</filename>. The bootup process
|
||||
begins identical to the system manager bootup (see
|
||||
above) until it reaches
|
||||
<filename>basic.target</filename>. From there, systemd
|
||||
approaches the special target
|
||||
<filename>initrd.target</filename>. If the root device
|
||||
can be mounted at <filename>/sysroot</filename>, the
|
||||
<filename>sysroot.mount</filename> unit becomes active
|
||||
and <filename>initrd-root-fs.target</filename> is
|
||||
reached. The service
|
||||
<filename>initrd-parse-etc.service</filename> scans
|
||||
<filename>/sysroot/etc/fstab</filename> for a possible
|
||||
<filename>/usr</filename> mount point and additional
|
||||
entries marked with the
|
||||
<emphasis>x-initrd.mount</emphasis> option. All
|
||||
entries found are mounted below
|
||||
<filename>/sysroot</filename>, and
|
||||
<filename>initrd-fs.target</filename> is reached. The
|
||||
service <filename>initrd-cleanup.service</filename>
|
||||
isolates to the
|
||||
<filename>initrd-switch-root.target</filename>, where
|
||||
cleanup services can run. As the very last step, the
|
||||
<filename>initrd-switch-root.service</filename> is
|
||||
activated, which will cause the system to switch its
|
||||
root to <filename>/sysroot</filename>.
|
||||
</para>
|
||||
<para>The default target in the initrd is
|
||||
<filename>initrd.target</filename>. The bootup process begins
|
||||
identical to the system manager bootup (see above) until it
|
||||
reaches <filename>basic.target</filename>. From there, systemd
|
||||
approaches the special target <filename>initrd.target</filename>.
|
||||
If the root device can be mounted at
|
||||
<filename>/sysroot</filename>, the
|
||||
<filename>sysroot.mount</filename> unit becomes active and
|
||||
<filename>initrd-root-fs.target</filename> is reached. The service
|
||||
<filename>initrd-parse-etc.service</filename> scans
|
||||
<filename>/sysroot/etc/fstab</filename> for a possible
|
||||
<filename>/usr</filename> mount point and additional entries
|
||||
marked with the <emphasis>x-initrd.mount</emphasis> option. All
|
||||
entries found are mounted below <filename>/sysroot</filename>, and
|
||||
<filename>initrd-fs.target</filename> is reached. The service
|
||||
<filename>initrd-cleanup.service</filename> isolates to the
|
||||
<filename>initrd-switch-root.target</filename>, where cleanup
|
||||
services can run. As the very last step, the
|
||||
<filename>initrd-switch-root.service</filename> is activated,
|
||||
which will cause the system to switch its root to
|
||||
<filename>/sysroot</filename>.
|
||||
</para>
|
||||
|
||||
<programlisting> : (beginning identical to above)
|
||||
:
|
||||
v
|
||||
basic.target
|
||||
| emergency.service
|
||||
______________________/| |
|
||||
/ | v
|
||||
| sysroot.mount <emphasis>emergency.target</emphasis>
|
||||
| |
|
||||
| v
|
||||
| initrd-root-fs.target
|
||||
| |
|
||||
| v
|
||||
v initrd-parse-etc.service
|
||||
(custom initrd |
|
||||
services...) v
|
||||
| (sysroot-usr.mount and
|
||||
| various mounts marked
|
||||
| with fstab option
|
||||
| x-initrd.mount...)
|
||||
| |
|
||||
| v
|
||||
| initrd-fs.target
|
||||
\______________________ |
|
||||
\|
|
||||
v
|
||||
initrd.target
|
||||
|
|
||||
v
|
||||
initrd-cleanup.service
|
||||
isolates to
|
||||
initrd-switch-root.target
|
||||
|
|
||||
v
|
||||
______________________/|
|
||||
/ v
|
||||
| initrd-udevadm-cleanup-db.service
|
||||
v |
|
||||
(custom initrd |
|
||||
services...) |
|
||||
\______________________ |
|
||||
\|
|
||||
v
|
||||
initrd-switch-root.target
|
||||
|
|
||||
v
|
||||
initrd-switch-root.service
|
||||
|
|
||||
v
|
||||
Transition to Host OS</programlisting>
|
||||
</refsect1>
|
||||
<programlisting> : (beginning identical to above)
|
||||
:
|
||||
v
|
||||
basic.target
|
||||
| emergency.service
|
||||
______________________/| |
|
||||
/ | v
|
||||
| sysroot.mount <emphasis>emergency.target</emphasis>
|
||||
| |
|
||||
| v
|
||||
| initrd-root-fs.target
|
||||
| |
|
||||
| v
|
||||
v initrd-parse-etc.service
|
||||
(custom initrd |
|
||||
services...) v
|
||||
| (sysroot-usr.mount and
|
||||
| various mounts marked
|
||||
| with fstab option
|
||||
| x-initrd.mount...)
|
||||
| |
|
||||
| v
|
||||
| initrd-fs.target
|
||||
\______________________ |
|
||||
\|
|
||||
v
|
||||
initrd.target
|
||||
|
|
||||
v
|
||||
initrd-cleanup.service
|
||||
isolates to
|
||||
initrd-switch-root.target
|
||||
|
|
||||
v
|
||||
______________________/|
|
||||
/ v
|
||||
| initrd-udevadm-cleanup-db.service
|
||||
v |
|
||||
(custom initrd |
|
||||
services...) |
|
||||
\______________________ |
|
||||
\|
|
||||
v
|
||||
initrd-switch-root.target
|
||||
|
|
||||
v
|
||||
initrd-switch-root.service
|
||||
|
|
||||
v
|
||||
Transition to Host OS</programlisting>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>System Manager Shutdown</title>
|
||||
<refsect1>
|
||||
<title>System Manager Shutdown</title>
|
||||
|
||||
<para>System shutdown with systemd also consists of
|
||||
various target units with some minimal ordering
|
||||
structure applied:</para>
|
||||
<para>System shutdown with systemd also consists of various target
|
||||
units with some minimal ordering structure applied:</para>
|
||||
|
||||
|
||||
|
||||
|
||||
<programlisting> (conflicts with (conflicts with
|
||||
all system all file system
|
||||
services) mounts, swaps,
|
||||
| cryptsetup
|
||||
| devices, ...)
|
||||
| |
|
||||
v v
|
||||
shutdown.target umount.target
|
||||
| |
|
||||
\_______ ______/
|
||||
\ /
|
||||
v
|
||||
(various low-level
|
||||
services)
|
||||
|
|
||||
v
|
||||
final.target
|
||||
|
|
||||
_____________________________________/ \_________________________________
|
||||
/ | | \
|
||||
| | | |
|
||||
v v v v
|
||||
<programlisting> (conflicts with (conflicts with
|
||||
all system all file system
|
||||
services) mounts, swaps,
|
||||
| cryptsetup
|
||||
| devices, ...)
|
||||
| |
|
||||
v v
|
||||
shutdown.target umount.target
|
||||
| |
|
||||
\_______ ______/
|
||||
\ /
|
||||
v
|
||||
(various low-level
|
||||
services)
|
||||
|
|
||||
v
|
||||
final.target
|
||||
|
|
||||
_____________________________________/ \_________________________________
|
||||
/ | | \
|
||||
| | | |
|
||||
v v v v
|
||||
systemd-reboot.service systemd-poweroff.service systemd-halt.service systemd-kexec.service
|
||||
| | | |
|
||||
v v v v
|
||||
<emphasis>reboot.target</emphasis> <emphasis>poweroff.target</emphasis> <emphasis>halt.target</emphasis> <emphasis>kexec.target</emphasis></programlisting>
|
||||
| | | |
|
||||
v v v v
|
||||
<emphasis>reboot.target</emphasis> <emphasis>poweroff.target</emphasis> <emphasis>halt.target</emphasis> <emphasis>kexec.target</emphasis></programlisting>
|
||||
|
||||
<para>Commonly used system shutdown targets are <emphasis>emphasized</emphasis>.</para>
|
||||
</refsect1>
|
||||
<para>Commonly used system shutdown targets are
|
||||
<emphasis>emphasized</emphasis>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>boot</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>dracut</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>boot</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>dracut</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,227 +22,216 @@
|
||||
-->
|
||||
|
||||
<refentry id="coredumpctl" conditional='ENABLE_COREDUMP'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>coredumpctl</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>coredumpctl</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Zbigniew</firstname>
|
||||
<surname>Jędrzejewski-Szmek</surname>
|
||||
<email>zbyszek@in.waw.pl</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Zbigniew</firstname>
|
||||
<surname>Jędrzejewski-Szmek</surname>
|
||||
<email>zbyszek@in.waw.pl</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>coredumpctl</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>coredumpctl</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>coredumpctl</refname>
|
||||
<refpurpose>Retrieve coredumps from the journal</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>coredumpctl</refname>
|
||||
<refpurpose>Retrieve coredumps from the journal</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>coredumpctl</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="req">COMMAND</arg>
|
||||
<arg choice="opt" rep="repeat">PID|COMM|EXE|MATCH</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>coredumpctl</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="req">COMMAND</arg>
|
||||
<arg choice="opt" rep="repeat">PID|COMM|EXE|MATCH</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>coredumpctl</command> may be used to
|
||||
retrieve coredumps from
|
||||
<citerefentry><refentrytitle>systemd-journald</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
<para><command>coredumpctl</command> may be used to
|
||||
retrieve coredumps from
|
||||
<citerefentry><refentrytitle>systemd-journald</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--no-legend</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--no-legend</option></term>
|
||||
|
||||
<listitem><para>Do not print column headers.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Do not print column headers.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-1</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-1</option></term>
|
||||
|
||||
<listitem><para>Show information of a
|
||||
single coredump only, instead of
|
||||
listing all known coredumps.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Show information of a single coredump only,
|
||||
instead of listing all known coredumps. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-F</option></term>
|
||||
<term><option>--field=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-F</option></term>
|
||||
<term><option>--field=</option></term>
|
||||
|
||||
<listitem><para>Print all possible
|
||||
data values the specified field
|
||||
takes in matching coredump entries of the
|
||||
journal.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Print all possible data values the specified
|
||||
field takes in matching coredump entries of the
|
||||
journal.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-o</option></term>
|
||||
<term><option>--output=FILE</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-o</option></term>
|
||||
<term><option>--output=FILE</option></term>
|
||||
|
||||
<listitem><para>Write the core to
|
||||
<option>FILE</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Write the core to <option>FILE</option>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
|
||||
</variablelist>
|
||||
</variablelist>
|
||||
|
||||
<para>The following commands are understood:</para>
|
||||
<para>The following commands are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><command>list</command></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><command>list</command></term>
|
||||
|
||||
<listitem><para>List coredumps
|
||||
captured in the journal matching
|
||||
specified characteristics. If no
|
||||
command is specified, this is the
|
||||
implied default.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>List coredumps captured in the journal
|
||||
matching specified characteristics. If no command is
|
||||
specified, this is the implied default.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>info</command></term>
|
||||
<varlistentry>
|
||||
<term><command>info</command></term>
|
||||
|
||||
<listitem><para>Show detailed
|
||||
information about coredumps captured
|
||||
in the journal.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Show detailed information about coredumps
|
||||
captured in the journal.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>dump</command></term>
|
||||
<varlistentry>
|
||||
<term><command>dump</command></term>
|
||||
|
||||
<listitem><para>Extract the last coredump
|
||||
matching specified characteristics.
|
||||
The coredump will be written on standard output,
|
||||
unless an output file is specified with
|
||||
<option>-o/--output</option>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Extract the last coredump matching specified
|
||||
characteristics. The coredump will be written on standard
|
||||
output, unless an output file is specified with
|
||||
<option>-o/--output</option>. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>gdb</command></term>
|
||||
<varlistentry>
|
||||
<term><command>gdb</command></term>
|
||||
|
||||
<listitem><para>Invoke the GNU
|
||||
debugger on the last coredump matching
|
||||
specified characteristics.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Invoke the GNU debugger on the last coredump
|
||||
matching specified characteristics. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Matching</title>
|
||||
<refsect1>
|
||||
<title>Matching</title>
|
||||
|
||||
<para>A match can be:</para>
|
||||
<para>A match can be:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><replaceable>PID</replaceable></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><replaceable>PID</replaceable></term>
|
||||
|
||||
<listitem><para>Process ID of the
|
||||
process that dumped
|
||||
core. An integer.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Process ID of the
|
||||
process that dumped
|
||||
core. An integer.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><replaceable>COMM</replaceable></term>
|
||||
<varlistentry>
|
||||
<term><replaceable>COMM</replaceable></term>
|
||||
|
||||
<listitem><para>Name of the executable
|
||||
(matches <option>COREDUMP_COMM=</option>).
|
||||
Must not contain slashes.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Name of the executable (matches
|
||||
<option>COREDUMP_COMM=</option>). Must not contain slashes.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><replaceable>EXE</replaceable></term>
|
||||
<varlistentry>
|
||||
<term><replaceable>EXE</replaceable></term>
|
||||
|
||||
<listitem><para>Path to the executable
|
||||
(matches <option>COREDUMP_EXE=</option>).
|
||||
Must contain at least one slash.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Path to the executable (matches
|
||||
<option>COREDUMP_EXE=</option>). Must contain at least one
|
||||
slash. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><replaceable>MATCH</replaceable></term>
|
||||
<varlistentry>
|
||||
<term><replaceable>MATCH</replaceable></term>
|
||||
|
||||
<listitem><para>General journalctl predicates
|
||||
(see <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>).
|
||||
Must contain an equal sign.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>General journalctl predicates (see
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>).
|
||||
Must contain an equal sign. </para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<para>On success, 0 is returned; otherwise, a non-zero failure
|
||||
code is returned. Not finding any matching coredumps is treated
|
||||
as failure.
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<para>On success, 0 is returned; otherwise, a non-zero failure
|
||||
code is returned. Not finding any matching coredumps is treated as
|
||||
failure.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<example>
|
||||
<title>List all the coredumps of a program named foo</title>
|
||||
<example>
|
||||
<title>List all the coredumps of a program named foo</title>
|
||||
|
||||
<programlisting># coredumpctl list foo</programlisting>
|
||||
</example>
|
||||
<programlisting># coredumpctl list foo</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Invoke gdb on the last coredump</title>
|
||||
<example>
|
||||
<title>Invoke gdb on the last coredump</title>
|
||||
|
||||
<programlisting># coredumpctl gdb</programlisting>
|
||||
</example>
|
||||
<programlisting># coredumpctl gdb</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Show information about a process that dumped core, matching by its PID 6654</title>
|
||||
<example>
|
||||
<title>Show information about a process that dumped core,
|
||||
matching by its PID 6654</title>
|
||||
|
||||
<programlisting># coredumpctl info 6654</programlisting>
|
||||
</example>
|
||||
<programlisting># coredumpctl info 6654</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Extract the last coredump of /usr/bin/bar to a file named bar.coredump</title>
|
||||
<example>
|
||||
<title>Extract the last coredump of /usr/bin/bar to a file named
|
||||
<filename noindex="true">bar.coredump</filename></title>
|
||||
|
||||
<programlisting># coredumpctl -o bar.coredump dump /usr/bin/bar</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
<programlisting># coredumpctl -o bar.coredump dump /usr/bin/bar</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd-coredump</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>gdb</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd-coredump</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>gdb</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
741
man/crypttab.xml
741
man/crypttab.xml
@@ -27,389 +27,366 @@
|
||||
-->
|
||||
<refentry id="crypttab" conditional='HAVE_LIBCRYPTSETUP'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>crypttab</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Documentation</contrib>
|
||||
<firstname>Miloslav</firstname>
|
||||
<surname>Trmac</surname>
|
||||
<email>mitr@redhat.com</email>
|
||||
</author>
|
||||
<author>
|
||||
<contrib>Documentation</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>crypttab</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>crypttab</refname>
|
||||
<refpurpose>Configuration for encrypted block devices</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/crypttab</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>The <filename>/etc/crypttab</filename> file
|
||||
describes encrypted block devices that are set up
|
||||
during system boot.</para>
|
||||
|
||||
<para>Empty lines and lines starting with the <literal>#</literal>
|
||||
character are ignored. Each of the remaining lines
|
||||
describes one encrypted block device, fields on the
|
||||
line are delimited by white space. The first two
|
||||
fields are mandatory, the remaining two are
|
||||
optional.</para>
|
||||
|
||||
<para>Setting up encrypted block devices using this file
|
||||
supports three encryption modes: LUKS, TrueCrypt and plain.
|
||||
See <citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for more information about each mode. When no mode is specified
|
||||
in the options field and the block device contains a LUKS
|
||||
signature, it is opened as a LUKS device; otherwise, it is
|
||||
assumed to be in raw dm-crypt (plain mode) format.</para>
|
||||
|
||||
<para>The first field contains the name of the
|
||||
resulting encrypted block device; the device is set up
|
||||
within <filename>/dev/mapper/</filename>.</para>
|
||||
|
||||
<para>The second field contains a path to the
|
||||
underlying block device or file, or a specification of a block
|
||||
device via <literal>UUID=</literal> followed by the
|
||||
UUID.</para>
|
||||
|
||||
<para>The third field specifies the encryption
|
||||
password. If the field is not present or the password
|
||||
is set to <literal>none</literal> or <literal>-</literal>,
|
||||
the password has to be manually entered during system boot.
|
||||
Otherwise, the field is interpreted as a absolute path to
|
||||
a file containing the encryption password. For swap encryption,
|
||||
<filename>/dev/urandom</filename> or the hardware
|
||||
device <filename>/dev/hw_random</filename> can be used
|
||||
as the password file; using
|
||||
<filename>/dev/random</filename> may prevent boot
|
||||
completion if the system does not have enough entropy
|
||||
to generate a truly random encryption key.</para>
|
||||
|
||||
<para>The fourth field, if present, is a
|
||||
comma-delimited list of options. The following
|
||||
options are recognized:</para>
|
||||
|
||||
<variablelist class='fstab-options'>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>discard</option></term>
|
||||
|
||||
<listitem><para>Allow discard requests to be
|
||||
passed through the encrypted block device. This
|
||||
improves performance on SSD storage but has
|
||||
security implications.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>cipher=</option></term>
|
||||
|
||||
<listitem><para>Specifies the cipher to use. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of
|
||||
this option. A cipher with unpredictable IV
|
||||
values, such as <literal>aes-cbc-essiv:sha256</literal>,
|
||||
is recommended.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>hash=</option></term>
|
||||
|
||||
<listitem><para>Specifies the hash to use for
|
||||
password hashing. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of
|
||||
this option.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>header=</option></term>
|
||||
|
||||
<listitem><para>Use a detached (separated)
|
||||
metadata device or file where the LUKS header
|
||||
is stored. This option is only relevant for
|
||||
LUKS devices. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of
|
||||
this option.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>keyfile-offset=</option></term>
|
||||
|
||||
<listitem><para>Specifies the number of bytes to
|
||||
skip at the start of the key file. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of
|
||||
this option.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>keyfile-size=</option></term>
|
||||
|
||||
<listitem><para>Specifies the maximum number
|
||||
of bytes to read from the key file. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of
|
||||
this option. This option is ignored in plain
|
||||
encryption mode, as the key file size is then
|
||||
given by the key size.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>key-slot=</option></term>
|
||||
|
||||
<listitem><para>Specifies the key slot to
|
||||
compare the passphrase or key against.
|
||||
If the key slot does not match the given
|
||||
passphrase or key, but another would, the
|
||||
setup of the device will fail regardless.
|
||||
This option implies <option>luks</option>. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values. The default is to try
|
||||
all key slots in sequential order.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>luks</option></term>
|
||||
|
||||
<listitem><para>Force LUKS mode. When this mode
|
||||
is used, the following options are ignored since
|
||||
they are provided by the LUKS header on the
|
||||
device: <option>cipher=</option>,
|
||||
<option>hash=</option>,
|
||||
<option>size=</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>noauto</option></term>
|
||||
|
||||
<listitem><para>This device will not be
|
||||
automatically unlocked on boot.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>nofail</option></term>
|
||||
|
||||
<listitem><para>The system will not wait for the
|
||||
device to show up and be unlocked at boot, and
|
||||
not fail the boot if it does not show up.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>plain</option></term>
|
||||
|
||||
<listitem><para>Force plain encryption mode.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>read-only</option></term><term><option>readonly</option></term>
|
||||
|
||||
<listitem><para>Set up the encrypted block
|
||||
device in read-only mode.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>size=</option></term>
|
||||
|
||||
<listitem><para>Specifies the key size
|
||||
in bits. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of
|
||||
this option.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>swap</option></term>
|
||||
|
||||
<listitem><para>The encrypted block device will
|
||||
be used as a swap device, and will be formatted
|
||||
accordingly after setting up the encrypted
|
||||
block device, with
|
||||
<citerefentry project='man-pages'><refentrytitle>mkswap</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
|
||||
This option implies <option>plain</option>.</para>
|
||||
|
||||
<para>WARNING: Using the <option>swap</option>
|
||||
option will destroy the contents of the named
|
||||
partition during every boot, so make sure the
|
||||
underlying block device is specified correctly.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tcrypt</option></term>
|
||||
|
||||
<listitem><para>Use TrueCrypt encryption mode.
|
||||
When this mode is used, the following options are
|
||||
ignored since they are provided by the TrueCrypt
|
||||
header on the device or do not apply:
|
||||
<option>cipher=</option>,
|
||||
<option>hash=</option>,
|
||||
<option>keyfile-offset=</option>,
|
||||
<option>keyfile-size=</option>,
|
||||
<option>size=</option>.</para>
|
||||
|
||||
<para>When this mode is used, the passphrase is
|
||||
read from the key file given in the third field.
|
||||
Only the first line of this file is read,
|
||||
excluding the new line character.</para>
|
||||
|
||||
<para>Note that the TrueCrypt format uses both
|
||||
passphrase and key files to derive a password
|
||||
for the volume. Therefore, the passphrase and
|
||||
all key files need to be provided. Use
|
||||
<option>tcrypt-keyfile=</option> to provide
|
||||
the absolute path to all key files. When using
|
||||
an empty passphrase in combination with one or
|
||||
more key files, use <literal>/dev/null</literal>
|
||||
as the password file in the third field.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tcrypt-hidden</option></term>
|
||||
|
||||
<listitem><para>Use the hidden TrueCrypt volume.
|
||||
This option implies <option>tcrypt</option>.</para>
|
||||
|
||||
<para>This will map the hidden volume that is
|
||||
inside of the volume provided in the second
|
||||
field. Please note that there is no protection
|
||||
for the hidden volume if the outer volume is
|
||||
mounted instead. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for more information on this limitation.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tcrypt-keyfile=</option></term>
|
||||
|
||||
<listitem><para>Specifies the absolute path to a
|
||||
key file to use for a TrueCrypt volume. This
|
||||
implies <option>tcrypt</option> and can be
|
||||
used more than once to provide several key
|
||||
files.</para>
|
||||
|
||||
<para>See the entry for <option>tcrypt</option>
|
||||
on the behavior of the passphrase and key files
|
||||
when using TrueCrypt encryption mode.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tcrypt-system</option></term>
|
||||
|
||||
<listitem><para>Use TrueCrypt in system
|
||||
encryption mode. This option implies
|
||||
<option>tcrypt</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>timeout=</option></term>
|
||||
|
||||
<listitem><para>Specifies the timeout for
|
||||
querying for a password. If no unit is
|
||||
specified, seconds is used. Supported units are
|
||||
s, ms, us, min, h, d. A timeout of 0 waits
|
||||
indefinitely (which is the default).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>x-systemd.device-timeout=</option></term>
|
||||
|
||||
<listitem><para>Specifies how long
|
||||
systemd should wait for a device to
|
||||
show up before giving up on the
|
||||
entry. The argument is a time in
|
||||
seconds or explicitly specified
|
||||
units of <literal>s</literal>,
|
||||
<literal>min</literal>,
|
||||
<literal>h</literal>,
|
||||
<literal>ms</literal>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tmp</option></term>
|
||||
|
||||
<listitem><para>The encrypted block device will
|
||||
be prepared for using it as <filename>/tmp</filename>;
|
||||
it will be formatted using
|
||||
<citerefentry project='man-pages'><refentrytitle>mke2fs</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
|
||||
This option implies <option>plain</option>.</para>
|
||||
|
||||
<para>WARNING: Using the <option>tmp</option>
|
||||
option will destroy the contents of the named
|
||||
partition during every boot, so make sure the
|
||||
underlying block device is specified correctly.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tries=</option></term>
|
||||
|
||||
<listitem><para>Specifies the maximum number of
|
||||
times the user is queried for a password.
|
||||
The default is 3. If set to 0, the user is
|
||||
queried for a password indefinitely.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>verify</option></term>
|
||||
|
||||
<listitem><para> If the encryption password is
|
||||
read from console, it has to be entered twice to
|
||||
prevent typos.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<para>At early boot and when the system manager
|
||||
configuration is reloaded, this file is translated into
|
||||
native systemd units
|
||||
by <citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<example>
|
||||
<title>/etc/crypttab example</title>
|
||||
<para>Set up four encrypted block devices. One using
|
||||
LUKS for normal storage, another one for usage as a swap
|
||||
device and two TrueCrypt volumes.</para>
|
||||
|
||||
<programlisting>luks UUID=2505567a-9e27-4efe-a4d5-15ad146c258b
|
||||
swap /dev/sda7 /dev/urandom swap
|
||||
<refentryinfo>
|
||||
<title>crypttab</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Documentation</contrib>
|
||||
<firstname>Miloslav</firstname>
|
||||
<surname>Trmac</surname>
|
||||
<email>mitr@redhat.com</email>
|
||||
</author>
|
||||
<author>
|
||||
<contrib>Documentation</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>crypttab</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>crypttab</refname>
|
||||
<refpurpose>Configuration for encrypted block devices</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/crypttab</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>The <filename>/etc/crypttab</filename> file describes
|
||||
encrypted block devices that are set up during system boot.</para>
|
||||
|
||||
<para>Empty lines and lines starting with the <literal>#</literal>
|
||||
character are ignored. Each of the remaining lines describes one
|
||||
encrypted block device, fields on the line are delimited by white
|
||||
space. The first two fields are mandatory, the remaining two are
|
||||
optional.</para>
|
||||
|
||||
<para>Setting up encrypted block devices using this file supports
|
||||
three encryption modes: LUKS, TrueCrypt and plain. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for more information about each mode. When no mode is specified in
|
||||
the options field and the block device contains a LUKS signature,
|
||||
it is opened as a LUKS device; otherwise, it is assumed to be in
|
||||
raw dm-crypt (plain mode) format.</para>
|
||||
|
||||
<para>The first field contains the name of the resulting encrypted
|
||||
block device; the device is set up within
|
||||
<filename>/dev/mapper/</filename>.</para>
|
||||
|
||||
<para>The second field contains a path to the underlying block
|
||||
device or file, or a specification of a block device via
|
||||
<literal>UUID=</literal> followed by the UUID.</para>
|
||||
|
||||
<para>The third field specifies the encryption password. If the
|
||||
field is not present or the password is set to
|
||||
<literal>none</literal> or <literal>-</literal>, the password has
|
||||
to be manually entered during system boot. Otherwise, the field is
|
||||
interpreted as a absolute path to a file containing the encryption
|
||||
password. For swap encryption, <filename>/dev/urandom</filename>
|
||||
or the hardware device <filename>/dev/hw_random</filename> can be
|
||||
used as the password file; using <filename>/dev/random</filename>
|
||||
may prevent boot completion if the system does not have enough
|
||||
entropy to generate a truly random encryption key.</para>
|
||||
|
||||
<para>The fourth field, if present, is a comma-delimited list of
|
||||
options. The following options are recognized:</para>
|
||||
|
||||
<variablelist class='fstab-options'>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>discard</option></term>
|
||||
|
||||
<listitem><para>Allow discard requests to be passed through
|
||||
the encrypted block device. This improves performance on SSD
|
||||
storage but has security implications.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>cipher=</option></term>
|
||||
|
||||
<listitem><para>Specifies the cipher to use. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of this option. A
|
||||
cipher with unpredictable IV values, such as
|
||||
<literal>aes-cbc-essiv:sha256</literal>, is
|
||||
recommended.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>hash=</option></term>
|
||||
|
||||
<listitem><para>Specifies the hash to use for password
|
||||
hashing. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of this
|
||||
option.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>header=</option></term>
|
||||
|
||||
<listitem><para>Use a detached (separated) metadata device or
|
||||
file where the LUKS header is stored. This option is only
|
||||
relevant for LUKS devices. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of this
|
||||
option.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>keyfile-offset=</option></term>
|
||||
|
||||
<listitem><para>Specifies the number of bytes to skip at the
|
||||
start of the key file. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of this
|
||||
option.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>keyfile-size=</option></term>
|
||||
|
||||
<listitem><para>Specifies the maximum number of bytes to read
|
||||
from the key file. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of this option. This
|
||||
option is ignored in plain encryption mode, as the key file
|
||||
size is then given by the key size.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>key-slot=</option></term>
|
||||
|
||||
<listitem><para>Specifies the key slot to compare the
|
||||
passphrase or key against. If the key slot does not match the
|
||||
given passphrase or key, but another would, the setup of the
|
||||
device will fail regardless. This option implies
|
||||
<option>luks</option>. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values. The default is to try all key slots in
|
||||
sequential order.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>luks</option></term>
|
||||
|
||||
<listitem><para>Force LUKS mode. When this mode is used, the
|
||||
following options are ignored since they are provided by the
|
||||
LUKS header on the device: <option>cipher=</option>,
|
||||
<option>hash=</option>,
|
||||
<option>size=</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>noauto</option></term>
|
||||
|
||||
<listitem><para>This device will not be automatically unlocked
|
||||
on boot.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>nofail</option></term>
|
||||
|
||||
<listitem><para>The system will not wait for the device to
|
||||
show up and be unlocked at boot, and not fail the boot if it
|
||||
does not show up.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>plain</option></term>
|
||||
|
||||
<listitem><para>Force plain encryption mode.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>read-only</option></term><term><option>readonly</option></term>
|
||||
|
||||
<listitem><para>Set up the encrypted block device in read-only
|
||||
mode.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>size=</option></term>
|
||||
|
||||
<listitem><para>Specifies the key size in bits. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for possible values and the default value of this
|
||||
option.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>swap</option></term>
|
||||
|
||||
<listitem><para>The encrypted block device will be used as a
|
||||
swap device, and will be formatted accordingly after setting
|
||||
up the encrypted block device, with
|
||||
<citerefentry project='man-pages'><refentrytitle>mkswap</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
|
||||
This option implies <option>plain</option>.</para>
|
||||
|
||||
<para>WARNING: Using the <option>swap</option> option will
|
||||
destroy the contents of the named partition during every boot,
|
||||
so make sure the underlying block device is specified
|
||||
correctly.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tcrypt</option></term>
|
||||
|
||||
<listitem><para>Use TrueCrypt encryption mode. When this mode
|
||||
is used, the following options are ignored since they are
|
||||
provided by the TrueCrypt header on the device or do not
|
||||
apply:
|
||||
<option>cipher=</option>,
|
||||
<option>hash=</option>,
|
||||
<option>keyfile-offset=</option>,
|
||||
<option>keyfile-size=</option>,
|
||||
<option>size=</option>.</para>
|
||||
|
||||
<para>When this mode is used, the passphrase is read from the
|
||||
key file given in the third field. Only the first line of this
|
||||
file is read, excluding the new line character.</para>
|
||||
|
||||
<para>Note that the TrueCrypt format uses both passphrase and
|
||||
key files to derive a password for the volume. Therefore, the
|
||||
passphrase and all key files need to be provided. Use
|
||||
<option>tcrypt-keyfile=</option> to provide the absolute path
|
||||
to all key files. When using an empty passphrase in
|
||||
combination with one or more key files, use
|
||||
<literal>/dev/null</literal> as the password file in the third
|
||||
field.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tcrypt-hidden</option></term>
|
||||
|
||||
<listitem><para>Use the hidden TrueCrypt volume. This option
|
||||
implies <option>tcrypt</option>.</para>
|
||||
|
||||
<para>This will map the hidden volume that is inside of the
|
||||
volume provided in the second field. Please note that there is
|
||||
no protection for the hidden volume if the outer volume is
|
||||
mounted instead. See
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
for more information on this limitation.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tcrypt-keyfile=</option></term>
|
||||
|
||||
<listitem><para>Specifies the absolute path to a key file to
|
||||
use for a TrueCrypt volume. This implies
|
||||
<option>tcrypt</option> and can be used more than once to
|
||||
provide several key files.</para>
|
||||
|
||||
<para>See the entry for <option>tcrypt</option> on the
|
||||
behavior of the passphrase and key files when using TrueCrypt
|
||||
encryption mode.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tcrypt-system</option></term>
|
||||
|
||||
<listitem><para>Use TrueCrypt in system encryption mode. This
|
||||
option implies <option>tcrypt</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>timeout=</option></term>
|
||||
|
||||
<listitem><para>Specifies the timeout for querying for a
|
||||
password. If no unit is specified, seconds is used. Supported
|
||||
units are s, ms, us, min, h, d. A timeout of 0 waits
|
||||
indefinitely (which is the default).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>x-systemd.device-timeout=</option></term>
|
||||
|
||||
<listitem><para>Specifies how long systemd should wait for a
|
||||
device to show up before giving up on the entry. The argument
|
||||
is a time in seconds or explicitly specified units of
|
||||
<literal>s</literal>,
|
||||
<literal>min</literal>,
|
||||
<literal>h</literal>,
|
||||
<literal>ms</literal>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tmp</option></term>
|
||||
|
||||
<listitem><para>The encrypted block device will be prepared
|
||||
for using it as <filename>/tmp</filename>; it will be
|
||||
formatted using
|
||||
<citerefentry project='man-pages'><refentrytitle>mke2fs</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
|
||||
This option implies <option>plain</option>.</para>
|
||||
|
||||
<para>WARNING: Using the <option>tmp</option> option will
|
||||
destroy the contents of the named partition during every boot,
|
||||
so make sure the underlying block device is specified
|
||||
correctly.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>tries=</option></term>
|
||||
|
||||
<listitem><para>Specifies the maximum number of times the user
|
||||
is queried for a password. The default is 3. If set to 0, the
|
||||
user is queried for a password indefinitely.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>verify</option></term>
|
||||
|
||||
<listitem><para> If the encryption password is read from
|
||||
console, it has to be entered twice to prevent
|
||||
typos.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
<para>At early boot and when the system manager configuration is
|
||||
reloaded, this file is translated into native systemd units by
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<example>
|
||||
<title>/etc/crypttab example</title>
|
||||
<para>Set up four encrypted block devices. One using LUKS for
|
||||
normal storage, another one for usage as a swap device and two
|
||||
TrueCrypt volumes.</para>
|
||||
|
||||
<programlisting>luks UUID=2505567a-9e27-4efe-a4d5-15ad146c258b
|
||||
swap /dev/sda7 /dev/urandom swap
|
||||
truecrypt /dev/sda2 /etc/container_password tcrypt
|
||||
hidden /mnt/tc_hidden /dev/null tcrypt-hidden,tcrypt-keyfile=/etc/keyfile</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
hidden /mnt/tc_hidden /dev/null tcrypt-hidden,tcrypt-keyfile=/etc/keyfile</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>mkswap</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>mke2fs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>mkswap</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>mke2fs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
1572
man/daemon.xml
1572
man/daemon.xml
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
228
man/halt.xml
228
man/halt.xml
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,151 +22,147 @@
|
||||
-->
|
||||
|
||||
<refentry id="halt"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>halt</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>halt</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>halt</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>halt</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>halt</refname>
|
||||
<refname>poweroff</refname>
|
||||
<refname>reboot</refname>
|
||||
<refpurpose>Halt, power-off or reboot the machine</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>halt</refname>
|
||||
<refname>poweroff</refname>
|
||||
<refname>reboot</refname>
|
||||
<refpurpose>Halt, power-off or reboot the machine</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>halt <arg choice="opt" rep="repeat">OPTIONS</arg></command>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>poweroff <arg choice="opt" rep="repeat">OPTIONS</arg></command>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>reboot <arg choice="opt" rep="repeat">OPTIONS</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>halt</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>poweroff</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>reboot</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>halt</command>,
|
||||
<command>poweroff</command>, <command>reboot</command>
|
||||
may be used to halt, power-off or reboot the
|
||||
machine.</para>
|
||||
<para><command>halt</command>, <command>poweroff</command>,
|
||||
<command>reboot</command> may be used to halt, power-off or reboot
|
||||
the machine.</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--help</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--help</option></term>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help-text" />
|
||||
</varlistentry>
|
||||
<xi:include href="standard-options.xml" xpointer="help-text" />
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--halt</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--halt</option></term>
|
||||
|
||||
<listitem><para>Halt the machine,
|
||||
regardless of which one of the three
|
||||
commands is invoked.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Halt the machine, regardless of which one of
|
||||
the three commands is invoked.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
<term><option>--poweroff</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
<term><option>--poweroff</option></term>
|
||||
|
||||
<listitem><para>Power-off the machine,
|
||||
regardless of which one of the three
|
||||
commands is invoked.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Power-off the machine, regardless of which one
|
||||
of the three commands is invoked.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--reboot</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--reboot</option></term>
|
||||
|
||||
<listitem><para>Reboot the machine,
|
||||
regardless of which one of the three
|
||||
commands is invoked.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Reboot the machine, regardless of which one of
|
||||
the three commands is invoked.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-f</option></term>
|
||||
<term><option>--force</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-f</option></term>
|
||||
<term><option>--force</option></term>
|
||||
|
||||
<listitem><para>Force immediate halt,
|
||||
power-off, reboot. Do not contact the
|
||||
init system.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Force immediate halt, power-off, reboot. Do
|
||||
not contact the init system.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-w</option></term>
|
||||
<term><option>--wtmp-only</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-w</option></term>
|
||||
<term><option>--wtmp-only</option></term>
|
||||
|
||||
<listitem><para>Only write wtmp
|
||||
shutdown entry, do not actually halt,
|
||||
power-off, reboot.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Only write wtmp shutdown entry, do not
|
||||
actually halt, power-off, reboot.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-d</option></term>
|
||||
<term><option>--no-wtmp</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-d</option></term>
|
||||
<term><option>--no-wtmp</option></term>
|
||||
|
||||
<listitem><para>Do not write wtmp
|
||||
shutdown entry.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Do not write wtmp shutdown
|
||||
entry.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--no-wall</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--no-wall</option></term>
|
||||
|
||||
<listitem><para>Do not send wall
|
||||
message before
|
||||
halt, power-off, reboot.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>Do not send wall message before halt,
|
||||
power-off, reboot.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>These are legacy commands available for
|
||||
compatibility only.</para>
|
||||
</refsect1>
|
||||
<para>These are legacy commands available for compatibility
|
||||
only.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>shutdown</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
134
man/hostname.xml
134
man/hostname.xml
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,84 +23,80 @@
|
||||
-->
|
||||
|
||||
<refentry id="hostname">
|
||||
<refentryinfo>
|
||||
<title>hostname</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>hostname</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>hostname</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>hostname</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>hostname</refname>
|
||||
<refpurpose>Local hostname configuration file</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>hostname</refname>
|
||||
<refpurpose>Local hostname configuration file</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/hostname</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/hostname</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>The <filename>/etc/hostname</filename> file
|
||||
configures the name of the local system that is set
|
||||
during boot using the
|
||||
<citerefentry><refentrytitle>sethostname</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
system call. It should contain a single
|
||||
newline-terminated hostname string. The
|
||||
hostname may be a free-form string up to 64 characters
|
||||
in length; however, it is recommended that it consists
|
||||
only of 7-bit ASCII lower-case characters and no spaces or dots,
|
||||
and limits itself to the format allowed for DNS domain
|
||||
name labels, even though this is not a
|
||||
strict requirement.</para>
|
||||
<para>The <filename>/etc/hostname</filename> file configures the
|
||||
name of the local system that is set during boot using the
|
||||
<citerefentry><refentrytitle>sethostname</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
system call. It should contain a single newline-terminated
|
||||
hostname string. The hostname may be a free-form string up to 64
|
||||
characters in length; however, it is recommended that it consists
|
||||
only of 7-bit ASCII lower-case characters and no spaces or dots,
|
||||
and limits itself to the format allowed for DNS domain name
|
||||
labels, even though this is not a strict requirement.</para>
|
||||
|
||||
<para>Depending on the operating system, other
|
||||
configuration files might be checked for configuration
|
||||
of the hostname as well, however only as fallback.</para>
|
||||
<para>Depending on the operating system, other configuration files
|
||||
might be checked for configuration of the hostname as well,
|
||||
however only as fallback.</para>
|
||||
|
||||
<para>You may use
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to change the value of this file during runtime from
|
||||
the command line. Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize it on mounted (but not booted) system
|
||||
images.</para>
|
||||
</refsect1>
|
||||
<para>You may use
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to change the value of this file during runtime from the command
|
||||
line. Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize it on mounted (but not booted) system images.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
|
||||
<para>The simple configuration file format of
|
||||
<filename>/etc/hostname</filename> originates from
|
||||
Debian GNU/Linux.</para>
|
||||
</refsect1>
|
||||
<para>The simple configuration file format of
|
||||
<filename>/etc/hostname</filename> originates from Debian
|
||||
GNU/Linux.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sethostname</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hostnamed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sethostname</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hostnamed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,276 +22,239 @@
|
||||
-->
|
||||
|
||||
<refentry id="hostnamectl" conditional='ENABLE_HOSTNAMED'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>hostnamectl</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>hostnamectl</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>hostnamectl</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>hostnamectl</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>hostnamectl</refname>
|
||||
<refpurpose>Control the system hostname</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>hostnamectl</refname>
|
||||
<refpurpose>Control the system hostname</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>hostnamectl</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="req">COMMAND</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>hostnamectl</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="req">COMMAND</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>hostnamectl</command> may be used to
|
||||
query and change the system hostname and related
|
||||
settings.</para>
|
||||
<para><command>hostnamectl</command> may be used to query and
|
||||
change the system hostname and related settings.</para>
|
||||
|
||||
<para>This tool distinguishes three different
|
||||
hostnames: the high-level "pretty" hostname which
|
||||
might include all kinds of special characters
|
||||
(e.g. "Lennart's Laptop"), the static hostname which
|
||||
is used to initialize the kernel hostname at boot
|
||||
(e.g. "lennarts-laptop"), and the transient hostname
|
||||
which is a default received from network configuration.
|
||||
If a static hostname is set, and is valid (something other
|
||||
than localhost), then the transient hostname is not used.</para>
|
||||
<para>This tool distinguishes three different hostnames: the
|
||||
high-level "pretty" hostname which might include all kinds of
|
||||
special characters (e.g. "Lennart's Laptop"), the static hostname
|
||||
which is used to initialize the kernel hostname at boot (e.g.
|
||||
"lennarts-laptop"), and the transient hostname which is a default
|
||||
received from network configuration. If a static hostname is set,
|
||||
and is valid (something other than localhost), then the transient
|
||||
hostname is not used.</para>
|
||||
|
||||
<para>Note that the pretty hostname has little
|
||||
restrictions on the characters used, while the static
|
||||
and transient hostnames are limited to the usually
|
||||
accepted characters of Internet domain names.</para>
|
||||
<para>Note that the pretty hostname has little restrictions on the
|
||||
characters used, while the static and transient hostnames are
|
||||
limited to the usually accepted characters of Internet domain
|
||||
names.</para>
|
||||
|
||||
<para>The static hostname is stored in
|
||||
<filename>/etc/hostname</filename>, see
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for more information. The pretty hostname, chassis
|
||||
type, and icon name are stored in
|
||||
<filename>/etc/machine-info</filename>, see
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
|
||||
<para>The static hostname is stored in
|
||||
<filename>/etc/hostname</filename>, see
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for more information. The pretty hostname, chassis type, and icon
|
||||
name are stored in <filename>/etc/machine-info</filename>, see
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para>Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the system host name for mounted (but
|
||||
not booted) system images.</para>
|
||||
</refsect1>
|
||||
<para>Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the system host name for mounted (but not booted)
|
||||
system images.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--no-ask-password</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--no-ask-password</option></term>
|
||||
|
||||
<listitem><para>Do not query the user
|
||||
for authentication for privileged
|
||||
operations.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Do not query the user for authentication for
|
||||
privileged operations.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--static</option></term>
|
||||
<term><option>--transient</option></term>
|
||||
<term><option>--pretty</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--static</option></term>
|
||||
<term><option>--transient</option></term>
|
||||
<term><option>--pretty</option></term>
|
||||
|
||||
<listitem><para>If
|
||||
<command>status</command> is used (or
|
||||
no explicit command is given) and one
|
||||
of those fields is given,
|
||||
<command>hostnamectl</command> will
|
||||
print out just this selected
|
||||
hostname.</para>
|
||||
<listitem><para>If <command>status</command> is used (or no
|
||||
explicit command is given) and one of those fields is given,
|
||||
<command>hostnamectl</command> will print out just this
|
||||
selected hostname.</para>
|
||||
|
||||
<para>If used with
|
||||
<command>set-hostname</command>, only
|
||||
the selected hostname(s) will be
|
||||
updated. When more than one of those
|
||||
options is used, all the specified
|
||||
hostnames will be updated.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<para>If used with <command>set-hostname</command>, only the
|
||||
selected hostname(s) will be updated. When more than one of
|
||||
those options is used, all the specified hostnames will be
|
||||
updated. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="user-system-options.xml" xpointer="host" />
|
||||
<xi:include href="user-system-options.xml" xpointer="machine" />
|
||||
<xi:include href="user-system-options.xml" xpointer="host" />
|
||||
<xi:include href="user-system-options.xml" xpointer="machine" />
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
|
||||
<para>The following commands are understood:</para>
|
||||
<para>The following commands are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><command>status</command></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><command>status</command></term>
|
||||
|
||||
<listitem><para>Show current system
|
||||
hostname and related
|
||||
information.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Show current system
|
||||
hostname and related
|
||||
information.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>set-hostname <replaceable>NAME</replaceable></command></term>
|
||||
<varlistentry>
|
||||
<term><command>set-hostname <replaceable>NAME</replaceable></command></term>
|
||||
|
||||
<listitem><para>Set the system
|
||||
hostname to
|
||||
<replaceable>NAME</replaceable>. By
|
||||
default, this will alter the pretty,
|
||||
the static, and the transient hostname
|
||||
alike; however, if one or more of
|
||||
<option>--static</option>,
|
||||
<option>--transient</option>,
|
||||
<option>--pretty</option> are used,
|
||||
only the selected hostnames are
|
||||
changed. If the pretty hostname is
|
||||
being set, and static or transient are
|
||||
being set as well, the specified
|
||||
hostname will be simplified in regards
|
||||
to the character set used before the
|
||||
latter are updated. This is done by
|
||||
replacing spaces with
|
||||
<literal>-</literal> and removing
|
||||
special characters. This ensures that
|
||||
the pretty and the static hostname are
|
||||
always closely related while still
|
||||
following the validity rules of the
|
||||
specific name. This simplification of
|
||||
the hostname string is not done if
|
||||
only the transient and/or static host
|
||||
names are set, and the pretty host
|
||||
name is left untouched.</para>
|
||||
<listitem><para>Set the system hostname to
|
||||
<replaceable>NAME</replaceable>. By default, this will alter
|
||||
the pretty, the static, and the transient hostname alike;
|
||||
however, if one or more of <option>--static</option>,
|
||||
<option>--transient</option>, <option>--pretty</option> are
|
||||
used, only the selected hostnames are changed. If the pretty
|
||||
hostname is being set, and static or transient are being set
|
||||
as well, the specified hostname will be simplified in regards
|
||||
to the character set used before the latter are updated. This
|
||||
is done by replacing spaces with <literal>-</literal> and
|
||||
removing special characters. This ensures that the pretty and
|
||||
the static hostname are always closely related while still
|
||||
following the validity rules of the specific name. This
|
||||
simplification of the hostname string is not done if only the
|
||||
transient and/or static host names are set, and the pretty
|
||||
host name is left untouched.</para>
|
||||
|
||||
<para>Pass the empty string
|
||||
<literal></literal> as the hostname to
|
||||
reset the selected hostnames to their
|
||||
default (usually
|
||||
<literal>localhost</literal>).</para></listitem>
|
||||
</varlistentry>
|
||||
<para>Pass the empty string <literal></literal> as the
|
||||
hostname to reset the selected hostnames to their default
|
||||
(usually <literal>localhost</literal>).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>set-icon-name <replaceable>NAME</replaceable></command></term>
|
||||
<varlistentry>
|
||||
<term><command>set-icon-name <replaceable>NAME</replaceable></command></term>
|
||||
|
||||
<listitem><para>Set the system icon
|
||||
name to
|
||||
<replaceable>NAME</replaceable>. The
|
||||
icon name is used by some graphical
|
||||
applications to visualize this host.
|
||||
The icon name should follow the <ulink
|
||||
url="http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html">Icon
|
||||
Naming Specification</ulink>.</para>
|
||||
<listitem><para>Set the system icon name to
|
||||
<replaceable>NAME</replaceable>. The icon name is used by some
|
||||
graphical applications to visualize this host. The icon name
|
||||
should follow the <ulink
|
||||
url="http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html">Icon
|
||||
Naming Specification</ulink>.</para>
|
||||
|
||||
<para>Pass an empty string to reset
|
||||
the icon name to the default value,
|
||||
which is determined from chassis type
|
||||
(see below) and possibly other
|
||||
parameters.</para></listitem>
|
||||
</varlistentry>
|
||||
<para>Pass an empty string to reset the icon name to the
|
||||
default value, which is determined from chassis type (see
|
||||
below) and possibly other parameters.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>set-chassis <replaceable>TYPE</replaceable></command></term>
|
||||
<varlistentry>
|
||||
<term><command>set-chassis <replaceable>TYPE</replaceable></command></term>
|
||||
|
||||
<listitem><para>Set the chassis type
|
||||
to <replaceable>TYPE</replaceable>.
|
||||
The chassis type is used by some
|
||||
graphical applications to visualize
|
||||
the host or alter user interaction.
|
||||
Currently, the following chassis types
|
||||
are defined:
|
||||
<literal>desktop</literal>,
|
||||
<literal>laptop</literal>,
|
||||
<literal>server</literal>,
|
||||
<literal>tablet</literal>,
|
||||
<literal>handset</literal>,
|
||||
<literal>watch</literal>,
|
||||
<literal>embedded</literal> as well as
|
||||
the special chassis types
|
||||
<literal>vm</literal> and
|
||||
<literal>container</literal> for
|
||||
virtualized systems that lack an
|
||||
immediate physical chassis.</para>
|
||||
<listitem><para>Set the chassis type to
|
||||
<replaceable>TYPE</replaceable>. The chassis type is used by
|
||||
some graphical applications to visualize the host or alter
|
||||
user interaction. Currently, the following chassis types are
|
||||
defined:
|
||||
<literal>desktop</literal>,
|
||||
<literal>laptop</literal>,
|
||||
<literal>server</literal>,
|
||||
<literal>tablet</literal>,
|
||||
<literal>handset</literal>,
|
||||
<literal>watch</literal>,
|
||||
<literal>embedded</literal>,
|
||||
as well as the special chassis types
|
||||
<literal>vm</literal> and
|
||||
<literal>container</literal> for virtualized systems that lack
|
||||
an immediate physical chassis.</para>
|
||||
|
||||
<para>Pass an empty string to reset
|
||||
the chassis type to the default value
|
||||
which is determined from the firmware
|
||||
and possibly other parameters.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<para>Pass an empty string to reset the chassis type to the
|
||||
default value which is determined from the firmware and
|
||||
possibly other parameters.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>set-deployment <replaceable>ENVIRONMENT</replaceable></command></term>
|
||||
<varlistentry>
|
||||
<term><command>set-deployment <replaceable>ENVIRONMENT</replaceable></command></term>
|
||||
|
||||
<listitem><para>Set the deployment
|
||||
environment
|
||||
description. <replaceable>ENVIRONMENT</replaceable>
|
||||
must be a single word without any
|
||||
control characters. One of the
|
||||
following is suggested:
|
||||
<literal>development</literal>,
|
||||
<literal>integration</literal>,
|
||||
<literal>staging</literal>,
|
||||
<literal>production</literal>.
|
||||
</para>
|
||||
<listitem><para>Set the deployment environment description.
|
||||
<replaceable>ENVIRONMENT</replaceable> must be a single word
|
||||
without any control characters. One of the following is
|
||||
suggested:
|
||||
<literal>development</literal>,
|
||||
<literal>integration</literal>,
|
||||
<literal>staging</literal>,
|
||||
<literal>production</literal>.
|
||||
</para>
|
||||
|
||||
<para>Pass an empty string to reset to
|
||||
the default empty value.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<para>Pass an empty string to reset to the default empty
|
||||
value.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>set-location <replaceable>LOCATION</replaceable></command></term>
|
||||
<varlistentry>
|
||||
<term><command>set-location <replaceable>LOCATION</replaceable></command></term>
|
||||
|
||||
<listitem><para>Set the location
|
||||
string for the system, if it is
|
||||
known. <replaceable>LOCATION</replaceable>
|
||||
should be a human-friendly, free-form
|
||||
string describing the physical
|
||||
location of the system, if it is known
|
||||
and applicable. This may be as generic
|
||||
as <literal>Berlin, Germany</literal>
|
||||
or as specific as <literal>Left Rack,
|
||||
2nd Shelf</literal>.</para>
|
||||
<listitem><para>Set the location string for the system, if it
|
||||
is known. <replaceable>LOCATION</replaceable> should be a
|
||||
human-friendly, free-form string describing the physical
|
||||
location of the system, if it is known and applicable. This
|
||||
may be as generic as <literal>Berlin, Germany</literal> or as
|
||||
specific as <literal>Left Rack, 2nd Shelf</literal>.</para>
|
||||
|
||||
<para>Pass an empty string to reset to
|
||||
the default empty value.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<para>Pass an empty string to reset to the default empty
|
||||
value.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hostnamed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hostnamed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,463 +23,359 @@
|
||||
-->
|
||||
|
||||
<refentry id="journald.conf"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<refentryinfo>
|
||||
<title>journald.conf</title>
|
||||
<productname>systemd</productname>
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<refentryinfo>
|
||||
<title>journald.conf</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>journald.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>journald.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>journald.conf</refname>
|
||||
<refname>journald.conf.d</refname>
|
||||
<refpurpose>Journal service configuration files</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>journald.conf</refname>
|
||||
<refname>journald.conf.d</refname>
|
||||
<refpurpose>Journal service configuration files</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/systemd/journald.conf</filename></para>
|
||||
<para><filename>/etc/systemd/journald.conf.d/*.conf</filename></para>
|
||||
<para><filename>/run/systemd/journald.conf.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/systemd/journald.conf.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/systemd/journald.conf</filename></para>
|
||||
<para><filename>/etc/systemd/journald.conf.d/*.conf</filename></para>
|
||||
<para><filename>/run/systemd/journald.conf.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/systemd/journald.conf.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>These files configure various parameters of the
|
||||
systemd journal service,
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
<para>These files configure various parameters of the systemd
|
||||
journal service,
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="conf" />
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="conf" />
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>All options are configured in the
|
||||
<literal>[Journal]</literal> section:</para>
|
||||
<para>All options are configured in the
|
||||
<literal>[Journal]</literal> section:</para>
|
||||
|
||||
<variablelist>
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>Storage=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>Storage=</varname></term>
|
||||
|
||||
<listitem><para>Controls where to
|
||||
store journal data. One of
|
||||
<literal>volatile</literal>,
|
||||
<literal>persistent</literal>,
|
||||
<literal>auto</literal> and
|
||||
<literal>none</literal>. If
|
||||
<literal>volatile</literal>, journal
|
||||
log data will be stored only in
|
||||
memory, i.e. below the
|
||||
<filename>/run/log/journal</filename>
|
||||
hierarchy (which is created if
|
||||
needed). If
|
||||
<literal>persistent</literal>, data will
|
||||
be stored preferably on disk,
|
||||
i.e. below the
|
||||
<filename>/var/log/journal</filename>
|
||||
hierarchy (which is created if
|
||||
needed), with a fallback to
|
||||
<filename>/run/log/journal</filename>
|
||||
(which is created if needed), during
|
||||
early boot and if the disk is not
|
||||
writable. <literal>auto</literal> is
|
||||
similar to
|
||||
<literal>persistent</literal> but the
|
||||
directory
|
||||
<filename>/var/log/journal</filename>
|
||||
is not created if needed, so that its
|
||||
existence controls where log data
|
||||
goes. <literal>none</literal> turns
|
||||
off all storage, all log data received
|
||||
will be dropped. Forwarding to other
|
||||
targets, such as the console, the
|
||||
kernel log buffer or a syslog daemon
|
||||
will still work however. Defaults to
|
||||
<literal>auto</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Controls where to store journal data. One of
|
||||
<literal>volatile</literal>,
|
||||
<literal>persistent</literal>,
|
||||
<literal>auto</literal> and
|
||||
<literal>none</literal>. If
|
||||
<literal>volatile</literal>, journal
|
||||
log data will be stored only in memory, i.e. below the
|
||||
<filename>/run/log/journal</filename> hierarchy (which is
|
||||
created if needed). If <literal>persistent</literal>, data
|
||||
will be stored preferably on disk, i.e. below the
|
||||
<filename>/var/log/journal</filename> hierarchy (which is
|
||||
created if needed), with a fallback to
|
||||
<filename>/run/log/journal</filename> (which is created if
|
||||
needed), during early boot and if the disk is not writable.
|
||||
<literal>auto</literal> is similar to
|
||||
<literal>persistent</literal> but the directory
|
||||
<filename>/var/log/journal</filename> is not created if
|
||||
needed, so that its existence controls where log data goes.
|
||||
<literal>none</literal> turns off all storage, all log data
|
||||
received will be dropped. Forwarding to other targets, such as
|
||||
the console, the kernel log buffer or a syslog daemon will
|
||||
still work however. Defaults to
|
||||
<literal>auto</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>Compress=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>Compress=</varname></term>
|
||||
|
||||
<listitem><para>Takes a boolean
|
||||
value. If enabled (the default), data
|
||||
objects that shall be stored in the
|
||||
journal and are larger than a certain
|
||||
threshold are compressed before they
|
||||
are written to the file
|
||||
system.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a boolean value. If enabled (the
|
||||
default), data objects that shall be stored in the journal and
|
||||
are larger than a certain threshold are compressed before they
|
||||
are written to the file system.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>Seal=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>Seal=</varname></term>
|
||||
|
||||
<listitem><para>Takes a boolean
|
||||
value. If enabled (the default), and a
|
||||
sealing key is available (as created
|
||||
by
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
|
||||
<option>--setup-keys</option>
|
||||
command), Forward Secure Sealing (FSS)
|
||||
for all persistent journal files is
|
||||
enabled. FSS is based on <ulink
|
||||
url="https://eprint.iacr.org/2013/397">Seekable
|
||||
Sequential Key Generators</ulink> by
|
||||
G. A. Marson and B. Poettering
|
||||
(doi:10.1007/978-3-642-40203-6_7)
|
||||
and may be used to protect journal files
|
||||
from unnoticed alteration.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a boolean value. If enabled (the
|
||||
default), and a sealing key is available (as created by
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
|
||||
<option>--setup-keys</option> command), Forward Secure Sealing
|
||||
(FSS) for all persistent journal files is enabled. FSS is
|
||||
based on <ulink
|
||||
url="https://eprint.iacr.org/2013/397">Seekable Sequential Key
|
||||
Generators</ulink> by G. A. Marson and B. Poettering
|
||||
(doi:10.1007/978-3-642-40203-6_7) and may be used to protect
|
||||
journal files from unnoticed alteration.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>SplitMode=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>SplitMode=</varname></term>
|
||||
|
||||
<listitem><para>Controls whether to
|
||||
split up journal files per user. One
|
||||
of <literal>uid</literal>,
|
||||
<literal>login</literal> and
|
||||
<literal>none</literal>. If
|
||||
<literal>uid</literal>, all users will
|
||||
get each their own journal files
|
||||
regardless of whether they possess a
|
||||
login session or not, however system
|
||||
users will log into the system
|
||||
journal. If <literal>login</literal>,
|
||||
actually logged-in users will get each
|
||||
their own journal files, but users
|
||||
without login session and system users
|
||||
will log into the system journal. If
|
||||
<literal>none</literal>, journal files
|
||||
are not split up by user and all
|
||||
messages are instead stored in the
|
||||
single system journal. Note that
|
||||
splitting up journal files by user is
|
||||
only available for journals stored
|
||||
persistently. If journals are stored
|
||||
on volatile storage (see above), only
|
||||
a single journal file for all user IDs
|
||||
is kept. Defaults to
|
||||
<literal>uid</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Controls whether to split up journal files per
|
||||
user. One of <literal>uid</literal>, <literal>login</literal>
|
||||
and <literal>none</literal>. If <literal>uid</literal>, all
|
||||
users will get each their own journal files regardless of
|
||||
whether they possess a login session or not, however system
|
||||
users will log into the system journal. If
|
||||
<literal>login</literal>, actually logged-in users will get
|
||||
each their own journal files, but users without login session
|
||||
and system users will log into the system journal. If
|
||||
<literal>none</literal>, journal files are not split up by
|
||||
user and all messages are instead stored in the single system
|
||||
journal. Note that splitting up journal files by user is only
|
||||
available for journals stored persistently. If journals are
|
||||
stored on volatile storage (see above), only a single journal
|
||||
file for all user IDs is kept. Defaults to
|
||||
<literal>uid</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>RateLimitInterval=</varname></term>
|
||||
<term><varname>RateLimitBurst=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>RateLimitInterval=</varname></term>
|
||||
<term><varname>RateLimitBurst=</varname></term>
|
||||
|
||||
<listitem><para>Configures the rate
|
||||
limiting that is applied to all
|
||||
messages generated on the system. If,
|
||||
in the time interval defined by
|
||||
<varname>RateLimitInterval=</varname>,
|
||||
more messages than specified in
|
||||
<varname>RateLimitBurst=</varname> are
|
||||
logged by a service, all further
|
||||
messages within the interval are
|
||||
dropped until the interval is over. A
|
||||
message about the number of dropped
|
||||
messages is generated. This rate
|
||||
limiting is applied per-service, so
|
||||
that two services which log do not
|
||||
interfere with each other's
|
||||
limits. Defaults to 1000 messages in
|
||||
30s. The time specification for
|
||||
<varname>RateLimitInterval=</varname>
|
||||
may be specified in the following
|
||||
units: <literal>s</literal>,
|
||||
<literal>min</literal>,
|
||||
<literal>h</literal>,
|
||||
<literal>ms</literal>,
|
||||
<literal>us</literal>. To turn off any
|
||||
kind of rate limiting, set either
|
||||
value to 0.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Configures the rate limiting that is applied
|
||||
to all messages generated on the system. If, in the time
|
||||
interval defined by <varname>RateLimitInterval=</varname>,
|
||||
more messages than specified in
|
||||
<varname>RateLimitBurst=</varname> are logged by a service,
|
||||
all further messages within the interval are dropped until the
|
||||
interval is over. A message about the number of dropped
|
||||
messages is generated. This rate limiting is applied
|
||||
per-service, so that two services which log do not interfere
|
||||
with each other's limits. Defaults to 1000 messages in 30s.
|
||||
The time specification for
|
||||
<varname>RateLimitInterval=</varname> may be specified in the
|
||||
following units: <literal>s</literal>, <literal>min</literal>,
|
||||
<literal>h</literal>, <literal>ms</literal>,
|
||||
<literal>us</literal>. To turn off any kind of rate limiting,
|
||||
set either value to 0.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>SystemMaxUse=</varname></term>
|
||||
<term><varname>SystemKeepFree=</varname></term>
|
||||
<term><varname>SystemMaxFileSize=</varname></term>
|
||||
<term><varname>RuntimeMaxUse=</varname></term>
|
||||
<term><varname>RuntimeKeepFree=</varname></term>
|
||||
<term><varname>RuntimeMaxFileSize=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>SystemMaxUse=</varname></term>
|
||||
<term><varname>SystemKeepFree=</varname></term>
|
||||
<term><varname>SystemMaxFileSize=</varname></term>
|
||||
<term><varname>RuntimeMaxUse=</varname></term>
|
||||
<term><varname>RuntimeKeepFree=</varname></term>
|
||||
<term><varname>RuntimeMaxFileSize=</varname></term>
|
||||
|
||||
<listitem><para>Enforce size limits on
|
||||
the journal files stored. The options
|
||||
prefixed with
|
||||
<literal>System</literal> apply to the
|
||||
journal files when stored on a
|
||||
persistent file system, more
|
||||
specifically
|
||||
<filename>/var/log/journal</filename>. The
|
||||
options prefixed with
|
||||
<literal>Runtime</literal> apply to
|
||||
the journal files when stored on a
|
||||
volatile in-memory file system, more
|
||||
specifically
|
||||
<filename>/run/log/journal</filename>. The
|
||||
former is used only when
|
||||
<filename>/var</filename> is mounted,
|
||||
writable, and the directory
|
||||
<filename>/var/log/journal</filename>
|
||||
exists. Otherwise, only the latter
|
||||
applies. Note that this means that
|
||||
during early boot and if the
|
||||
administrator disabled persistent
|
||||
logging, only the latter options apply,
|
||||
while the former apply if persistent
|
||||
logging is enabled and the system is
|
||||
fully booted
|
||||
up. <command>journalctl</command> and
|
||||
<command>systemd-journald</command>
|
||||
ignore all files with names not ending
|
||||
with <literal>.journal</literal> or
|
||||
<literal>.journal~</literal>, so only
|
||||
such files, located in the appropriate
|
||||
directories, are taken into account
|
||||
when calculating current disk usage.
|
||||
</para>
|
||||
<listitem><para>Enforce size limits on the journal files
|
||||
stored. The options prefixed with <literal>System</literal>
|
||||
apply to the journal files when stored on a persistent file
|
||||
system, more specifically
|
||||
<filename>/var/log/journal</filename>. The options prefixed
|
||||
with <literal>Runtime</literal> apply to the journal files
|
||||
when stored on a volatile in-memory file system, more
|
||||
specifically <filename>/run/log/journal</filename>. The former
|
||||
is used only when <filename>/var</filename> is mounted,
|
||||
writable, and the directory
|
||||
<filename>/var/log/journal</filename> exists. Otherwise, only
|
||||
the latter applies. Note that this means that during early
|
||||
boot and if the administrator disabled persistent logging,
|
||||
only the latter options apply, while the former apply if
|
||||
persistent logging is enabled and the system is fully booted
|
||||
up. <command>journalctl</command> and
|
||||
<command>systemd-journald</command> ignore all files with
|
||||
names not ending with <literal>.journal</literal> or
|
||||
<literal>.journal~</literal>, so only such files, located in
|
||||
the appropriate directories, are taken into account when
|
||||
calculating current disk usage.
|
||||
</para>
|
||||
|
||||
<para><varname>SystemMaxUse=</varname>
|
||||
and <varname>RuntimeMaxUse=</varname>
|
||||
control how much disk space the
|
||||
journal may use up at maximum.
|
||||
<varname>SystemKeepFree=</varname> and
|
||||
<varname>RuntimeKeepFree=</varname>
|
||||
control how much disk space
|
||||
systemd-journald shall leave free for
|
||||
other uses.
|
||||
<command>systemd-journald</command>
|
||||
will respect both limits and use the
|
||||
smaller of the two values.</para>
|
||||
<para><varname>SystemMaxUse=</varname> and
|
||||
<varname>RuntimeMaxUse=</varname> control how much disk space
|
||||
the journal may use up at maximum.
|
||||
<varname>SystemKeepFree=</varname> and
|
||||
<varname>RuntimeKeepFree=</varname> control how much disk
|
||||
space systemd-journald shall leave free for other uses.
|
||||
<command>systemd-journald</command> will respect both limits
|
||||
and use the smaller of the two values.</para>
|
||||
|
||||
<para>The first pair defaults to 10%
|
||||
and the second to 15% of the size of
|
||||
the respective file system. If the
|
||||
file system is nearly full and either
|
||||
<varname>SystemKeepFree=</varname> or
|
||||
<varname>RuntimeKeepFree=</varname> is
|
||||
violated when systemd-journald is
|
||||
started, the value will be raised to
|
||||
percentage that is actually free. This
|
||||
means that if there was enough
|
||||
free space before and journal files were
|
||||
created, and subsequently something
|
||||
else causes the file system to fill
|
||||
up, journald will stop using more
|
||||
space, but it will not be removing
|
||||
existing files to go reduce footprint
|
||||
either.</para>
|
||||
<para>The first pair defaults to 10% and the second to 15% of
|
||||
the size of the respective file system. If the file system is
|
||||
nearly full and either <varname>SystemKeepFree=</varname> or
|
||||
<varname>RuntimeKeepFree=</varname> is violated when
|
||||
systemd-journald is started, the value will be raised to
|
||||
percentage that is actually free. This means that if there was
|
||||
enough free space before and journal files were created, and
|
||||
subsequently something else causes the file system to fill up,
|
||||
journald will stop using more space, but it will not be
|
||||
removing existing files to go reduce footprint either.</para>
|
||||
|
||||
<para><varname>SystemMaxFileSize=</varname>
|
||||
and
|
||||
<varname>RuntimeMaxFileSize=</varname>
|
||||
control how large individual journal
|
||||
files may grow at maximum. This
|
||||
influences the granularity in which
|
||||
disk space is made available through
|
||||
rotation, i.e. deletion of historic
|
||||
data. Defaults to one eighth of the
|
||||
values configured with
|
||||
<varname>SystemMaxUse=</varname> and
|
||||
<varname>RuntimeMaxUse=</varname>, so
|
||||
that usually seven rotated journal
|
||||
files are kept as history. Specify
|
||||
values in bytes or use K, M, G, T, P,
|
||||
E as units for the specified sizes
|
||||
(equal to 1024, 1024²,... bytes).
|
||||
Note that size limits are enforced
|
||||
synchronously when journal files are
|
||||
extended, and no explicit rotation
|
||||
step triggered by time is
|
||||
needed.</para></listitem>
|
||||
</varlistentry>
|
||||
<para><varname>SystemMaxFileSize=</varname>
|
||||
and
|
||||
<varname>RuntimeMaxFileSize=</varname>
|
||||
control how large individual journal
|
||||
files may grow at maximum. This
|
||||
influences the granularity in which
|
||||
disk space is made available through
|
||||
rotation, i.e. deletion of historic
|
||||
data. Defaults to one eighth of the
|
||||
values configured with
|
||||
<varname>SystemMaxUse=</varname> and
|
||||
<varname>RuntimeMaxUse=</varname>, so
|
||||
that usually seven rotated journal
|
||||
files are kept as history. Specify
|
||||
values in bytes or use K, M, G, T, P,
|
||||
E as units for the specified sizes
|
||||
(equal to 1024, 1024²,... bytes).
|
||||
Note that size limits are enforced
|
||||
synchronously when journal files are
|
||||
extended, and no explicit rotation
|
||||
step triggered by time is
|
||||
needed.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>MaxFileSec=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>MaxFileSec=</varname></term>
|
||||
|
||||
<listitem><para>The maximum time to
|
||||
store entries in a single journal
|
||||
file before rotating to the next
|
||||
one. Normally, time-based rotation
|
||||
should not be required as size-based
|
||||
rotation with options such as
|
||||
<varname>SystemMaxFileSize=</varname>
|
||||
should be sufficient to ensure that
|
||||
journal files do not grow without
|
||||
bounds. However, to ensure that not
|
||||
too much data is lost at once when old
|
||||
journal files are deleted, it might
|
||||
make sense to change this value from
|
||||
the default of one month. Set to 0 to
|
||||
turn off this feature. This setting
|
||||
takes time values which may be
|
||||
suffixed with the units
|
||||
<literal>year</literal>,
|
||||
<literal>month</literal>,
|
||||
<literal>week</literal>, <literal>day</literal>,
|
||||
<literal>h</literal> or <literal>m</literal>
|
||||
to override the default time unit of
|
||||
seconds.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The maximum time to store entries in a single
|
||||
journal file before rotating to the next one. Normally,
|
||||
time-based rotation should not be required as size-based
|
||||
rotation with options such as
|
||||
<varname>SystemMaxFileSize=</varname> should be sufficient to
|
||||
ensure that journal files do not grow without bounds. However,
|
||||
to ensure that not too much data is lost at once when old
|
||||
journal files are deleted, it might make sense to change this
|
||||
value from the default of one month. Set to 0 to turn off this
|
||||
feature. This setting takes time values which may be suffixed
|
||||
with the units <literal>year</literal>,
|
||||
<literal>month</literal>, <literal>week</literal>,
|
||||
<literal>day</literal>, <literal>h</literal> or
|
||||
<literal>m</literal> to override the default time unit of
|
||||
seconds.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>MaxRetentionSec=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>MaxRetentionSec=</varname></term>
|
||||
|
||||
<listitem><para>The maximum time to
|
||||
store journal entries. This
|
||||
controls whether journal files
|
||||
containing entries older then the
|
||||
specified time span are
|
||||
deleted. Normally, time-based deletion
|
||||
of old journal files should not be
|
||||
required as size-based deletion with
|
||||
options such as
|
||||
<varname>SystemMaxUse=</varname>
|
||||
should be sufficient to ensure that
|
||||
journal files do not grow without
|
||||
bounds. However, to enforce data
|
||||
retention policies, it might make sense
|
||||
to change this value from the
|
||||
default of 0 (which turns off this
|
||||
feature). This setting also takes
|
||||
time values which may be suffixed with
|
||||
the units <literal>year</literal>,
|
||||
<literal>month</literal>,
|
||||
<literal>week</literal>, <literal>day</literal>,
|
||||
<literal>h</literal> or <literal> m</literal>
|
||||
to override the default time unit of
|
||||
seconds.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The maximum time to store journal entries.
|
||||
This controls whether journal files containing entries older
|
||||
then the specified time span are deleted. Normally, time-based
|
||||
deletion of old journal files should not be required as
|
||||
size-based deletion with options such as
|
||||
<varname>SystemMaxUse=</varname> should be sufficient to
|
||||
ensure that journal files do not grow without bounds. However,
|
||||
to enforce data retention policies, it might make sense to
|
||||
change this value from the default of 0 (which turns off this
|
||||
feature). This setting also takes time values which may be
|
||||
suffixed with the units <literal>year</literal>,
|
||||
<literal>month</literal>, <literal>week</literal>,
|
||||
<literal>day</literal>, <literal>h</literal> or <literal>
|
||||
m</literal> to override the default time unit of
|
||||
seconds.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>SyncIntervalSec=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>SyncIntervalSec=</varname></term>
|
||||
|
||||
<listitem><para>The timeout before
|
||||
synchronizing journal files to
|
||||
disk. After syncing, journal files are
|
||||
placed in the OFFLINE state. Note that
|
||||
syncing is unconditionally done
|
||||
immediately after a log message of
|
||||
priority CRIT, ALERT or EMERG has been
|
||||
logged. This setting hence applies
|
||||
only to messages of the levels ERR,
|
||||
WARNING, NOTICE, INFO, DEBUG. The
|
||||
default timeout is 5 minutes.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The timeout before synchronizing journal files
|
||||
to disk. After syncing, journal files are placed in the
|
||||
OFFLINE state. Note that syncing is unconditionally done
|
||||
immediately after a log message of priority CRIT, ALERT or
|
||||
EMERG has been logged. This setting hence applies only to
|
||||
messages of the levels ERR, WARNING, NOTICE, INFO, DEBUG. The
|
||||
default timeout is 5 minutes. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>ForwardToSyslog=</varname></term>
|
||||
<term><varname>ForwardToKMsg=</varname></term>
|
||||
<term><varname>ForwardToConsole=</varname></term>
|
||||
<term><varname>ForwardToWall=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>ForwardToSyslog=</varname></term>
|
||||
<term><varname>ForwardToKMsg=</varname></term>
|
||||
<term><varname>ForwardToConsole=</varname></term>
|
||||
<term><varname>ForwardToWall=</varname></term>
|
||||
|
||||
<listitem><para>Control whether log
|
||||
messages received by the journal
|
||||
daemon shall be forwarded to a
|
||||
traditional syslog daemon, to the
|
||||
kernel log buffer (kmsg), to the
|
||||
system console, or sent as wall
|
||||
messages to all logged-in users. These
|
||||
options take boolean arguments. If
|
||||
forwarding to syslog is enabled but no
|
||||
syslog daemon is running, the
|
||||
respective option has no effect. By
|
||||
default, only forwarding wall is
|
||||
enabled. These settings may be
|
||||
overridden at boot time with the
|
||||
kernel command line options
|
||||
<literal>systemd.journald.forward_to_syslog=</literal>,
|
||||
<literal>systemd.journald.forward_to_kmsg=</literal>,
|
||||
<literal>systemd.journald.forward_to_console=</literal>
|
||||
and
|
||||
<literal>systemd.journald.forward_to_wall=</literal>.
|
||||
When forwarding to the console, the
|
||||
TTY to log to can be changed with
|
||||
<varname>TTYPath=</varname>, described
|
||||
below.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Control whether log messages received by the
|
||||
journal daemon shall be forwarded to a traditional syslog
|
||||
daemon, to the kernel log buffer (kmsg), to the system
|
||||
console, or sent as wall messages to all logged-in users.
|
||||
These options take boolean arguments. If forwarding to syslog
|
||||
is enabled but no syslog daemon is running, the respective
|
||||
option has no effect. By default, only forwarding wall is
|
||||
enabled. These settings may be overridden at boot time with
|
||||
the kernel command line options
|
||||
<literal>systemd.journald.forward_to_syslog=</literal>,
|
||||
<literal>systemd.journald.forward_to_kmsg=</literal>,
|
||||
<literal>systemd.journald.forward_to_console=</literal> and
|
||||
<literal>systemd.journald.forward_to_wall=</literal>. When
|
||||
forwarding to the console, the TTY to log to can be changed
|
||||
with <varname>TTYPath=</varname>, described
|
||||
below.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>MaxLevelStore=</varname></term>
|
||||
<term><varname>MaxLevelSyslog=</varname></term>
|
||||
<term><varname>MaxLevelKMsg=</varname></term>
|
||||
<term><varname>MaxLevelConsole=</varname></term>
|
||||
<term><varname>MaxLevelWall=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>MaxLevelStore=</varname></term>
|
||||
<term><varname>MaxLevelSyslog=</varname></term>
|
||||
<term><varname>MaxLevelKMsg=</varname></term>
|
||||
<term><varname>MaxLevelConsole=</varname></term>
|
||||
<term><varname>MaxLevelWall=</varname></term>
|
||||
|
||||
<listitem><para>Controls the maximum
|
||||
log level of messages that are stored
|
||||
on disk, forwarded to syslog, kmsg,
|
||||
the console or wall (if that is
|
||||
enabled, see above). As argument,
|
||||
takes one of
|
||||
<literal>emerg</literal>,
|
||||
<literal>alert</literal>,
|
||||
<literal>crit</literal>,
|
||||
<literal>err</literal>,
|
||||
<literal>warning</literal>,
|
||||
<literal>notice</literal>,
|
||||
<literal>info</literal>,
|
||||
<literal>debug</literal> or integer
|
||||
values in the range of 0..7 (corresponding
|
||||
to the same levels). Messages equal or below
|
||||
the log level specified are
|
||||
stored/forwarded, messages above are
|
||||
dropped. Defaults to
|
||||
<literal>debug</literal> for
|
||||
<varname>MaxLevelStore=</varname> and
|
||||
<varname>MaxLevelSyslog=</varname>, to
|
||||
ensure that the all messages are
|
||||
written to disk and forwarded to
|
||||
syslog. Defaults to
|
||||
<literal>notice</literal> for
|
||||
<varname>MaxLevelKMsg=</varname>,
|
||||
<literal>info</literal> for
|
||||
<varname>MaxLevelConsole=</varname> and
|
||||
<literal>emerg</literal> for
|
||||
<varname>MaxLevelWall=</varname>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Controls the maximum log level of messages
|
||||
that are stored on disk, forwarded to syslog, kmsg, the
|
||||
console or wall (if that is enabled, see above). As argument,
|
||||
takes one of
|
||||
<literal>emerg</literal>,
|
||||
<literal>alert</literal>,
|
||||
<literal>crit</literal>,
|
||||
<literal>err</literal>,
|
||||
<literal>warning</literal>,
|
||||
<literal>notice</literal>,
|
||||
<literal>info</literal>,
|
||||
<literal>debug</literal>,
|
||||
or integer values in the range of 0..7 (corresponding to the
|
||||
same levels). Messages equal or below the log level specified
|
||||
are stored/forwarded, messages above are dropped. Defaults to
|
||||
<literal>debug</literal> for <varname>MaxLevelStore=</varname>
|
||||
and <varname>MaxLevelSyslog=</varname>, to ensure that the all
|
||||
messages are written to disk and forwarded to syslog. Defaults
|
||||
to
|
||||
<literal>notice</literal> for <varname>MaxLevelKMsg=</varname>,
|
||||
<literal>info</literal> for <varname>MaxLevelConsole=</varname>,
|
||||
and <literal>emerg</literal> for
|
||||
<varname>MaxLevelWall=</varname>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>TTYPath=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>TTYPath=</varname></term>
|
||||
|
||||
<listitem><para>Change the console TTY
|
||||
to use if
|
||||
<varname>ForwardToConsole=yes</varname>
|
||||
is used. Defaults to
|
||||
<filename>/dev/console</filename>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Change the console TTY to use if
|
||||
<varname>ForwardToConsole=yes</varname> is used. Defaults to
|
||||
<filename>/dev/console</filename>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,375 +23,349 @@
|
||||
|
||||
<refentry id="kernel-command-line">
|
||||
|
||||
<refentryinfo>
|
||||
<title>kernel-command-line</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>kernel-command-line</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>kernel-command-line</refentrytitle>
|
||||
<manvolnum>7</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>kernel-command-line</refentrytitle>
|
||||
<manvolnum>7</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>kernel-command-line</refname>
|
||||
<refpurpose>Kernel command line parameters</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>kernel-command-line</refname>
|
||||
<refpurpose>Kernel command line parameters</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/proc/cmdline</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/proc/cmdline</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>The kernel, the initial RAM disk (initrd) and
|
||||
basic userspace functionality may be configured at boot via
|
||||
kernel command line arguments.</para>
|
||||
<para>The kernel, the initial RAM disk (initrd) and
|
||||
basic userspace functionality may be configured at boot via
|
||||
kernel command line arguments.</para>
|
||||
|
||||
<para>For command line parameters understood by the
|
||||
kernel, please see <ulink
|
||||
url="https://www.kernel.org/doc/Documentation/kernel-parameters.txt"><filename>kernel-parameters.txt</filename></ulink>
|
||||
and
|
||||
<citerefentry project='man-pages'><refentrytitle>bootparam</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
||||
<para>For command line parameters understood by the kernel, please
|
||||
see <ulink
|
||||
url="https://www.kernel.org/doc/Documentation/kernel-parameters.txt"><filename>kernel-parameters.txt</filename></ulink>
|
||||
and
|
||||
<citerefentry project='man-pages'><refentrytitle>bootparam</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para>For command line parameters understood by the
|
||||
initial RAM disk, please see
|
||||
<citerefentry project='die-net'><refentrytitle>dracut.cmdline</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
or the documentation of the specific initrd
|
||||
implementation of your installation.</para>
|
||||
</refsect1>
|
||||
<para>For command line parameters understood by the initial RAM
|
||||
disk, please see
|
||||
<citerefentry project='die-net'><refentrytitle>dracut.cmdline</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
or the documentation of the specific initrd implementation of your
|
||||
installation.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Core OS Command Line Arguments</title>
|
||||
<refsect1>
|
||||
<title>Core OS Command Line Arguments</title>
|
||||
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<varlistentry>
|
||||
<term><varname>systemd.unit=</varname></term>
|
||||
<term><varname>rd.systemd.unit=</varname></term>
|
||||
<term><varname>systemd.dump_core=</varname></term>
|
||||
<term><varname>systemd.crash_shell=</varname></term>
|
||||
<term><varname>systemd.crash_chvt=</varname></term>
|
||||
<term><varname>systemd.confirm_spawn=</varname></term>
|
||||
<term><varname>systemd.show_status=</varname></term>
|
||||
<term><varname>systemd.log_target=</varname></term>
|
||||
<term><varname>systemd.log_level=</varname></term>
|
||||
<term><varname>systemd.log_color=</varname></term>
|
||||
<term><varname>systemd.log_location=</varname></term>
|
||||
<term><varname>systemd.default_standard_output=</varname></term>
|
||||
<term><varname>systemd.default_standard_error=</varname></term>
|
||||
<term><varname>systemd.setenv=</varname></term>
|
||||
<listitem>
|
||||
<para>Parameters understood by
|
||||
the system and service manager
|
||||
to control system behavior. For details, see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<varlistentry>
|
||||
<term><varname>systemd.unit=</varname></term>
|
||||
<term><varname>rd.systemd.unit=</varname></term>
|
||||
<term><varname>systemd.dump_core=</varname></term>
|
||||
<term><varname>systemd.crash_shell=</varname></term>
|
||||
<term><varname>systemd.crash_chvt=</varname></term>
|
||||
<term><varname>systemd.confirm_spawn=</varname></term>
|
||||
<term><varname>systemd.show_status=</varname></term>
|
||||
<term><varname>systemd.log_target=</varname></term>
|
||||
<term><varname>systemd.log_level=</varname></term>
|
||||
<term><varname>systemd.log_color=</varname></term>
|
||||
<term><varname>systemd.log_location=</varname></term>
|
||||
<term><varname>systemd.default_standard_output=</varname></term>
|
||||
<term><varname>systemd.default_standard_error=</varname></term>
|
||||
<term><varname>systemd.setenv=</varname></term>
|
||||
<listitem>
|
||||
<para>Parameters understood by the system and service
|
||||
manager to control system behavior. For details, see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>systemd.mask=</varname></term>
|
||||
<term><varname>systemd.wants=</varname></term>
|
||||
<term><varname>systemd.debug-shell</varname></term>
|
||||
<listitem>
|
||||
<para>Additional parameters
|
||||
understood by
|
||||
<citerefentry><refentrytitle>systemd-debug-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
to mask or start specific
|
||||
units at boot, or invoke a
|
||||
debug shell on tty9.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>systemd.mask=</varname></term>
|
||||
<term><varname>systemd.wants=</varname></term>
|
||||
<term><varname>systemd.debug-shell</varname></term>
|
||||
<listitem>
|
||||
<para>Additional parameters understood by
|
||||
<citerefentry><refentrytitle>systemd-debug-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
to mask or start specific units at boot, or invoke a debug
|
||||
shell on tty9.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>systemd.restore_state=</varname></term>
|
||||
<listitem>
|
||||
<para>This parameter is understood by
|
||||
several system tools to control
|
||||
whether or not they should restore
|
||||
system state from the previous boot.
|
||||
For details, see
|
||||
<citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>systemd-rfkill@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>systemd.restore_state=</varname></term>
|
||||
<listitem>
|
||||
<para>This parameter is understood by several system tools
|
||||
to control whether or not they should restore system state
|
||||
from the previous boot. For details, see
|
||||
<citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>systemd-rfkill@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>quiet</varname></term>
|
||||
<listitem>
|
||||
<para>Parameter understood by
|
||||
both the kernel and the system
|
||||
and service manager to control
|
||||
console log verbosity. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>quiet</varname></term>
|
||||
<listitem>
|
||||
<para>Parameter understood by both the kernel and the system
|
||||
and service manager to control console log verbosity. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>debug</varname></term>
|
||||
<listitem>
|
||||
<para>Parameter understood by
|
||||
both the kernel and the system
|
||||
and service manager to control
|
||||
console log verbosity. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>debug</varname></term>
|
||||
<listitem>
|
||||
<para>Parameter understood by both the kernel and the system
|
||||
and service manager to control console log verbosity. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>-b</varname></term>
|
||||
<term><varname>emergency</varname></term>
|
||||
<term><varname>rescue</varname></term>
|
||||
<term><varname>single</varname></term>
|
||||
<term><varname>s</varname></term>
|
||||
<term><varname>S</varname></term>
|
||||
<term><varname>1</varname></term>
|
||||
<term><varname>2</varname></term>
|
||||
<term><varname>3</varname></term>
|
||||
<term><varname>4</varname></term>
|
||||
<term><varname>5</varname></term>
|
||||
<listitem>
|
||||
<para>Parameters understood by
|
||||
the system and service
|
||||
manager, as compatibility
|
||||
options. For details, see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>-b</varname></term>
|
||||
<term><varname>emergency</varname></term>
|
||||
<term><varname>rescue</varname></term>
|
||||
<term><varname>single</varname></term>
|
||||
<term><varname>s</varname></term>
|
||||
<term><varname>S</varname></term>
|
||||
<term><varname>1</varname></term>
|
||||
<term><varname>2</varname></term>
|
||||
<term><varname>3</varname></term>
|
||||
<term><varname>4</varname></term>
|
||||
<term><varname>5</varname></term>
|
||||
<listitem>
|
||||
<para>Parameters understood by the system and service
|
||||
manager, as compatibility options. For details, see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>locale.LANG=</varname></term>
|
||||
<term><varname>locale.LANGUAGE=</varname></term>
|
||||
<term><varname>locale.LC_CTYPE=</varname></term>
|
||||
<term><varname>locale.LC_NUMERIC=</varname></term>
|
||||
<term><varname>locale.LC_TIME=</varname></term>
|
||||
<term><varname>locale.LC_COLLATE=</varname></term>
|
||||
<term><varname>locale.LC_MONETARY=</varname></term>
|
||||
<term><varname>locale.LC_MESSAGES=</varname></term>
|
||||
<term><varname>locale.LC_PAPER=</varname></term>
|
||||
<term><varname>locale.LC_NAME=</varname></term>
|
||||
<term><varname>locale.LC_ADDRESS=</varname></term>
|
||||
<term><varname>locale.LC_TELEPHONE=</varname></term>
|
||||
<term><varname>locale.LC_MEASUREMENT=</varname></term>
|
||||
<term><varname>locale.LC_IDENTIFICATION=</varname></term>
|
||||
<listitem>
|
||||
<para>Parameters understood by
|
||||
the system and service manager
|
||||
to control locale and language
|
||||
settings. For details, see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>locale.LANG=</varname></term>
|
||||
<term><varname>locale.LANGUAGE=</varname></term>
|
||||
<term><varname>locale.LC_CTYPE=</varname></term>
|
||||
<term><varname>locale.LC_NUMERIC=</varname></term>
|
||||
<term><varname>locale.LC_TIME=</varname></term>
|
||||
<term><varname>locale.LC_COLLATE=</varname></term>
|
||||
<term><varname>locale.LC_MONETARY=</varname></term>
|
||||
<term><varname>locale.LC_MESSAGES=</varname></term>
|
||||
<term><varname>locale.LC_PAPER=</varname></term>
|
||||
<term><varname>locale.LC_NAME=</varname></term>
|
||||
<term><varname>locale.LC_ADDRESS=</varname></term>
|
||||
<term><varname>locale.LC_TELEPHONE=</varname></term>
|
||||
<term><varname>locale.LC_MEASUREMENT=</varname></term>
|
||||
<term><varname>locale.LC_IDENTIFICATION=</varname></term>
|
||||
<listitem>
|
||||
<para>Parameters understood by the system and service
|
||||
manager to control locale and language settings. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>fsck.mode=</varname></term>
|
||||
<term><varname>fsck.repair=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>fsck.mode=</varname></term>
|
||||
<term><varname>fsck.repair=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Parameters understood by
|
||||
the file system checker
|
||||
services. For details, see
|
||||
<citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>Parameters understood by the file system checker
|
||||
services. For details, see
|
||||
<citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>quotacheck.mode=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>quotacheck.mode=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Parameter understood by
|
||||
the file quota checker
|
||||
service. For details, see
|
||||
<citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>Parameter understood by the file quota checker
|
||||
service. For details, see
|
||||
<citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>systemd.journald.forward_to_syslog=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_kmsg=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_console=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_wall=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>systemd.journald.forward_to_syslog=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_kmsg=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_console=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_wall=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Parameters understood by
|
||||
the journal service. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>Parameters understood by the journal service. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>vconsole.keymap=</varname></term>
|
||||
<term><varname>vconsole.keymap.toggle=</varname></term>
|
||||
<term><varname>vconsole.font=</varname></term>
|
||||
<term><varname>vconsole.font.map=</varname></term>
|
||||
<term><varname>vconsole.font.unimap=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>vconsole.keymap=</varname></term>
|
||||
<term><varname>vconsole.keymap.toggle=</varname></term>
|
||||
<term><varname>vconsole.font=</varname></term>
|
||||
<term><varname>vconsole.font.map=</varname></term>
|
||||
<term><varname>vconsole.font.unimap=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Parameters understood by
|
||||
the virtual console setup logic. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd-vconsole-setup.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>Parameters understood by the virtual console setup
|
||||
logic. For details, see
|
||||
<citerefentry><refentrytitle>systemd-vconsole-setup.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>udev.log-priority=</varname></term>
|
||||
<term><varname>rd.udev.log-priority=</varname></term>
|
||||
<term><varname>udev.children-max=</varname></term>
|
||||
<term><varname>rd.udev.children-max=</varname></term>
|
||||
<term><varname>udev.exec-delay=</varname></term>
|
||||
<term><varname>rd.udev.exec-delay=</varname></term>
|
||||
<term><varname>udev.event-timeout=</varname></term>
|
||||
<term><varname>rd.udev.event-timeout=</varname></term>
|
||||
<term><varname>net.ifnames=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>udev.log-priority=</varname></term>
|
||||
<term><varname>rd.udev.log-priority=</varname></term>
|
||||
<term><varname>udev.children-max=</varname></term>
|
||||
<term><varname>rd.udev.children-max=</varname></term>
|
||||
<term><varname>udev.exec-delay=</varname></term>
|
||||
<term><varname>rd.udev.exec-delay=</varname></term>
|
||||
<term><varname>udev.event-timeout=</varname></term>
|
||||
<term><varname>rd.udev.event-timeout=</varname></term>
|
||||
<term><varname>net.ifnames=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Parameters understood by
|
||||
the device event managing daemon. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>Parameters understood by the device event managing
|
||||
daemon. For details, see
|
||||
<citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>plymouth.enable=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>plymouth.enable=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>May be used to disable
|
||||
the Plymouth boot splash. For
|
||||
details, see
|
||||
<citerefentry project='die-net'><refentrytitle>plymouth</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>May be used to disable the Plymouth boot splash. For
|
||||
details, see
|
||||
<citerefentry project='die-net'><refentrytitle>plymouth</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>luks=</varname></term>
|
||||
<term><varname>rd.luks=</varname></term>
|
||||
<term><varname>luks.crypttab=</varname></term>
|
||||
<term><varname>rd.luks.crypttab=</varname></term>
|
||||
<term><varname>luks.name=</varname></term>
|
||||
<term><varname>rd.luks.name=</varname></term>
|
||||
<term><varname>luks.uuid=</varname></term>
|
||||
<term><varname>rd.luks.uuid=</varname></term>
|
||||
<term><varname>luks.options=</varname></term>
|
||||
<term><varname>rd.luks.options=</varname></term>
|
||||
<term><varname>luks.key=</varname></term>
|
||||
<term><varname>rd.luks.key=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>luks=</varname></term>
|
||||
<term><varname>rd.luks=</varname></term>
|
||||
<term><varname>luks.crypttab=</varname></term>
|
||||
<term><varname>rd.luks.crypttab=</varname></term>
|
||||
<term><varname>luks.name=</varname></term>
|
||||
<term><varname>rd.luks.name=</varname></term>
|
||||
<term><varname>luks.uuid=</varname></term>
|
||||
<term><varname>rd.luks.uuid=</varname></term>
|
||||
<term><varname>luks.options=</varname></term>
|
||||
<term><varname>rd.luks.options=</varname></term>
|
||||
<term><varname>luks.key=</varname></term>
|
||||
<term><varname>rd.luks.key=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Configures the LUKS
|
||||
full-disk encryption logic at
|
||||
boot. For details, see
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>Configures the LUKS full-disk encryption logic at
|
||||
boot. For details, see
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>fstab=</varname></term>
|
||||
<term><varname>rd.fstab=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>fstab=</varname></term>
|
||||
<term><varname>rd.fstab=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Configures the
|
||||
<filename>/etc/fstab</filename>
|
||||
logic at boot. For details, see
|
||||
<citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>Configures the <filename>/etc/fstab</filename> logic
|
||||
at boot. For details, see
|
||||
<citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>root=</varname></term>
|
||||
<term><varname>rootfstype=</varname></term>
|
||||
<term><varname>rootfsflags=</varname></term>
|
||||
<term><varname>ro</varname></term>
|
||||
<term><varname>rw</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>root=</varname></term>
|
||||
<term><varname>rootfstype=</varname></term>
|
||||
<term><varname>rootfsflags=</varname></term>
|
||||
<term><varname>ro</varname></term>
|
||||
<term><varname>rw</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Configures the root file
|
||||
system and its file system
|
||||
type and mount options, as
|
||||
well as whether it shall be
|
||||
mounted read-only or
|
||||
read-writable initially. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>Configures the root file system and its file system
|
||||
type and mount options, as well as whether it shall be
|
||||
mounted read-only or read-writable initially. For details,
|
||||
see
|
||||
<citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>systemd.gpt_auto=</varname></term>
|
||||
<term><varname>rd.systemd.gpt_auto=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>systemd.gpt_auto=</varname></term>
|
||||
<term><varname>rd.systemd.gpt_auto=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Configures whether GPT
|
||||
based partition auto-discovery
|
||||
shall be attempted. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>Configures whether GPT based partition auto-discovery
|
||||
shall be attempted. For details, see
|
||||
<citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>modules-load=</varname></term>
|
||||
<term><varname>rd.modules-load=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>modules-load=</varname></term>
|
||||
<term><varname>rd.modules-load=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Load a specific kernel
|
||||
module early at boot. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem>
|
||||
<para>Load a specific kernel module early at boot. For
|
||||
details, see
|
||||
<citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>resume=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>resume=</varname></term>
|
||||
|
||||
<listitem>
|
||||
<para>Enables resume from hibernation
|
||||
using the specified device.
|
||||
All <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>-like
|
||||
paths are supported. For details, see
|
||||
<citerefentry><refentrytitle>systemd-hibernate-resume-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<listitem>
|
||||
<para>Enables resume from hibernation using the specified
|
||||
device. All
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>-like
|
||||
paths are supported. For details, see
|
||||
<citerefentry><refentrytitle>systemd-hibernate-resume-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>bootparam</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>dracut.cmdline</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-debug-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-vconsole-setup.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>plymouth</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-rfkill@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hibernate-resume-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>bootparam</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>dracut.cmdline</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-debug-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-fsck@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-vconsole-setup.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-udevd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>plymouth</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-backlight@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-rfkill@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hibernate-resume-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,136 +23,131 @@
|
||||
-->
|
||||
|
||||
<refentry id="locale.conf">
|
||||
<refentryinfo>
|
||||
<title>locale.conf</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>locale.conf</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>locale.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>locale.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>locale.conf</refname>
|
||||
<refpurpose>Configuration file for locale settings</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>locale.conf</refname>
|
||||
<refpurpose>Configuration file for locale settings</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/locale.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/locale.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>The <filename>/etc/locale.conf</filename> file
|
||||
configures system-wide locale settings. It is read at
|
||||
early-boot by
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
<para>The <filename>/etc/locale.conf</filename> file configures
|
||||
system-wide locale settings. It is read at early-boot by
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para>The basic file format of
|
||||
<filename>locale.conf</filename> is a
|
||||
newline-separated list of environment-like
|
||||
shell-compatible variable assignments. It is possible
|
||||
to source the configuration from shell scripts,
|
||||
however, beyond mere variable assignments, no shell
|
||||
features are supported, allowing applications to read
|
||||
the file without implementing a shell compatible
|
||||
execution engine.</para>
|
||||
<para>The basic file format of <filename>locale.conf</filename> is
|
||||
a newline-separated list of environment-like shell-compatible
|
||||
variable assignments. It is possible to source the configuration
|
||||
from shell scripts, however, beyond mere variable assignments, no
|
||||
shell features are supported, allowing applications to read the
|
||||
file without implementing a shell compatible execution
|
||||
engine.</para>
|
||||
|
||||
<para>Note that the kernel command line options
|
||||
<varname>locale.LANG=</varname>,
|
||||
<varname>locale.LANGUAGE=</varname>,
|
||||
<varname>locale.LC_CTYPE=</varname>,
|
||||
<varname>locale.LC_NUMERIC=</varname>,
|
||||
<varname>locale.LC_TIME=</varname>,
|
||||
<varname>locale.LC_COLLATE=</varname>,
|
||||
<varname>locale.LC_MONETARY=</varname>,
|
||||
<varname>locale.LC_MESSAGES=</varname>,
|
||||
<varname>locale.LC_PAPER=</varname>,
|
||||
<varname>locale.LC_NAME=</varname>,
|
||||
<varname>locale.LC_ADDRESS=</varname>,
|
||||
<varname>locale.LC_TELEPHONE=</varname>,
|
||||
<varname>locale.LC_MEASUREMENT=</varname>,
|
||||
<varname>locale.LC_IDENTIFICATION=</varname> may be
|
||||
used to override the locale settings at boot.</para>
|
||||
<para>Note that the kernel command line options
|
||||
<varname>locale.LANG=</varname>,
|
||||
<varname>locale.LANGUAGE=</varname>,
|
||||
<varname>locale.LC_CTYPE=</varname>,
|
||||
<varname>locale.LC_NUMERIC=</varname>,
|
||||
<varname>locale.LC_TIME=</varname>,
|
||||
<varname>locale.LC_COLLATE=</varname>,
|
||||
<varname>locale.LC_MONETARY=</varname>,
|
||||
<varname>locale.LC_MESSAGES=</varname>,
|
||||
<varname>locale.LC_PAPER=</varname>,
|
||||
<varname>locale.LC_NAME=</varname>,
|
||||
<varname>locale.LC_ADDRESS=</varname>,
|
||||
<varname>locale.LC_TELEPHONE=</varname>,
|
||||
<varname>locale.LC_MEASUREMENT=</varname>,
|
||||
<varname>locale.LC_IDENTIFICATION=</varname> may be
|
||||
used to override the locale settings at boot.</para>
|
||||
|
||||
<para>The locale settings configured in
|
||||
<filename>/etc/locale.conf</filename> are system-wide
|
||||
and are inherited by every service or user, unless
|
||||
overridden or unset by individual programs or
|
||||
individual users.</para>
|
||||
<para>The locale settings configured in
|
||||
<filename>/etc/locale.conf</filename> are system-wide and are
|
||||
inherited by every service or user, unless overridden or unset by
|
||||
individual programs or individual users.</para>
|
||||
|
||||
<para>Depending on the operating system, other
|
||||
configuration files might be checked for locale
|
||||
configuration as well, however only as
|
||||
fallback.</para>
|
||||
<para>Depending on the operating system, other configuration files
|
||||
might be checked for locale configuration as well, however only as
|
||||
fallback.</para>
|
||||
|
||||
<para><citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
may be used to alter the settings in this file during
|
||||
runtime from the command line. Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize them on mounted (but not booted) system
|
||||
images.</para>
|
||||
</refsect1>
|
||||
<para><citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
may be used to alter the settings in this file during runtime from
|
||||
the command line. Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize them on mounted (but not booted) system
|
||||
images.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following locale settings may be set using
|
||||
<filename>/etc/locale.conf</filename>:
|
||||
<varname>LANG=</varname>,
|
||||
<varname>LANGUAGE=</varname>,
|
||||
<varname>LC_CTYPE=</varname>,
|
||||
<varname>LC_NUMERIC=</varname>,
|
||||
<varname>LC_TIME=</varname>,
|
||||
<varname>LC_COLLATE=</varname>,
|
||||
<varname>LC_MONETARY=</varname>,
|
||||
<varname>LC_MESSAGES=</varname>,
|
||||
<varname>LC_PAPER=</varname>,
|
||||
<varname>LC_NAME=</varname>,
|
||||
<varname>LC_ADDRESS=</varname>,
|
||||
<varname>LC_TELEPHONE=</varname>,
|
||||
<varname>LC_MEASUREMENT=</varname>,
|
||||
<varname>LC_IDENTIFICATION=</varname>. Note that
|
||||
<varname>LC_ALL</varname> may not be configured in
|
||||
this file. For details about the meaning and semantics
|
||||
of these settings, refer to
|
||||
<citerefentry><refentrytitle>locale</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
<para>The following locale settings may be set using
|
||||
<filename>/etc/locale.conf</filename>:
|
||||
<varname>LANG=</varname>,
|
||||
<varname>LANGUAGE=</varname>,
|
||||
<varname>LC_CTYPE=</varname>,
|
||||
<varname>LC_NUMERIC=</varname>,
|
||||
<varname>LC_TIME=</varname>,
|
||||
<varname>LC_COLLATE=</varname>,
|
||||
<varname>LC_MONETARY=</varname>,
|
||||
<varname>LC_MESSAGES=</varname>,
|
||||
<varname>LC_PAPER=</varname>,
|
||||
<varname>LC_NAME=</varname>,
|
||||
<varname>LC_ADDRESS=</varname>,
|
||||
<varname>LC_TELEPHONE=</varname>,
|
||||
<varname>LC_MEASUREMENT=</varname>,
|
||||
<varname>LC_IDENTIFICATION=</varname>.
|
||||
Note that <varname>LC_ALL</varname> may not be configured in this
|
||||
file. For details about the meaning and semantics of these
|
||||
settings, refer to
|
||||
<citerefentry><refentrytitle>locale</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
|
||||
<example>
|
||||
<title>German locale with English messages</title>
|
||||
<example>
|
||||
<title>German locale with English messages</title>
|
||||
|
||||
<para><filename>/etc/locale.conf</filename>:</para>
|
||||
<para><filename>/etc/locale.conf</filename>:</para>
|
||||
|
||||
<programlisting>LANG=de_DE.UTF-8
|
||||
<programlisting>LANG=de_DE.UTF-8
|
||||
LC_MESSAGES=en_US.UTF-8</programlisting>
|
||||
</example>
|
||||
</example>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>locale</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-localed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>locale</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-localed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,227 +22,200 @@
|
||||
-->
|
||||
|
||||
<refentry id="localectl" conditional='ENABLE_LOCALED'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>localectl</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>localectl</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>localectl</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>localectl</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>localectl</refname>
|
||||
<refpurpose>Control the system locale and keyboard layout settings</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>localectl</refname>
|
||||
<refpurpose>Control the system locale and keyboard layout settings</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>localectl</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="req">COMMAND</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>localectl</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="req">COMMAND</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>localectl</command> may be used to
|
||||
query and change the system locale and keyboard layout
|
||||
settings.</para>
|
||||
<para><command>localectl</command> may be used to query and change
|
||||
the system locale and keyboard layout settings.</para>
|
||||
|
||||
<para>The system locale controls the language settings
|
||||
of system services and of the UI before the user logs
|
||||
in, such as the display manager, as well as the
|
||||
default for users after login.</para>
|
||||
<para>The system locale controls the language settings of system
|
||||
services and of the UI before the user logs in, such as the
|
||||
display manager, as well as the default for users after
|
||||
login.</para>
|
||||
|
||||
<para>The keyboard settings control the keyboard
|
||||
layout used on the text console and of the graphical
|
||||
UI before the user logs in, such as the display
|
||||
manager, as well as the default for users after
|
||||
login.</para>
|
||||
<para>The keyboard settings control the keyboard layout used on
|
||||
the text console and of the graphical UI before the user logs in,
|
||||
such as the display manager, as well as the default for users
|
||||
after login.</para>
|
||||
|
||||
<para>Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the system locale for mounted (but not
|
||||
booted) system images.</para>
|
||||
</refsect1>
|
||||
<para>Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the system locale for mounted (but not booted)
|
||||
system images.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--no-ask-password</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--no-ask-password</option></term>
|
||||
|
||||
<listitem><para>Do not query the user
|
||||
for authentication for privileged
|
||||
operations.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Do not query the user for authentication for
|
||||
privileged operations.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--no-convert</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--no-convert</option></term>
|
||||
|
||||
<listitem><para>If
|
||||
<command>set-keymap</command> or
|
||||
<command>set-x11-keymap</command> is
|
||||
invoked and this option is passed, then
|
||||
the keymap will not be converted from
|
||||
the console to X11, or X11 to console,
|
||||
respectively.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>If <command>set-keymap</command> or
|
||||
<command>set-x11-keymap</command> is invoked and this option
|
||||
is passed, then the keymap will not be converted from the
|
||||
console to X11, or X11 to console,
|
||||
respectively.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="user-system-options.xml" xpointer="host" />
|
||||
<xi:include href="user-system-options.xml" xpointer="host" />
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
</variablelist>
|
||||
|
||||
<para>The following commands are understood:</para>
|
||||
<para>The following commands are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><command>status</command></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><command>status</command></term>
|
||||
|
||||
<listitem><para>Show current settings
|
||||
of the system locale and keyboard
|
||||
mapping.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Show current settings of the system locale and
|
||||
keyboard mapping.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>set-locale LOCALE...</command></term>
|
||||
<varlistentry>
|
||||
<term><command>set-locale LOCALE...</command></term>
|
||||
|
||||
<listitem><para>Set the system
|
||||
locale. This takes one or more
|
||||
assignments such as "LANG=de_DE.utf8",
|
||||
"LC_MESSAGES=en_GB.utf8", and so
|
||||
on. See
|
||||
<citerefentry><refentrytitle>locale</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
for details on the available settings
|
||||
and their meanings. Use
|
||||
<command>list-locales</command> for a
|
||||
list of available locales (see below).
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Set the system locale. This takes one or more
|
||||
assignments such as "LANG=de_DE.utf8",
|
||||
"LC_MESSAGES=en_GB.utf8", and so on. See
|
||||
<citerefentry><refentrytitle>locale</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
for details on the available settings and their meanings. Use
|
||||
<command>list-locales</command> for a list of available
|
||||
locales (see below). </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>list-locales</command></term>
|
||||
<varlistentry>
|
||||
<term><command>list-locales</command></term>
|
||||
|
||||
<listitem><para>List available locales
|
||||
useful for configuration with
|
||||
<command>set-locale</command>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>List available locales useful for
|
||||
configuration with
|
||||
<command>set-locale</command>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>set-keymap MAP [TOGGLEMAP]</command></term>
|
||||
<varlistentry>
|
||||
<term><command>set-keymap MAP [TOGGLEMAP]</command></term>
|
||||
|
||||
<listitem><para>Set the system
|
||||
keyboard mapping for the console and
|
||||
X11. This takes a mapping name (such
|
||||
as "de" or "us"), and possibly a
|
||||
second one to define a toggle keyboard
|
||||
mapping. Unless
|
||||
<option>--no-convert</option> is
|
||||
passed, the selected setting is also
|
||||
applied as the default system keyboard
|
||||
mapping of X11, after converting it to
|
||||
the closest matching X11 keyboard
|
||||
mapping. Use
|
||||
<command>list-keymaps</command> for a
|
||||
list of available keyboard mappings
|
||||
(see below).</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Set the system keyboard mapping for the
|
||||
console and X11. This takes a mapping name (such as "de" or
|
||||
"us"), and possibly a second one to define a toggle keyboard
|
||||
mapping. Unless <option>--no-convert</option> is passed, the
|
||||
selected setting is also applied as the default system
|
||||
keyboard mapping of X11, after converting it to the closest
|
||||
matching X11 keyboard mapping. Use
|
||||
<command>list-keymaps</command> for a list of available
|
||||
keyboard mappings (see below).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>list-keymaps</command></term>
|
||||
<varlistentry>
|
||||
<term><command>list-keymaps</command></term>
|
||||
|
||||
<listitem><para>List available
|
||||
keyboard mappings for the console,
|
||||
useful for configuration with
|
||||
<command>set-keymap</command>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>List available keyboard mappings for the
|
||||
console, useful for configuration with
|
||||
<command>set-keymap</command>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>set-x11-keymap LAYOUT [MODEL [VARIANT [OPTIONS]]]</command></term>
|
||||
<varlistentry>
|
||||
<term><command>set-x11-keymap LAYOUT [MODEL [VARIANT [OPTIONS]]]</command></term>
|
||||
|
||||
<listitem><para>Set the system default
|
||||
keyboard mapping for X11 and the
|
||||
virtual console. This takes a keyboard
|
||||
mapping name (such as
|
||||
<literal>de</literal> or
|
||||
<literal>us</literal>), and possibly a
|
||||
model, variant, and options, see
|
||||
<citerefentry><refentrytitle>kbd</refentrytitle><manvolnum>4</manvolnum></citerefentry>
|
||||
for details. Unless
|
||||
<option>--no-convert</option> is
|
||||
passed, the selected setting is also
|
||||
applied as the system console keyboard
|
||||
mapping, after converting it to the
|
||||
closest matching console keyboard
|
||||
mapping.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Set the system default keyboard mapping for
|
||||
X11 and the virtual console. This takes a keyboard mapping
|
||||
name (such as <literal>de</literal> or <literal>us</literal>),
|
||||
and possibly a model, variant, and options, see
|
||||
<citerefentry><refentrytitle>kbd</refentrytitle><manvolnum>4</manvolnum></citerefentry>
|
||||
for details. Unless <option>--no-convert</option> is passed,
|
||||
the selected setting is also applied as the system console
|
||||
keyboard mapping, after converting it to the closest matching
|
||||
console keyboard mapping.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>list-x11-keymap-models</command></term>
|
||||
<term><command>list-x11-keymap-layouts</command></term>
|
||||
<term><command>list-x11-keymap-variants [LAYOUT]</command></term>
|
||||
<term><command>list-x11-keymap-options</command></term>
|
||||
<varlistentry>
|
||||
<term><command>list-x11-keymap-models</command></term>
|
||||
<term><command>list-x11-keymap-layouts</command></term>
|
||||
<term><command>list-x11-keymap-variants [LAYOUT]</command></term>
|
||||
<term><command>list-x11-keymap-options</command></term>
|
||||
|
||||
<listitem><para>List available X11
|
||||
keymap models, layouts, variants and
|
||||
options, useful for configuration with
|
||||
<command>set-keymap</command>. The
|
||||
command
|
||||
<command>list-x11-keymap-variants</command>
|
||||
optionally takes a layout parameter to
|
||||
limit the output to the variants
|
||||
suitable for the specific
|
||||
layout.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<listitem><para>List available X11 keymap models, layouts,
|
||||
variants and options, useful for configuration with
|
||||
<command>set-keymap</command>. The command
|
||||
<command>list-x11-keymap-variants</command> optionally takes a
|
||||
layout parameter to limit the output to the variants suitable
|
||||
for the specific layout.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="less-variables.xml" />
|
||||
<xi:include href="less-variables.xml" />
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>locale</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>locale.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loadkeys</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>kbd</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
|
||||
<ulink url="http://www.x.org/releases/current/doc/xorg-docs/input/XKB-Config.html">
|
||||
The XKB Configuration Guide
|
||||
</ulink>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-localed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>locale</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>locale.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loadkeys</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>kbd</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
|
||||
<ulink url="http://www.x.org/releases/current/doc/xorg-docs/input/XKB-Config.html">
|
||||
The XKB Configuration Guide
|
||||
</ulink>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-localed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -24,84 +24,81 @@
|
||||
-->
|
||||
|
||||
<refentry id="localtime">
|
||||
<refentryinfo>
|
||||
<title>localtime</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>localtime</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Shawn</firstname>
|
||||
<surname>Landden</surname>
|
||||
<email>shawnlandden@gmail.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Shawn</firstname>
|
||||
<surname>Landden</surname>
|
||||
<email>shawnlandden@gmail.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>localtime</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>localtime</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>localtime</refname>
|
||||
<refpurpose>Local timezone configuration file</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>localtime</refname>
|
||||
<refpurpose>Local timezone configuration file</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/localtime</filename> -> <filename>../usr/share/zoneinfo/…</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/localtime</filename> -> <filename>../usr/share/zoneinfo/…</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>The <filename>/etc/localtime</filename> file
|
||||
configures the system-wide timezone of the local
|
||||
system that is used by applications for presentation
|
||||
to the user. It should be an absolute or relative
|
||||
symbolic link pointing to
|
||||
<filename>/usr/share/zoneinfo/</filename>, followed by
|
||||
a timezone identifier such as
|
||||
<literal>Europe/Berlin</literal> or
|
||||
<literal>Etc/UTC</literal>. The resulting link should
|
||||
lead to the corresponding binary
|
||||
<citerefentry project='man-pages'><refentrytitle>tzfile</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
timezone data for the configured timezone.</para>
|
||||
<para>The <filename>/etc/localtime</filename> file configures the
|
||||
system-wide timezone of the local system that is used by
|
||||
applications for presentation to the user. It should be an
|
||||
absolute or relative symbolic link pointing to
|
||||
<filename>/usr/share/zoneinfo/</filename>, followed by a timezone
|
||||
identifier such as <literal>Europe/Berlin</literal> or
|
||||
<literal>Etc/UTC</literal>. The resulting link should lead to the
|
||||
corresponding binary
|
||||
<citerefentry project='man-pages'><refentrytitle>tzfile</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
timezone data for the configured timezone.</para>
|
||||
|
||||
<para>Because the timezone identifier is extracted from
|
||||
the symlink target name of
|
||||
<filename>/etc/localtime</filename>, this file may not
|
||||
be a normal file or hardlink.</para>
|
||||
<para>Because the timezone identifier is extracted from the
|
||||
symlink target name of <filename>/etc/localtime</filename>, this
|
||||
file may not be a normal file or hardlink.</para>
|
||||
|
||||
<para>The timezone may be overridden for individual
|
||||
programs by using the TZ environment variable. See
|
||||
<citerefentry project='man-pages'><refentrytitle>environ</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
||||
<para>The timezone may be overridden for individual programs by
|
||||
using the <varname>$TZ</varname> environment variable. See
|
||||
<citerefentry project='man-pages'><refentrytitle>environ</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para>You may use
|
||||
<citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to change the settings of this file from the command
|
||||
line during runtime. Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the time zone on mounted (but not
|
||||
booted) system images.</para>
|
||||
</refsect1>
|
||||
<para>You may use
|
||||
<citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to change the settings of this file from the command line during
|
||||
runtime. Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the time zone on mounted (but not booted) system
|
||||
images.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>tzset</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>localtime</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-timedated.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>tzset</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>localtime</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-timedated.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
871
man/loginctl.xml
871
man/loginctl.xml
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,485 +22,394 @@
|
||||
-->
|
||||
|
||||
<refentry id="loginctl" conditional='ENABLE_LOGIND'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>loginctl</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>loginctl</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>loginctl</refname>
|
||||
<refpurpose>Control the systemd login manager</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>loginctl</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="req">COMMAND</arg>
|
||||
<arg choice="opt" rep="repeat">NAME</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>loginctl</command> may be used to
|
||||
introspect and control the state of the
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
login manager <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--no-ask-password</option></term>
|
||||
|
||||
<listitem><para>Do not query the user
|
||||
for authentication for privileged
|
||||
operations.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
<term><option>--property=</option></term>
|
||||
|
||||
<listitem><para>When showing
|
||||
session/user/seat properties, limit
|
||||
display to certain properties as
|
||||
specified as argument. If not
|
||||
specified, all set properties are
|
||||
shown. The argument should be a
|
||||
property name, such as
|
||||
<literal>Sessions</literal>. If
|
||||
specified more than once, all
|
||||
properties with the specified names
|
||||
are shown.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-a</option></term>
|
||||
<term><option>--all</option></term>
|
||||
|
||||
<listitem><para>When showing
|
||||
session/user/seat properties, show all
|
||||
properties regardless of whether they are
|
||||
set or not.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-l</option></term>
|
||||
<term><option>--full</option></term>
|
||||
|
||||
<listitem><para>Do not ellipsize
|
||||
process tree entries.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--kill-who=</option></term>
|
||||
|
||||
<listitem><para>When used with
|
||||
<command>kill-session</command>,
|
||||
choose which processes to kill. Must
|
||||
be one of <option>leader</option>, or
|
||||
<option>all</option> to select whether
|
||||
to kill only the leader process of the
|
||||
session or all processes of the
|
||||
session. If omitted, defaults to
|
||||
<option>all</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-s</option></term>
|
||||
<term><option>--signal=</option></term>
|
||||
|
||||
<listitem><para>When used with
|
||||
<command>kill-session</command> or
|
||||
<command>kill-user</command>, choose
|
||||
which signal to send to selected
|
||||
processes. Must be one of the well
|
||||
known signal specifiers, such as
|
||||
<constant>SIGTERM</constant>,
|
||||
<constant>SIGINT</constant> or
|
||||
<constant>SIGSTOP</constant>. If
|
||||
omitted, defaults to
|
||||
<constant>SIGTERM</constant>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-n</option></term>
|
||||
<term><option>--lines=</option></term>
|
||||
|
||||
<listitem><para>When used with
|
||||
<command>user-status</command> and
|
||||
<command>session-status</command>,
|
||||
controls the number of journal lines
|
||||
to show, counting from the most recent
|
||||
ones. Takes a positive integer
|
||||
argument. Defaults to 10.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-o</option></term>
|
||||
<term><option>--output=</option></term>
|
||||
|
||||
<listitem><para>When used with
|
||||
<command>user-status</command> and
|
||||
<command>session-status</command>,
|
||||
controls the formatting of the journal
|
||||
entries that are shown. For the
|
||||
available choices, see
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
Defaults to
|
||||
<literal>short</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="user-system-options.xml" xpointer="host" />
|
||||
<xi:include href="user-system-options.xml" xpointer="machine" />
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-legend" />
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Commands</title>
|
||||
|
||||
<para>The following commands are understood:</para>
|
||||
|
||||
<refsect2><title>Session Commands</title><variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>list-sessions</command></term>
|
||||
|
||||
<listitem><para>List current sessions.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>session-status</command> <optional><replaceable>ID</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show terse runtime
|
||||
status information about one or more
|
||||
sessions, followed by the most recent
|
||||
log data from the journal. Takes one
|
||||
or more session identifiers as
|
||||
parameters. If no session identifiers
|
||||
are passed the status of the caller's
|
||||
session is shown. This function is
|
||||
intended to generate human-readable
|
||||
output. If you are looking for
|
||||
computer-parsable output, use
|
||||
<command>show-session</command>
|
||||
instead.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>show-session</command> <optional><replaceable>ID</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show properties of one
|
||||
or more sessions or the manager
|
||||
itself. If no argument is specified,
|
||||
properties of the manager will be
|
||||
shown. If a session ID is specified,
|
||||
properties of the session are shown. By
|
||||
default, empty properties are
|
||||
suppressed. Use <option>--all</option>
|
||||
to show those too. To select specific
|
||||
properties to show, use
|
||||
<option>--property=</option>. This
|
||||
command is intended to be used
|
||||
whenever computer-parsable output is
|
||||
required. Use
|
||||
<command>session-status</command> if
|
||||
you are looking for formatted
|
||||
human-readable
|
||||
output.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>activate</command> <optional><replaceable>ID</replaceable></optional></term>
|
||||
|
||||
<listitem><para>Activate a
|
||||
session. This brings a session into
|
||||
the foreground, if another session is
|
||||
currently in the foreground on the
|
||||
respective seat. Takes a session
|
||||
identifier as argument. If no argument
|
||||
is specified the session of the caller
|
||||
is put into
|
||||
foreground.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>lock-session</command> <optional><replaceable>ID</replaceable>...</optional></term>
|
||||
<term><command>unlock-session</command> <optional><replaceable>ID</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Activates/deactivates
|
||||
the screen lock on one or more
|
||||
sessions, if the session supports
|
||||
it. Takes one or more session
|
||||
identifiers as arguments. If no
|
||||
argument is specified the session of
|
||||
the caller is locked/unlocked.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>lock-sessions</command></term>
|
||||
<term><command>unlock-sessions</command></term>
|
||||
|
||||
<listitem><para>Activates/deactivates
|
||||
the screen lock on all current
|
||||
sessions supporting it.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>terminate-session</command> <replaceable>ID</replaceable>...</term>
|
||||
|
||||
<listitem><para>Terminates a session.
|
||||
This kills all processes of the
|
||||
session and deallocates all resources
|
||||
attached to the session.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>kill-session</command> <replaceable>ID</replaceable>...</term>
|
||||
|
||||
<listitem><para>Send a signal to one
|
||||
or more processes of the session. Use
|
||||
<option>--kill-who=</option> to select
|
||||
which process to kill. Use
|
||||
<option>--signal=</option> to select
|
||||
the signal to send.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist></refsect2>
|
||||
|
||||
<refsect2><title>User Commands</title><variablelist>
|
||||
<varlistentry>
|
||||
<term><command>list-users</command></term>
|
||||
|
||||
<listitem><para>List currently logged
|
||||
in users.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>user-status</command> <optional><replaceable>USER</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show terse runtime
|
||||
status information about one or more
|
||||
logged in users, followed by the most
|
||||
recent log data from the
|
||||
journal. Takes one or more user names
|
||||
or numeric user IDs as parameters. If
|
||||
no parameters are passed the status of
|
||||
the caller's user is shown. This
|
||||
function is intended to generate
|
||||
human-readable output. If you are
|
||||
looking for computer-parsable output,
|
||||
use <command>show-user</command>
|
||||
instead. Users may be specified by
|
||||
their usernames or numeric user IDs.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>show-user</command> <optional><replaceable>USER</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show properties of one
|
||||
or more users or the manager
|
||||
itself. If no argument is specified,
|
||||
properties of the manager will be
|
||||
shown. If a user is specified,
|
||||
properties of the user are shown. By
|
||||
default, empty properties are
|
||||
suppressed. Use <option>--all</option>
|
||||
to show those too. To select specific
|
||||
properties to show, use
|
||||
<option>--property=</option>. This
|
||||
command is intended to be used
|
||||
whenever computer-parsable output is
|
||||
required. Use
|
||||
<command>user-status</command> if
|
||||
you are looking for formatted
|
||||
human-readable
|
||||
output.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>enable-linger</command> <optional><replaceable>USER</replaceable>...</optional></term>
|
||||
<term><command>disable-linger</command> <optional><replaceable>USER</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Enable/disable user
|
||||
lingering for one or more users. If
|
||||
enabled for a specific user, a user
|
||||
manager is spawned for the user at
|
||||
boot and kept around after
|
||||
logouts. This allows users who are not
|
||||
logged in to run long-running
|
||||
services. Takes one or more user names
|
||||
or numeric UIDs as argument. If no
|
||||
argument is specified enables/disables
|
||||
lingering for the user of the session
|
||||
of the caller.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>terminate-user</command> <replaceable>USER</replaceable>...</term>
|
||||
|
||||
<listitem><para>Terminates all
|
||||
sessions of a user. This kills all
|
||||
processes of all sessions of the user
|
||||
and deallocates all runtime resources
|
||||
attached to the user.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>kill-user</command> <replaceable>USER</replaceable>...</term>
|
||||
|
||||
<listitem><para>Send a signal to all
|
||||
processes of a user. Use
|
||||
<option>--signal=</option> to select
|
||||
the signal to send.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist></refsect2>
|
||||
|
||||
<refsect2><title>Seat Commands</title><variablelist>
|
||||
<varlistentry>
|
||||
<term><command>list-seats</command></term>
|
||||
|
||||
<listitem><para>List currently
|
||||
available seats on the local
|
||||
system.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>seat-status</command> <optional><replaceable>NAME</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show terse runtime
|
||||
status information about one or more
|
||||
seats. Takes one or more seat names as
|
||||
parameters. If no seat names are
|
||||
passed the status of the caller's
|
||||
session's seat is shown. This function
|
||||
is intended to generate human-readable
|
||||
output. If you are looking for
|
||||
computer-parsable output, use
|
||||
<command>show-seat</command>
|
||||
instead.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>show-seat</command> <optional><replaceable>NAME</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show properties of one
|
||||
or more seats or the manager
|
||||
itself. If no argument is specified,
|
||||
properties of the manager will be
|
||||
shown. If a seat is specified,
|
||||
properties of the seat are shown. By
|
||||
default, empty properties are
|
||||
suppressed. Use <option>--all</option>
|
||||
to show those too. To select specific
|
||||
properties to show, use
|
||||
<option>--property=</option>. This
|
||||
command is intended to be used
|
||||
whenever computer-parsable output is
|
||||
required. Use
|
||||
<command>seat-status</command> if you
|
||||
are looking for formatted
|
||||
human-readable
|
||||
output.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>attach</command> <replaceable>NAME</replaceable> <replaceable>DEVICE</replaceable>...</term>
|
||||
|
||||
<listitem><para>Persistently attach
|
||||
one or more devices to a seat. The
|
||||
devices should be specified via device
|
||||
paths in the <filename>/sys</filename>
|
||||
file system. To create a new seat,
|
||||
attach at least one graphics card to a
|
||||
previously unused seat name. Seat
|
||||
names may consist only of a-z, A-Z,
|
||||
0-9, <literal>-</literal> and
|
||||
<literal>_</literal> and must be
|
||||
prefixed with <literal>seat</literal>.
|
||||
To drop assignment of a device to a
|
||||
specific seat, just reassign it to a
|
||||
different seat, or use
|
||||
<command>flush-devices</command>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>flush-devices</command></term>
|
||||
|
||||
<listitem><para>Removes all device
|
||||
assignments previously created with
|
||||
<command>attach</command>. After this
|
||||
call, only automatically generated
|
||||
seats will remain, and all seat
|
||||
hardware is assigned to
|
||||
them.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>terminate-seat</command> <replaceable>NAME</replaceable>...</term>
|
||||
|
||||
<listitem><para>Terminates all
|
||||
sessions on a seat. This kills all
|
||||
processes of all sessions on the seat
|
||||
and deallocates all runtime resources
|
||||
attached to them.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist></refsect2>
|
||||
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="less-variables.xml" />
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>loginctl</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>loginctl</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>loginctl</refname>
|
||||
<refpurpose>Control the systemd login manager</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>loginctl</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="req">COMMAND</arg>
|
||||
<arg choice="opt" rep="repeat">NAME</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>loginctl</command> may be used to introspect and
|
||||
control the state of the
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
login manager
|
||||
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--no-ask-password</option></term>
|
||||
|
||||
<listitem><para>Do not query the user for authentication for
|
||||
privileged operations.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
<term><option>--property=</option></term>
|
||||
|
||||
<listitem><para>When showing session/user/seat properties,
|
||||
limit display to certain properties as specified as argument.
|
||||
If not specified, all set properties are shown. The argument
|
||||
should be a property name, such as
|
||||
<literal>Sessions</literal>. If specified more than once, all
|
||||
properties with the specified names are
|
||||
shown.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-a</option></term>
|
||||
<term><option>--all</option></term>
|
||||
|
||||
<listitem><para>When showing session/user/seat properties,
|
||||
show all properties regardless of whether they are set or
|
||||
not.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-l</option></term>
|
||||
<term><option>--full</option></term>
|
||||
|
||||
<listitem><para>Do not ellipsize process tree entries.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--kill-who=</option></term>
|
||||
|
||||
<listitem><para>When used with
|
||||
<command>kill-session</command>, choose which processes to
|
||||
kill. Must be one of <option>leader</option>, or
|
||||
<option>all</option> to select whether to kill only the leader
|
||||
process of the session or all processes of the session. If
|
||||
omitted, defaults to <option>all</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-s</option></term>
|
||||
<term><option>--signal=</option></term>
|
||||
|
||||
<listitem><para>When used with <command>kill-session</command>
|
||||
or <command>kill-user</command>, choose which signal to send
|
||||
to selected processes. Must be one of the well known signal
|
||||
specifiers, such as <constant>SIGTERM</constant>,
|
||||
<constant>SIGINT</constant> or <constant>SIGSTOP</constant>.
|
||||
If omitted, defaults to
|
||||
<constant>SIGTERM</constant>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-n</option></term>
|
||||
<term><option>--lines=</option></term>
|
||||
|
||||
<listitem><para>When used with <command>user-status</command>
|
||||
and <command>session-status</command>, controls the number of
|
||||
journal lines to show, counting from the most recent ones.
|
||||
Takes a positive integer argument. Defaults to 10.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-o</option></term>
|
||||
<term><option>--output=</option></term>
|
||||
|
||||
<listitem><para>When used with <command>user-status</command>
|
||||
and <command>session-status</command>, controls the formatting
|
||||
of the journal entries that are shown. For the available
|
||||
choices, see
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
Defaults to <literal>short</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="user-system-options.xml" xpointer="host" />
|
||||
<xi:include href="user-system-options.xml" xpointer="machine" />
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-legend" />
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Commands</title>
|
||||
|
||||
<para>The following commands are understood:</para>
|
||||
|
||||
<refsect2><title>Session Commands</title><variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>list-sessions</command></term>
|
||||
|
||||
<listitem><para>List current sessions.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>session-status</command> <optional><replaceable>ID</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show terse runtime status information about
|
||||
one or more sessions, followed by the most recent log data
|
||||
from the journal. Takes one or more session identifiers as
|
||||
parameters. If no session identifiers are passed the status of
|
||||
the caller's session is shown. This function is intended to
|
||||
generate human-readable output. If you are looking for
|
||||
computer-parsable output, use <command>show-session</command>
|
||||
instead.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>show-session</command> <optional><replaceable>ID</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show properties of one or more sessions or the
|
||||
manager itself. If no argument is specified, properties of the
|
||||
manager will be shown. If a session ID is specified,
|
||||
properties of the session are shown. By default, empty
|
||||
properties are suppressed. Use <option>--all</option> to show
|
||||
those too. To select specific properties to show, use
|
||||
<option>--property=</option>. This command is intended to be
|
||||
used whenever computer-parsable output is required. Use
|
||||
<command>session-status</command> if you are looking for
|
||||
formatted human-readable output.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>activate</command> <optional><replaceable>ID</replaceable></optional></term>
|
||||
|
||||
<listitem><para>Activate a session. This brings a session into
|
||||
the foreground, if another session is currently in the
|
||||
foreground on the respective seat. Takes a session identifier
|
||||
as argument. If no argument is specified the session of the
|
||||
caller is put into foreground.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>lock-session</command> <optional><replaceable>ID</replaceable>...</optional></term>
|
||||
<term><command>unlock-session</command> <optional><replaceable>ID</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Activates/deactivates the screen lock on one
|
||||
or more sessions, if the session supports it. Takes one or
|
||||
more session identifiers as arguments. If no argument is
|
||||
specified the session of the caller is locked/unlocked.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>lock-sessions</command></term>
|
||||
<term><command>unlock-sessions</command></term>
|
||||
|
||||
<listitem><para>Activates/deactivates the screen lock on all
|
||||
current sessions supporting it. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>terminate-session</command> <replaceable>ID</replaceable>...</term>
|
||||
|
||||
<listitem><para>Terminates a session. This kills all processes
|
||||
of the session and deallocates all resources attached to the
|
||||
session. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>kill-session</command> <replaceable>ID</replaceable>...</term>
|
||||
|
||||
<listitem><para>Send a signal to one or more processes of the
|
||||
session. Use <option>--kill-who=</option> to select which
|
||||
process to kill. Use <option>--signal=</option> to select the
|
||||
signal to send.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist></refsect2>
|
||||
|
||||
<refsect2><title>User Commands</title><variablelist>
|
||||
<varlistentry>
|
||||
<term><command>list-users</command></term>
|
||||
|
||||
<listitem><para>List currently logged in users.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>user-status</command> <optional><replaceable>USER</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show terse runtime status information about
|
||||
one or more logged in users, followed by the most recent log
|
||||
data from the journal. Takes one or more user names or numeric
|
||||
user IDs as parameters. If no parameters are passed the status
|
||||
of the caller's user is shown. This function is intended to
|
||||
generate human-readable output. If you are looking for
|
||||
computer-parsable output, use <command>show-user</command>
|
||||
instead. Users may be specified by their usernames or numeric
|
||||
user IDs. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>show-user</command> <optional><replaceable>USER</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show properties of one or more users or the
|
||||
manager itself. If no argument is specified, properties of the
|
||||
manager will be shown. If a user is specified, properties of
|
||||
the user are shown. By default, empty properties are
|
||||
suppressed. Use <option>--all</option> to show those too. To
|
||||
select specific properties to show, use
|
||||
<option>--property=</option>. This command is intended to be
|
||||
used whenever computer-parsable output is required. Use
|
||||
<command>user-status</command> if you are looking for
|
||||
formatted human-readable output.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>enable-linger</command> <optional><replaceable>USER</replaceable>...</optional></term>
|
||||
<term><command>disable-linger</command> <optional><replaceable>USER</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Enable/disable user lingering for one or more
|
||||
users. If enabled for a specific user, a user manager is
|
||||
spawned for the user at boot and kept around after logouts.
|
||||
This allows users who are not logged in to run long-running
|
||||
services. Takes one or more user names or numeric UIDs as
|
||||
argument. If no argument is specified enables/disables
|
||||
lingering for the user of the session of the caller.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>terminate-user</command> <replaceable>USER</replaceable>...</term>
|
||||
|
||||
<listitem><para>Terminates all sessions of a user. This kills
|
||||
all processes of all sessions of the user and deallocates all
|
||||
runtime resources attached to the user.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>kill-user</command> <replaceable>USER</replaceable>...</term>
|
||||
|
||||
<listitem><para>Send a signal to all processes of a user. Use
|
||||
<option>--signal=</option> to select the signal to send.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist></refsect2>
|
||||
|
||||
<refsect2><title>Seat Commands</title><variablelist>
|
||||
<varlistentry>
|
||||
<term><command>list-seats</command></term>
|
||||
|
||||
<listitem><para>List currently available seats on the local
|
||||
system.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>seat-status</command> <optional><replaceable>NAME</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show terse runtime status information about
|
||||
one or more seats. Takes one or more seat names as parameters.
|
||||
If no seat names are passed the status of the caller's
|
||||
session's seat is shown. This function is intended to generate
|
||||
human-readable output. If you are looking for
|
||||
computer-parsable output, use <command>show-seat</command>
|
||||
instead.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>show-seat</command> <optional><replaceable>NAME</replaceable>...</optional></term>
|
||||
|
||||
<listitem><para>Show properties of one or more seats or the
|
||||
manager itself. If no argument is specified, properties of the
|
||||
manager will be shown. If a seat is specified, properties of
|
||||
the seat are shown. By default, empty properties are
|
||||
suppressed. Use <option>--all</option> to show those too. To
|
||||
select specific properties to show, use
|
||||
<option>--property=</option>. This command is intended to be
|
||||
used whenever computer-parsable output is required. Use
|
||||
<command>seat-status</command> if you are looking for
|
||||
formatted human-readable output.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>attach</command> <replaceable>NAME</replaceable> <replaceable>DEVICE</replaceable>...</term>
|
||||
|
||||
<listitem><para>Persistently attach one or more devices to a
|
||||
seat. The devices should be specified via device paths in the
|
||||
<filename>/sys</filename> file system. To create a new seat,
|
||||
attach at least one graphics card to a previously unused seat
|
||||
name. Seat names may consist only of a-z, A-Z, 0-9,
|
||||
<literal>-</literal> and <literal>_</literal> and must be
|
||||
prefixed with <literal>seat</literal>. To drop assignment of a
|
||||
device to a specific seat, just reassign it to a different
|
||||
seat, or use <command>flush-devices</command>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>flush-devices</command></term>
|
||||
|
||||
<listitem><para>Removes all device assignments previously
|
||||
created with <command>attach</command>. After this call, only
|
||||
automatically generated seats will remain, and all seat
|
||||
hardware is assigned to them.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><command>terminate-seat</command> <replaceable>NAME</replaceable>...</term>
|
||||
|
||||
<listitem><para>Terminates all sessions on a seat. This kills
|
||||
all processes of all sessions on the seat and deallocates all
|
||||
runtime resources attached to them.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist></refsect2>
|
||||
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="less-variables.xml" />
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,344 +23,272 @@
|
||||
-->
|
||||
|
||||
<refentry id="logind.conf" conditional='ENABLE_LOGIND'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<refentryinfo>
|
||||
<title>logind.conf</title>
|
||||
<productname>systemd</productname>
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<refentryinfo>
|
||||
<title>logind.conf</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>logind.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>logind.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>logind.conf</refname>
|
||||
<refname>logind.conf.d</refname>
|
||||
<refpurpose>Login manager configuration files</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>logind.conf</refname>
|
||||
<refname>logind.conf.d</refname>
|
||||
<refpurpose>Login manager configuration files</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/systemd/logind.conf</filename></para>
|
||||
<para><filename>/etc/systemd/logind.conf.d/*.conf</filename></para>
|
||||
<para><filename>/run/systemd/logind.conf.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/systemd/logind.conf.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/systemd/logind.conf</filename></para>
|
||||
<para><filename>/etc/systemd/logind.conf.d/*.conf</filename></para>
|
||||
<para><filename>/run/systemd/logind.conf.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/systemd/logind.conf.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>These files configure various parameters of the systemd login manager, <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
<para>These files configure various parameters of the systemd login manager, <citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="conf" />
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="conf" />
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>All options are configured in the
|
||||
<literal>[Login]</literal> section:</para>
|
||||
<para>All options are configured in the
|
||||
<literal>[Login]</literal> section:</para>
|
||||
|
||||
<variablelist>
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>NAutoVTs=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>NAutoVTs=</varname></term>
|
||||
|
||||
<listitem><para>Takes a positive
|
||||
integer. Configures how many virtual
|
||||
terminals (VTs) to allocate by default
|
||||
that, when switched to and are
|
||||
previously unused,
|
||||
<literal>autovt</literal> services are
|
||||
automatically spawned on. These
|
||||
services are instantiated from the
|
||||
template unit
|
||||
<filename>autovt@.service</filename>
|
||||
for the respective VT TTY name,
|
||||
for example, <filename>autovt@tty4.service</filename>. By
|
||||
default,
|
||||
<filename>autovt@.service</filename>
|
||||
is linked to
|
||||
<filename>getty@.service</filename>.
|
||||
In other words, login prompts are started
|
||||
dynamically as the user switches to
|
||||
unused virtual terminals. Hence, this
|
||||
parameter controls how many login
|
||||
<literal>gettys</literal> are
|
||||
available on the VTs. If a VT is
|
||||
already used by some other subsystem
|
||||
(for example, a graphical login), this
|
||||
kind of activation will not be
|
||||
attempted. Note that the VT configured
|
||||
in <varname>ReserveVT=</varname> is
|
||||
always subject to this kind of
|
||||
activation, even if it is not one of
|
||||
the VTs configured with the
|
||||
<varname>NAutoVTs=</varname>
|
||||
directive. Defaults to 6. When set to
|
||||
0, automatic spawning of
|
||||
<literal>autovt</literal> services is
|
||||
disabled.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a positive integer. Configures how many
|
||||
virtual terminals (VTs) to allocate by default that, when
|
||||
switched to and are previously unused,
|
||||
<literal>autovt</literal> services are automatically spawned
|
||||
on. These services are instantiated from the template unit
|
||||
<filename>autovt@.service</filename> for the respective VT TTY
|
||||
name, for example, <filename>autovt@tty4.service</filename>.
|
||||
By default, <filename>autovt@.service</filename> is linked to
|
||||
<filename>getty@.service</filename>. In other words, login
|
||||
prompts are started dynamically as the user switches to unused
|
||||
virtual terminals. Hence, this parameter controls how many
|
||||
login <literal>gettys</literal> are available on the VTs. If a
|
||||
VT is already used by some other subsystem (for example, a
|
||||
graphical login), this kind of activation will not be
|
||||
attempted. Note that the VT configured in
|
||||
<varname>ReserveVT=</varname> is always subject to this kind
|
||||
of activation, even if it is not one of the VTs configured
|
||||
with the <varname>NAutoVTs=</varname> directive. Defaults to
|
||||
6. When set to 0, automatic spawning of
|
||||
<literal>autovt</literal> services is
|
||||
disabled.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>ReserveVT=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>ReserveVT=</varname></term>
|
||||
|
||||
<listitem><para>Takes a positive
|
||||
integer. Identifies one
|
||||
virtual terminal that shall
|
||||
unconditionally be reserved for
|
||||
<filename>autovt@.service</filename>
|
||||
activation (see above). The VT
|
||||
selected with this option will be
|
||||
marked busy unconditionally, so that no
|
||||
other subsystem will allocate it. This
|
||||
functionality is useful to ensure that,
|
||||
regardless of how many VTs are allocated
|
||||
by other subsystems, one login
|
||||
<literal>getty</literal> is always
|
||||
available. Defaults to 6 (in other
|
||||
words, there will always be a
|
||||
<literal>getty</literal> available on
|
||||
Alt-F6.). When set to 0, VT
|
||||
reservation is
|
||||
disabled.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a positive integer. Identifies one
|
||||
virtual terminal that shall unconditionally be reserved for
|
||||
<filename>autovt@.service</filename> activation (see above).
|
||||
The VT selected with this option will be marked busy
|
||||
unconditionally, so that no other subsystem will allocate it.
|
||||
This functionality is useful to ensure that, regardless of how
|
||||
many VTs are allocated by other subsystems, one login
|
||||
<literal>getty</literal> is always available. Defaults to 6
|
||||
(in other words, there will always be a
|
||||
<literal>getty</literal> available on Alt-F6.). When set to 0,
|
||||
VT reservation is disabled.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>KillUserProcesses=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>KillUserProcesses=</varname></term>
|
||||
|
||||
<listitem><para>Takes a boolean
|
||||
argument. Configures whether the
|
||||
processes of a user should be killed
|
||||
when the user completely logs out (i.e. after
|
||||
the user's last session ended). Defaults to
|
||||
<literal>no</literal>.</para>
|
||||
<listitem><para>Takes a boolean argument. Configures whether
|
||||
the processes of a user should be killed when the user
|
||||
completely logs out (i.e. after the user's last session
|
||||
ended). Defaults to <literal>no</literal>.</para>
|
||||
|
||||
<para>Note that setting
|
||||
<varname>KillUserProcesses=1</varname>
|
||||
will break tools like
|
||||
<citerefentry><refentrytitle>screen</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para></listitem>
|
||||
</varlistentry>
|
||||
<para>Note that setting <varname>KillUserProcesses=1</varname>
|
||||
will break tools like
|
||||
<citerefentry><refentrytitle>screen</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>KillOnlyUsers=</varname></term>
|
||||
<term><varname>KillExcludeUsers=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>KillOnlyUsers=</varname></term>
|
||||
<term><varname>KillExcludeUsers=</varname></term>
|
||||
|
||||
<listitem><para>These settings take
|
||||
space-separated lists of usernames
|
||||
that influence the effect of
|
||||
<varname>KillUserProcesses=</varname>. If
|
||||
not empty, only processes of users
|
||||
listed in
|
||||
<varname>KillOnlyUsers=</varname> will
|
||||
be killed when they log out
|
||||
entirely. Processes of users listed in
|
||||
<varname>KillExcludeUsers=</varname>
|
||||
are excluded from being
|
||||
killed. <varname>KillExcludeUsers=</varname>
|
||||
defaults to <literal>root</literal>
|
||||
and takes precedence over
|
||||
<varname>KillOnlyUsers=</varname>,
|
||||
which defaults to the empty list.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>These settings take space-separated lists of
|
||||
usernames that influence the effect of
|
||||
<varname>KillUserProcesses=</varname>. If not empty, only
|
||||
processes of users listed in <varname>KillOnlyUsers=</varname>
|
||||
will be killed when they log out entirely. Processes of users
|
||||
listed in <varname>KillExcludeUsers=</varname> are excluded
|
||||
from being killed. <varname>KillExcludeUsers=</varname>
|
||||
defaults to <literal>root</literal> and takes precedence over
|
||||
<varname>KillOnlyUsers=</varname>, which defaults to the empty
|
||||
list.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>IdleAction=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>IdleAction=</varname></term>
|
||||
|
||||
<listitem><para>Configures the action
|
||||
to take when the system is idle. Takes
|
||||
one of <literal>ignore</literal>,
|
||||
<literal>poweroff</literal>,
|
||||
<literal>reboot</literal>,
|
||||
<literal>halt</literal>,
|
||||
<literal>kexec</literal>,
|
||||
<literal>suspend</literal>,
|
||||
<literal>hibernate</literal>,
|
||||
<literal>hybrid-sleep</literal>, and
|
||||
<literal>lock</literal>. Defaults to
|
||||
<literal>ignore</literal>.</para>
|
||||
<listitem><para>Configures the action to take when the system
|
||||
is idle. Takes one of
|
||||
<literal>ignore</literal>,
|
||||
<literal>poweroff</literal>,
|
||||
<literal>reboot</literal>,
|
||||
<literal>halt</literal>,
|
||||
<literal>kexec</literal>,
|
||||
<literal>suspend</literal>,
|
||||
<literal>hibernate</literal>,
|
||||
<literal>hybrid-sleep</literal>, and
|
||||
<literal>lock</literal>.
|
||||
Defaults to <literal>ignore</literal>.</para>
|
||||
|
||||
<para>Note that this requires that
|
||||
user sessions correctly report the
|
||||
idle status to the system. The system
|
||||
will execute the action after all
|
||||
sessions report that they are idle,
|
||||
no idle inhibitor lock is active,
|
||||
and subsequently, the time configured
|
||||
with <varname>IdleActionSec=</varname>
|
||||
(see below) has expired.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<para>Note that this requires that user sessions correctly
|
||||
report the idle status to the system. The system will execute
|
||||
the action after all sessions report that they are idle, no
|
||||
idle inhibitor lock is active, and subsequently, the time
|
||||
configured with <varname>IdleActionSec=</varname> (see below)
|
||||
has expired.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>IdleActionSec=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>IdleActionSec=</varname></term>
|
||||
|
||||
<listitem><para>Configures the delay
|
||||
after which the action configured in
|
||||
<varname>IdleAction=</varname> (see
|
||||
above) is taken after the system is
|
||||
idle.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Configures the delay after which the action
|
||||
configured in <varname>IdleAction=</varname> (see above) is
|
||||
taken after the system is idle.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>InhibitDelayMaxSec=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>InhibitDelayMaxSec=</varname></term>
|
||||
|
||||
<listitem><para>Specifies the maximum
|
||||
time a system shutdown or sleep
|
||||
request is delayed due to an inhibitor
|
||||
lock of type <literal>delay</literal>
|
||||
being active before the inhibitor is
|
||||
ignored and the operation executes
|
||||
anyway. Defaults to
|
||||
5.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Specifies the maximum time a system shutdown
|
||||
or sleep request is delayed due to an inhibitor lock of type
|
||||
<literal>delay</literal> being active before the inhibitor is
|
||||
ignored and the operation executes anyway. Defaults to
|
||||
5.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>HandlePowerKey=</varname></term>
|
||||
<term><varname>HandleSuspendKey=</varname></term>
|
||||
<term><varname>HandleHibernateKey=</varname></term>
|
||||
<term><varname>HandleLidSwitch=</varname></term>
|
||||
<term><varname>HandleLidSwitchDocked=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>HandlePowerKey=</varname></term>
|
||||
<term><varname>HandleSuspendKey=</varname></term>
|
||||
<term><varname>HandleHibernateKey=</varname></term>
|
||||
<term><varname>HandleLidSwitch=</varname></term>
|
||||
<term><varname>HandleLidSwitchDocked=</varname></term>
|
||||
|
||||
<listitem><para>Controls whether
|
||||
logind shall handle the system power
|
||||
and sleep keys and the lid switch to
|
||||
trigger actions such as system
|
||||
power-off or suspend. Can be one of
|
||||
<literal>ignore</literal>,
|
||||
<literal>poweroff</literal>,
|
||||
<literal>reboot</literal>,
|
||||
<literal>halt</literal>,
|
||||
<literal>kexec</literal>,
|
||||
<literal>suspend</literal>,
|
||||
<literal>hibernate</literal>,
|
||||
<literal>hybrid-sleep</literal>, and
|
||||
<literal>lock</literal>. If
|
||||
<literal>ignore</literal>, logind will
|
||||
never handle these keys. If
|
||||
<literal>lock</literal>, all running
|
||||
sessions will be screen-locked;
|
||||
otherwise, the specified action will
|
||||
be taken in the respective event. Only
|
||||
input devices with the
|
||||
<literal>power-switch</literal> udev
|
||||
tag will be watched for key/lid switch
|
||||
events. <varname>HandlePowerKey=</varname>
|
||||
defaults to
|
||||
<literal>poweroff</literal>.
|
||||
<varname>HandleSuspendKey=</varname>
|
||||
and
|
||||
<varname>HandleLidSwitch=</varname>
|
||||
default to <literal>suspend</literal>.
|
||||
<varname>HandleLidSwitchDocked=</varname>
|
||||
defaults to <literal>ignore</literal>.
|
||||
<varname>HandleHibernateKey=</varname>
|
||||
defaults to
|
||||
<literal>hibernate</literal>. If the
|
||||
system is inserted in a docking station,
|
||||
or if more than one display is connected,
|
||||
the action specified by
|
||||
<varname>HandleLidSwitchDocked=</varname>
|
||||
occurs; otherwise the
|
||||
<varname>HandleLidSwitch=</varname>
|
||||
action occurs.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Controls whether logind shall handle the
|
||||
system power and sleep keys and the lid switch to trigger
|
||||
actions such as system power-off or suspend. Can be one of
|
||||
<literal>ignore</literal>,
|
||||
<literal>poweroff</literal>,
|
||||
<literal>reboot</literal>,
|
||||
<literal>halt</literal>,
|
||||
<literal>kexec</literal>,
|
||||
<literal>suspend</literal>,
|
||||
<literal>hibernate</literal>,
|
||||
<literal>hybrid-sleep</literal>, and
|
||||
<literal>lock</literal>.
|
||||
If <literal>ignore</literal>, logind will never handle these
|
||||
keys. If <literal>lock</literal>, all running sessions will be
|
||||
screen-locked; otherwise, the specified action will be taken
|
||||
in the respective event. Only input devices with the
|
||||
<literal>power-switch</literal> udev tag will be watched for
|
||||
key/lid switch events. <varname>HandlePowerKey=</varname>
|
||||
defaults to <literal>poweroff</literal>.
|
||||
<varname>HandleSuspendKey=</varname> and
|
||||
<varname>HandleLidSwitch=</varname> default to
|
||||
<literal>suspend</literal>.
|
||||
<varname>HandleLidSwitchDocked=</varname> defaults to
|
||||
<literal>ignore</literal>.
|
||||
<varname>HandleHibernateKey=</varname> defaults to
|
||||
<literal>hibernate</literal>. If the system is inserted in a
|
||||
docking station, or if more than one display is connected, the
|
||||
action specified by <varname>HandleLidSwitchDocked=</varname>
|
||||
occurs; otherwise the <varname>HandleLidSwitch=</varname>
|
||||
action occurs.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>PowerKeyIgnoreInhibited=</varname></term>
|
||||
<term><varname>SuspendKeyIgnoreInhibited=</varname></term>
|
||||
<term><varname>HibernateKeyIgnoreInhibited=</varname></term>
|
||||
<term><varname>LidSwitchIgnoreInhibited=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>PowerKeyIgnoreInhibited=</varname></term>
|
||||
<term><varname>SuspendKeyIgnoreInhibited=</varname></term>
|
||||
<term><varname>HibernateKeyIgnoreInhibited=</varname></term>
|
||||
<term><varname>LidSwitchIgnoreInhibited=</varname></term>
|
||||
|
||||
<listitem><para>Controls whether
|
||||
actions triggered by the power and
|
||||
sleep keys and the lid switch are
|
||||
subject to inhibitor locks. These
|
||||
settings take boolean arguments. If
|
||||
<literal>no</literal>, the inhibitor
|
||||
locks taken by applications in order
|
||||
to block the requested operation are
|
||||
respected. If <literal>yes</literal>,
|
||||
the requested operation is executed in
|
||||
any
|
||||
case. <varname>PowerKeyIgnoreInhibited=</varname>,
|
||||
<varname>SuspendKeyIgnoreInhibited=</varname>
|
||||
and
|
||||
<varname>HibernateKeyIgnoreInhibited=</varname>
|
||||
default to <literal>no</literal>.
|
||||
<varname>LidSwitchIgnoreInhibited=</varname>
|
||||
defaults to
|
||||
<literal>yes</literal>. This means
|
||||
that the lid switch does not respect
|
||||
suspend blockers by default, but the
|
||||
power and sleep keys do.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Controls whether actions triggered by the
|
||||
power and sleep keys and the lid switch are subject to
|
||||
inhibitor locks. These settings take boolean arguments. If
|
||||
<literal>no</literal>, the inhibitor locks taken by
|
||||
applications in order to block the requested operation are
|
||||
respected. If <literal>yes</literal>, the requested operation
|
||||
is executed in any case.
|
||||
<varname>PowerKeyIgnoreInhibited=</varname>,
|
||||
<varname>SuspendKeyIgnoreInhibited=</varname> and
|
||||
<varname>HibernateKeyIgnoreInhibited=</varname> default to
|
||||
<literal>no</literal>.
|
||||
<varname>LidSwitchIgnoreInhibited=</varname> defaults to
|
||||
<literal>yes</literal>. This means that the lid switch does
|
||||
not respect suspend blockers by default, but the power and
|
||||
sleep keys do. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>RuntimeDirectorySize=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>RuntimeDirectorySize=</varname></term>
|
||||
|
||||
<listitem><para>Sets the size limit on
|
||||
the
|
||||
<varname>$XDG_RUNTIME_DIR</varname>
|
||||
runtime directory for each user who
|
||||
logs in. Takes a size in bytes,
|
||||
optionally suffixed with the usual K, G,
|
||||
M, and T suffixes, to the base 1024
|
||||
(IEC). Alternatively, a numerical
|
||||
percentage suffixed by <literal>%</literal>
|
||||
may be specified, which sets the size
|
||||
limit relative to the amount of
|
||||
physical RAM. Defaults to 10%. Note
|
||||
that this size is a safety limit
|
||||
only. As each runtime directory is a
|
||||
tmpfs file system, it will only consume
|
||||
as much memory as is needed.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Sets the size limit on the
|
||||
<varname>$XDG_RUNTIME_DIR</varname> runtime directory for each
|
||||
user who logs in. Takes a size in bytes, optionally suffixed
|
||||
with the usual K, G, M, and T suffixes, to the base 1024
|
||||
(IEC). Alternatively, a numerical percentage suffixed by
|
||||
<literal>%</literal> may be specified, which sets the size
|
||||
limit relative to the amount of physical RAM. Defaults to 10%.
|
||||
Note that this size is a safety limit only. As each runtime
|
||||
directory is a tmpfs file system, it will only consume as much
|
||||
memory as is needed. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>RemoveIPC=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>RemoveIPC=</varname></term>
|
||||
|
||||
<listitem><para>Controls whether
|
||||
System V and POSIX IPC objects
|
||||
belonging to the user shall be removed
|
||||
when the user fully logs out. Takes a
|
||||
boolean argument. If enabled, the user
|
||||
may not consume IPC resources after
|
||||
the last of the user's sessions
|
||||
terminated. This covers System V
|
||||
semaphores, shared memory and message
|
||||
queues, as well as POSIX shared memory
|
||||
and message queues. Note that IPC
|
||||
objects of the root user are excluded
|
||||
from the effect of this
|
||||
setting. Defaults to
|
||||
<literal>yes</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Controls whether System V and POSIX IPC
|
||||
objects belonging to the user shall be removed when the user
|
||||
fully logs out. Takes a boolean argument. If enabled, the user
|
||||
may not consume IPC resources after the last of the user's
|
||||
sessions terminated. This covers System V semaphores, shared
|
||||
memory and message queues, as well as POSIX shared memory and
|
||||
message queues. Note that IPC objects of the root user are
|
||||
excluded from the effect of this setting. Defaults to
|
||||
<literal>yes</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-system.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,127 +23,119 @@
|
||||
-->
|
||||
|
||||
<refentry id="machine-id">
|
||||
<refentryinfo>
|
||||
<title>machine-id</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>machine-id</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>machine-id</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>machine-id</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>machine-id</refname>
|
||||
<refpurpose>Local machine ID configuration file</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>machine-id</refname>
|
||||
<refpurpose>Local machine ID configuration file</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/machine-id</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/machine-id</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>The <filename>/etc/machine-id</filename> file
|
||||
contains the unique machine ID of the local system
|
||||
that is set during installation. The machine ID is a
|
||||
single newline-terminated, hexadecimal, 32-character,
|
||||
lowercase machine ID string. When decoded from
|
||||
hexadecimal, this corresponds with a 16-byte/128-bit
|
||||
string.</para>
|
||||
<para>The <filename>/etc/machine-id</filename> file contains the
|
||||
unique machine ID of the local system that is set during
|
||||
installation. The machine ID is a single newline-terminated,
|
||||
hexadecimal, 32-character, lowercase machine ID string. When
|
||||
decoded from hexadecimal, this corresponds with a 16-byte/128-bit
|
||||
string.</para>
|
||||
|
||||
<para>The machine ID is usually generated from a
|
||||
random source during system installation and stays
|
||||
constant for all subsequent boots. Optionally, for
|
||||
stateless systems, it is generated during runtime at
|
||||
boot if it is found to be empty.</para>
|
||||
<para>The machine ID is usually generated from a random source
|
||||
during system installation and stays constant for all subsequent
|
||||
boots. Optionally, for stateless systems, it is generated during
|
||||
runtime at boot if it is found to be empty.</para>
|
||||
|
||||
<para>The machine ID does not change based on user
|
||||
configuration or when hardware is replaced.</para>
|
||||
<para>The machine ID does not change based on user configuration
|
||||
or when hardware is replaced.</para>
|
||||
|
||||
<para>This machine ID adheres to the same format and
|
||||
logic as the D-Bus machine ID.</para>
|
||||
<para>This machine ID adheres to the same format and logic as the
|
||||
D-Bus machine ID.</para>
|
||||
|
||||
<para>Programs may use this ID to identify the host
|
||||
with a globally unique ID in the network, which does
|
||||
not change even if the local network configuration
|
||||
changes. Due to this and its greater length, it is
|
||||
a more useful replacement for the
|
||||
<citerefentry><refentrytitle>gethostid</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call that POSIX specifies.</para>
|
||||
<para>Programs may use this ID to identify the host with a
|
||||
globally unique ID in the network, which does not change even if
|
||||
the local network configuration changes. Due to this and its
|
||||
greater length, it is a more useful replacement for the
|
||||
<citerefentry><refentrytitle>gethostid</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call that POSIX specifies.</para>
|
||||
|
||||
<para>The
|
||||
<citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
tool may be used by installer tools to initialize the
|
||||
machine ID at install time. Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize it on mounted (but not booted) system
|
||||
images.</para>
|
||||
</refsect1>
|
||||
<para>The
|
||||
<citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
tool may be used by installer tools to initialize the machine ID
|
||||
at install time. Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize it on mounted (but not booted) system images.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Relation to OSF UUIDs</title>
|
||||
<refsect1>
|
||||
<title>Relation to OSF UUIDs</title>
|
||||
|
||||
<para>Note that the machine ID historically is not an
|
||||
OSF UUID as defined by <ulink
|
||||
url="https://tools.ietf.org/html/rfc4122">RFC
|
||||
4122</ulink>, nor a Microsoft GUID; however, starting with
|
||||
systemd v30, newly generated machine IDs do
|
||||
qualify as v4 UUIDs.</para>
|
||||
<para>Note that the machine ID historically is not an OSF UUID as
|
||||
defined by <ulink url="https://tools.ietf.org/html/rfc4122">RFC
|
||||
4122</ulink>, nor a Microsoft GUID; however, starting with systemd
|
||||
v30, newly generated machine IDs do qualify as v4 UUIDs.</para>
|
||||
|
||||
<para>In order to maintain compatibility with existing
|
||||
installations, an application requiring a UUID should
|
||||
decode the machine ID, and then apply the following
|
||||
operations to turn it into a valid OSF v4 UUID. With
|
||||
<literal>id</literal> being an unsigned character
|
||||
array:</para>
|
||||
<para>In order to maintain compatibility with existing
|
||||
installations, an application requiring a UUID should decode the
|
||||
machine ID, and then apply the following operations to turn it
|
||||
into a valid OSF v4 UUID. With <literal>id</literal> being an
|
||||
unsigned character array:</para>
|
||||
|
||||
<programlisting>/* Set UUID version to 4 --- truly random generation */
|
||||
<programlisting>/* Set UUID version to 4 --- truly random generation */
|
||||
id[6] = (id[6] & 0x0F) | 0x40;
|
||||
/* Set the UUID variant to DCE */
|
||||
id[8] = (id[8] & 0x3F) | 0x80;</programlisting>
|
||||
|
||||
<para>(This code is inspired by
|
||||
<literal>generate_random_uuid()</literal> of
|
||||
<filename>drivers/char/random.c</filename> from the
|
||||
Linux kernel sources.)</para>
|
||||
<para>(This code is inspired by
|
||||
<literal>generate_random_uuid()</literal> of
|
||||
<filename>drivers/char/random.c</filename> from the Linux kernel
|
||||
sources.)</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
|
||||
<para>The simple configuration file format of
|
||||
<filename>/etc/machine-id</filename> originates in the
|
||||
<filename>/var/lib/dbus/machine-id</filename> file
|
||||
introduced by D-Bus. In fact, this latter file might be a
|
||||
symlink to
|
||||
<varname>/etc/machine-id</varname>.</para>
|
||||
</refsect1>
|
||||
<para>The simple configuration file format of
|
||||
<filename>/etc/machine-id</filename> originates in the
|
||||
<filename>/var/lib/dbus/machine-id</filename> file introduced by
|
||||
D-Bus. In fact, this latter file might be a symlink to
|
||||
<varname>/etc/machine-id</varname>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>gethostid</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>gethostid</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,188 +23,164 @@
|
||||
-->
|
||||
|
||||
<refentry id="machine-info">
|
||||
<refentryinfo>
|
||||
<title>machine-info</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>machine-info</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>machine-info</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>machine-info</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>machine-info</refname>
|
||||
<refpurpose>Local machine information file</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>machine-info</refname>
|
||||
<refpurpose>Local machine information file</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/machine-info</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/machine-info</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>The <filename>/etc/machine-info</filename> file
|
||||
contains machine metadata.</para>
|
||||
<para>The <filename>/etc/machine-info</filename> file contains
|
||||
machine metadata.</para>
|
||||
|
||||
<para>The basic file format of
|
||||
<filename>machine-info</filename> is a
|
||||
newline-separated list of environment-like
|
||||
shell-compatible variable assignments. It is possible
|
||||
to source the configuration from shell scripts,
|
||||
however, beyond mere variable assignments no shell
|
||||
features are supported, allowing applications to read
|
||||
the file without implementing a shell compatible
|
||||
execution engine.</para>
|
||||
<para>The basic file format of <filename>machine-info</filename>
|
||||
is a newline-separated list of environment-like shell-compatible
|
||||
variable assignments. It is possible to source the configuration
|
||||
from shell scripts, however, beyond mere variable assignments no
|
||||
shell features are supported, allowing applications to read the
|
||||
file without implementing a shell compatible execution
|
||||
engine.</para>
|
||||
|
||||
<para><filename>/etc/machine-info</filename> contains
|
||||
metadata about the machine that is set by the user or
|
||||
administrator.</para>
|
||||
<para><filename>/etc/machine-info</filename> contains metadata
|
||||
about the machine that is set by the user or administrator.</para>
|
||||
|
||||
<para>Depending on the operating system other
|
||||
configuration files might be checked for machine
|
||||
information as well, however only as fallback.</para>
|
||||
<para>Depending on the operating system other configuration files
|
||||
might be checked for machine information as well, however only as
|
||||
fallback.</para>
|
||||
|
||||
<para>You may use
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to change the settings of this file from the command
|
||||
line.</para>
|
||||
</refsect1>
|
||||
<para>You may use
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to change the settings of this file from the command line.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following machine metadata parameters may
|
||||
be set using
|
||||
<filename>/etc/machine-info</filename>:</para>
|
||||
<para>The following machine metadata parameters may be set using
|
||||
<filename>/etc/machine-info</filename>:</para>
|
||||
|
||||
<variablelist>
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>PRETTY_HOSTNAME=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>PRETTY_HOSTNAME=</varname></term>
|
||||
|
||||
<listitem><para>A pretty
|
||||
human-readable UTF-8 machine identifier
|
||||
string. This should contain a name
|
||||
like <literal>Lennart's
|
||||
Laptop</literal> which is useful to
|
||||
present to the user and does not
|
||||
suffer by the syntax limitations of
|
||||
internet domain names. If possible, the
|
||||
internet hostname as configured in
|
||||
<filename>/etc/hostname</filename>
|
||||
should be kept similar to this
|
||||
one. Example: if this value is
|
||||
<literal>Lennart's Computer</literal>
|
||||
an Internet hostname of
|
||||
<literal>lennarts-computer</literal>
|
||||
might be a good choice. If this
|
||||
parameter is not set, an application
|
||||
should fall back to the Internet host
|
||||
name for presentation
|
||||
purposes.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A pretty human-readable UTF-8 machine
|
||||
identifier string. This should contain a name like
|
||||
<literal>Lennart's Laptop</literal> which is useful to present
|
||||
to the user and does not suffer by the syntax limitations of
|
||||
internet domain names. If possible, the internet hostname as
|
||||
configured in <filename>/etc/hostname</filename> should be
|
||||
kept similar to this one. Example: if this value is
|
||||
<literal>Lennart's Computer</literal> an Internet hostname of
|
||||
<literal>lennarts-computer</literal> might be a good choice.
|
||||
If this parameter is not set, an application should fall back
|
||||
to the Internet host name for presentation
|
||||
purposes.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>ICON_NAME=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>ICON_NAME=</varname></term>
|
||||
|
||||
<listitem><para>An icon identifying
|
||||
this machine according to the <ulink
|
||||
url="http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html">XDG
|
||||
Icon Naming Specification</ulink>. If
|
||||
this parameter is not set, an
|
||||
application should fall back to
|
||||
<literal>computer</literal> or a
|
||||
similar icon name.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>An icon identifying this machine according to
|
||||
the <ulink
|
||||
url="http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html">XDG
|
||||
Icon Naming Specification</ulink>. If this parameter is not
|
||||
set, an application should fall back to
|
||||
<literal>computer</literal> or a similar icon
|
||||
name.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>CHASSIS=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>CHASSIS=</varname></term>
|
||||
|
||||
<listitem><para>The chassis
|
||||
type. Currently, the following chassis
|
||||
types are defined:
|
||||
<literal>desktop</literal>,
|
||||
<literal>laptop</literal>,
|
||||
<literal>server</literal>,
|
||||
<literal>tablet</literal>,
|
||||
<literal>handset</literal>,
|
||||
<literal>watch</literal>, and
|
||||
<literal>embedded</literal> as well as
|
||||
the special chassis types
|
||||
<literal>vm</literal> and
|
||||
<literal>container</literal> for
|
||||
virtualized systems that lack an
|
||||
immediate physical chassis. Note that
|
||||
many systems allow detection of the
|
||||
chassis type automatically (based on
|
||||
firmware information or
|
||||
suchlike). This setting (if set) shall
|
||||
take precedence over automatically
|
||||
detected information and is useful to
|
||||
override misdetected configuration or
|
||||
to manually configure the chassis type
|
||||
where automatic detection is not
|
||||
available.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The chassis type. Currently, the following
|
||||
chassis types are defined:
|
||||
<literal>desktop</literal>,
|
||||
<literal>laptop</literal>,
|
||||
<literal>server</literal>,
|
||||
<literal>tablet</literal>,
|
||||
<literal>handset</literal>,
|
||||
<literal>watch</literal>, and
|
||||
<literal>embedded</literal>
|
||||
as well as the special chassis types
|
||||
<literal>vm</literal> and
|
||||
<literal>container</literal> for
|
||||
virtualized systems that lack an immediate physical chassis.
|
||||
Note that many systems allow detection of the chassis type
|
||||
automatically (based on firmware information or suchlike).
|
||||
This setting (if set) shall take precedence over automatically
|
||||
detected information and is useful to override misdetected
|
||||
configuration or to manually configure the chassis type where
|
||||
automatic detection is not available.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>DEPLOYMENT=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>DEPLOYMENT=</varname></term>
|
||||
|
||||
<listitem><para>Describes the system
|
||||
deployment environment. One of the
|
||||
following is suggested:
|
||||
<literal>development</literal>,
|
||||
<literal>integration</literal>,
|
||||
<literal>staging</literal>,
|
||||
<literal>production</literal>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Describes the system deployment environment.
|
||||
One of the following is suggested:
|
||||
<literal>development</literal>,
|
||||
<literal>integration</literal>,
|
||||
<literal>staging</literal>,
|
||||
<literal>production</literal>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>LOCATION=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>LOCATION=</varname></term>
|
||||
|
||||
<listitem><para>Describes the system
|
||||
location if applicable and
|
||||
known. Takes a human-friendly,
|
||||
free-form string. This may be as
|
||||
generic as <literal>Berlin,
|
||||
Germany</literal> or as specific as
|
||||
<literal>Left Rack, 2nd
|
||||
Shelf</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>Describes the system location if applicable
|
||||
and known. Takes a human-friendly, free-form string. This may
|
||||
be as generic as <literal>Berlin, Germany</literal> or as
|
||||
specific as <literal>Left Rack, 2nd Shelf</literal>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
|
||||
<programlisting>PRETTY_HOSTNAME="Lennart's Tablet"
|
||||
<programlisting>PRETTY_HOSTNAME="Lennart's Tablet"
|
||||
ICON_NAME=computer-tablet
|
||||
CHASSIS=tablet
|
||||
DEPLOYMENT=production</programlisting>
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hostnamed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>os-release</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hostnamed.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
1650
man/machinectl.xml
1650
man/machinectl.xml
File diff suppressed because it is too large
Load Diff
@@ -20,83 +20,82 @@
|
||||
along with systemd; If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<refentry id="modules-load.d" conditional='HAVE_KMOD'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>modules-load.d</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>modules-load.d</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>modules-load.d</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>modules-load.d</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>modules-load.d</refname>
|
||||
<refpurpose>Configure kernel modules to load at boot</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>modules-load.d</refname>
|
||||
<refpurpose>Configure kernel modules to load at boot</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/modules-load.d/*.conf</filename></para>
|
||||
<para><filename>/run/modules-load.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/modules-load.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/modules-load.d/*.conf</filename></para>
|
||||
<para><filename>/run/modules-load.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/modules-load.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
reads files from the above directories which contain
|
||||
kernel modules to load during boot in a static list.
|
||||
Each configuration file is named in the style of
|
||||
<filename>/etc/modules-load.d/<replaceable>program</replaceable>.conf</filename>. Note
|
||||
that it is usually a better idea to rely on the
|
||||
automatic module loading by PCI IDs, USB IDs, DMI IDs
|
||||
or similar triggers encoded in the kernel modules
|
||||
themselves instead of static configuration like
|
||||
this. In fact, most modern kernel modules are prepared
|
||||
for automatic loading already.</para>
|
||||
</refsect1>
|
||||
<para><citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
reads files from the above directories which contain kernel
|
||||
modules to load during boot in a static list. Each configuration
|
||||
file is named in the style of
|
||||
<filename>/etc/modules-load.d/<replaceable>program</replaceable>.conf</filename>.
|
||||
Note that it is usually a better idea to rely on the automatic
|
||||
module loading by PCI IDs, USB IDs, DMI IDs or similar triggers
|
||||
encoded in the kernel modules themselves instead of static
|
||||
configuration like this. In fact, most modern kernel modules are
|
||||
prepared for automatic loading already.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Configuration Format</title>
|
||||
<refsect1>
|
||||
<title>Configuration Format</title>
|
||||
|
||||
<para>The configuration files should simply contain a
|
||||
list of kernel module names to load, separated by
|
||||
newlines. Empty lines and lines whose first
|
||||
non-whitespace character is # or ; are ignored.</para>
|
||||
</refsect1>
|
||||
<para>The configuration files should simply contain a list of
|
||||
kernel module names to load, separated by newlines. Empty lines
|
||||
and lines whose first non-whitespace character is # or ; are
|
||||
ignored.</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<example>
|
||||
<title>/etc/modules-load.d/virtio-net.conf example:</title>
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<example>
|
||||
<title>/etc/modules-load.d/virtio-net.conf example:</title>
|
||||
|
||||
<programlisting># Load virtio-net.ko at boot
|
||||
<programlisting># Load virtio-net.ko at boot
|
||||
virtio-net</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
</example>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-modules-load.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -24,140 +24,129 @@
|
||||
|
||||
<refentry id="nss-myhostname" conditional='HAVE_MYHOSTNAME'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>nss-myhostname</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>nss-myhostname</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>nss-myhostname</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>nss-myhostname</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>nss-myhostname</refname>
|
||||
<refname>libnss_myhostname.so.2</refname>
|
||||
<refpurpose>Provide hostname resolution for the locally
|
||||
configured system hostname.</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>nss-myhostname</refname>
|
||||
<refname>libnss_myhostname.so.2</refname>
|
||||
<refpurpose>Provide hostname resolution for the locally
|
||||
configured system hostname.</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>libnss_myhostname.so.2</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>libnss_myhostname.so.2</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>nss-myhostname</command> is a plugin
|
||||
for the GNU Name Service Switch (NSS) functionality of
|
||||
the GNU C Library (<command>glibc</command>) primarily
|
||||
providing hostname resolution for the locally
|
||||
configured system hostname as returned by
|
||||
<citerefentry><refentrytitle>gethostname</refentrytitle><manvolnum>2</manvolnum></citerefentry>. The
|
||||
precise hostnames resolved by this module are:</para>
|
||||
<para><command>nss-myhostname</command> is a plugin for the GNU
|
||||
Name Service Switch (NSS) functionality of the GNU C Library
|
||||
(<command>glibc</command>) primarily providing hostname resolution
|
||||
for the locally configured system hostname as returned by
|
||||
<citerefentry><refentrytitle>gethostname</refentrytitle><manvolnum>2</manvolnum></citerefentry>.
|
||||
The precise hostnames resolved by this module are:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>The local, configured hostname
|
||||
is resolved to all locally configured IP
|
||||
addresses ordered by their scope, or -- if
|
||||
none are configured -- the IPv4 address
|
||||
127.0.0.2 (which is on the local loopback) and
|
||||
the IPv6 address ::1 (which is the local
|
||||
host).</para></listitem>
|
||||
<itemizedlist>
|
||||
<listitem><para>The local, configured hostname is resolved to
|
||||
all locally configured IP addresses ordered by their scope, or
|
||||
— if none are configured — the IPv4 address 127.0.0.2 (which
|
||||
is on the local loopback) and the IPv6 address ::1 (which is the
|
||||
local host).</para></listitem>
|
||||
|
||||
<listitem><para>The hostname
|
||||
<literal>localhost</literal> is resolved to
|
||||
the IP addresses 127.0.0.1 and
|
||||
::1.</para></listitem>
|
||||
<listitem><para>The hostname <literal>localhost</literal> is
|
||||
resolved to the IP addresses 127.0.0.1 and
|
||||
::1.</para></listitem>
|
||||
|
||||
<listitem><para>The hostname
|
||||
<literal>gateway</literal> is resolved to all
|
||||
current default routing gateway addresses,
|
||||
ordered by their metric. This assigns a stable
|
||||
hostname to the current gateway, useful for
|
||||
referencing it independently of the current
|
||||
network configuration state.</para></listitem>
|
||||
<listitem><para>The hostname <literal>gateway</literal> is
|
||||
resolved to all current default routing gateway addresses,
|
||||
ordered by their metric. This assigns a stable hostname to the
|
||||
current gateway, useful for referencing it independently of the
|
||||
current network configuration state.</para></listitem>
|
||||
|
||||
</itemizedlist>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Various software relies on an always-resolvable
|
||||
local hostname. When using dynamic hostnames, this is
|
||||
traditionally achieved by patching
|
||||
<filename>/etc/hosts</filename> at the same time as
|
||||
changing the hostname. This is problematic since it
|
||||
requires a writable <filename>/etc</filename> file
|
||||
system and is fragile because the file might be edited
|
||||
by the administrator at the same time. With
|
||||
<command>nss-myhostname</command> enabled changing
|
||||
<filename>/etc/hosts</filename> is unncessary, and on
|
||||
many systems the file becomes entirely optional.</para>
|
||||
<para>Various software relies on an always-resolvable local
|
||||
hostname. When using dynamic hostnames, this is traditionally
|
||||
achieved by patching <filename>/etc/hosts</filename> at the same
|
||||
time as changing the hostname. This is problematic since it
|
||||
requires a writable <filename>/etc</filename> file system and is
|
||||
fragile because the file might be edited by the administrator at
|
||||
the same time. With <command>nss-myhostname</command> enabled
|
||||
changing <filename>/etc/hosts</filename> is unncessary, and on
|
||||
many systems the file becomes entirely optional.</para>
|
||||
|
||||
<para>To activate the NSS modules,
|
||||
<literal>myhostname</literal> has to be added to the
|
||||
line starting with <literal>hosts:</literal> in
|
||||
<filename>/etc/nsswitch.conf</filename>.</para>
|
||||
<para>To activate the NSS modules, <literal>myhostname</literal>
|
||||
has to be added to the line starting with
|
||||
<literal>hosts:</literal> in
|
||||
<filename>/etc/nsswitch.conf</filename>.</para>
|
||||
|
||||
<para>It is recommended to place
|
||||
<literal>myhostname</literal> last in the
|
||||
<filename>nsswitch.conf</filename> line to make sure
|
||||
that this mapping is only used as fallback, and any
|
||||
DNS or <filename>/etc/hosts</filename> based mapping
|
||||
takes precedence.</para>
|
||||
</refsect1>
|
||||
<para>It is recommended to place <literal>myhostname</literal>
|
||||
last in the <filename>nsswitch.conf</filename> line to make sure
|
||||
that this mapping is only used as fallback, and any DNS or
|
||||
<filename>/etc/hosts</filename> based mapping takes
|
||||
precedence.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
|
||||
<para>Here's an example
|
||||
<filename>/etc/nsswitch.conf</filename> file, that
|
||||
enables <command>myhostname</command>
|
||||
correctly:</para>
|
||||
<para>Here's an example <filename>/etc/nsswitch.conf</filename>
|
||||
file, that enables <command>myhostname</command> correctly:</para>
|
||||
|
||||
<programlisting>passwd: compat
|
||||
group: compat
|
||||
shadow: compat
|
||||
<programlisting>passwd: compat
|
||||
group: compat
|
||||
shadow: compat
|
||||
|
||||
hosts: files dns mymachines <command>myhostname</command>
|
||||
hosts: files dns mymachines <command>myhostname</command>
|
||||
networks: files
|
||||
|
||||
protocols: db files
|
||||
services: db files
|
||||
ethers: db files
|
||||
rpc: db files
|
||||
ethers: db files
|
||||
rpc: db files
|
||||
|
||||
netgroup: nis</programlisting>
|
||||
|
||||
<para>To test, use <command>glibc</command>'s <command>getent</command> tool:</para>
|
||||
<para>To test, use <command>glibc</command>'s <command>getent</command> tool:</para>
|
||||
|
||||
<programlisting>$ getent ahosts `hostname`
|
||||
::1 STREAM omega
|
||||
::1 DGRAM
|
||||
::1 RAW
|
||||
<programlisting>$ getent ahosts `hostname`
|
||||
::1 STREAM omega
|
||||
::1 DGRAM
|
||||
::1 RAW
|
||||
127.0.0.2 STREAM
|
||||
127.0.0.2 DGRAM
|
||||
127.0.0.2 RAW</programlisting>
|
||||
|
||||
<para>In this case the local hostname is <varname>omega</varname>.</para>
|
||||
<para>In this case the local hostname is <varname>omega</varname>.</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>nss-mymachines</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>nsswitch.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>getent</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>nss-mymachines</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>nsswitch.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>getent</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,94 +23,90 @@
|
||||
|
||||
<refentry id="nss-mymachines" conditional='ENABLE_MACHINED'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>nss-mymachines</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>nss-mymachines</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>nss-mymachines</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>nss-mymachines</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>nss-mymachines</refname>
|
||||
<refname>libnss_mymachines.so.2</refname>
|
||||
<refpurpose>Provide hostname resolution for local
|
||||
container instances.</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>nss-mymachines</refname>
|
||||
<refname>libnss_mymachines.so.2</refname>
|
||||
<refpurpose>Provide hostname resolution for local
|
||||
container instances.</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>libnss_mymachines.so.2</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>libnss_mymachines.so.2</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>nss-mymachines</command> is a plugin
|
||||
for the GNU Name Service Switch (NSS) functionality of
|
||||
the GNU C Library (<command>glibc</command>) providing
|
||||
hostname resolution for containers running locally,
|
||||
that are registered with
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>. The
|
||||
container names are resolved to IP addresses of the
|
||||
specific container, ordered by their scope.</para>
|
||||
<para><command>nss-mymachines</command> is a plugin for the GNU
|
||||
Name Service Switch (NSS) functionality of the GNU C Library
|
||||
(<command>glibc</command>) providing hostname resolution for
|
||||
containers running locally, that are registered with
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
|
||||
The container names are resolved to IP addresses of the specific
|
||||
container, ordered by their scope.</para>
|
||||
|
||||
<para>To activate the NSS modules,
|
||||
<literal>mymachines</literal> has to be added to the
|
||||
line starting with <literal>hosts:</literal> in
|
||||
<filename>/etc/nsswitch.conf</filename>.</para>
|
||||
<para>To activate the NSS modules, <literal>mymachines</literal>
|
||||
has to be added to the line starting with
|
||||
<literal>hosts:</literal> in
|
||||
<filename>/etc/nsswitch.conf</filename>.</para>
|
||||
|
||||
<para>It is recommended to place
|
||||
<literal>mymachines</literal> near the end of the
|
||||
<filename>nsswitch.conf</filename> line to make sure
|
||||
that this mapping is only used as fallback, and any
|
||||
DNS or <filename>/etc/hosts</filename> based mapping
|
||||
takes precedence.</para>
|
||||
</refsect1>
|
||||
<para>It is recommended to place <literal>mymachines</literal>
|
||||
near the end of the <filename>nsswitch.conf</filename> line to
|
||||
make sure that this mapping is only used as fallback, and any DNS
|
||||
or <filename>/etc/hosts</filename> based mapping takes
|
||||
precedence.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
|
||||
<para>Here's an example
|
||||
<filename>/etc/nsswitch.conf</filename> file, that
|
||||
enables <command>mymachines</command>
|
||||
correctly:</para>
|
||||
<para>Here's an example <filename>/etc/nsswitch.conf</filename>
|
||||
file, that enables <command>mymachines</command> correctly:</para>
|
||||
|
||||
<programlisting>passwd: compat
|
||||
group: compat
|
||||
shadow: compat
|
||||
<programlisting>passwd: compat
|
||||
group: compat
|
||||
shadow: compat
|
||||
|
||||
hosts: files dns <command>mymachines</command> myhostname
|
||||
hosts: files dns <command>mymachines</command> myhostname
|
||||
networks: files
|
||||
|
||||
protocols: db files
|
||||
services: db files
|
||||
ethers: db files
|
||||
rpc: db files
|
||||
ethers: db files
|
||||
rpc: db files
|
||||
|
||||
netgroup: nis</programlisting>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>nss-myhostname</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>nsswitch.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>getent</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>nss-myhostname</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>nsswitch.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>getent</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,359 +23,286 @@
|
||||
-->
|
||||
|
||||
<refentry id="os-release">
|
||||
<refentryinfo>
|
||||
<title>os-release</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>os-release</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>os-release</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>os-release</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>os-release</refname>
|
||||
<refpurpose>Operating system identification</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>os-release</refname>
|
||||
<refpurpose>Operating system identification</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/os-release</filename></para>
|
||||
<para><filename>/usr/lib/os-release</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/os-release</filename></para>
|
||||
<para><filename>/usr/lib/os-release</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>The <filename>/etc/os-release</filename> and
|
||||
<filename>/usr/lib/os-release</filename> files contain
|
||||
operating system identification data.</para>
|
||||
<para>The <filename>/etc/os-release</filename> and
|
||||
<filename>/usr/lib/os-release</filename> files contain operating
|
||||
system identification data.</para>
|
||||
|
||||
<para>The basic file format of
|
||||
<filename>os-release</filename> is a newline-separated
|
||||
list of environment-like shell-compatible variable
|
||||
assignments. It is possible to source the
|
||||
configuration from shell scripts, however, beyond mere
|
||||
variable assignments, no shell features are supported
|
||||
(this means variable expansion is explicitly not
|
||||
supported), allowing applications to read the file
|
||||
without implementing a shell compatible execution
|
||||
engine. Variable assignment values must be enclosed in
|
||||
double or single quotes if they include spaces,
|
||||
semicolons or other special characters outside of A-Z,
|
||||
a-z, 0-9. Shell special characters ("$", quotes,
|
||||
backslash, backtick) must be escaped with backslashes,
|
||||
following shell style. All strings should be in UTF-8
|
||||
format, and non-printable characters should not be used.
|
||||
It is not supported to concatenate multiple individually
|
||||
quoted strings. Lines beginning with "#" shall be
|
||||
ignored as comments.</para>
|
||||
<para>The basic file format of <filename>os-release</filename> is
|
||||
a newline-separated list of environment-like shell-compatible
|
||||
variable assignments. It is possible to source the configuration
|
||||
from shell scripts, however, beyond mere variable assignments, no
|
||||
shell features are supported (this means variable expansion is
|
||||
explicitly not supported), allowing applications to read the file
|
||||
without implementing a shell compatible execution engine. Variable
|
||||
assignment values must be enclosed in double or single quotes if
|
||||
they include spaces, semicolons or other special characters
|
||||
outside of A-Z, a-z, 0-9. Shell special characters ("$", quotes,
|
||||
backslash, backtick) must be escaped with backslashes, following
|
||||
shell style. All strings should be in UTF-8 format, and
|
||||
non-printable characters should not be used. It is not supported
|
||||
to concatenate multiple individually quoted strings. Lines
|
||||
beginning with "#" shall be ignored as comments.</para>
|
||||
|
||||
<para>The file <filename>/etc/os-release</filename>
|
||||
takes precedence over
|
||||
<filename>/usr/lib/os-release</filename>. Applications
|
||||
should check for the former, and exclusively use its
|
||||
data if it exists, and only fall back to
|
||||
<filename>/usr/lib/os-release</filename> if it is
|
||||
missing. Applications should not read data from both
|
||||
files at the same
|
||||
time. <filename>/usr/lib/os-release</filename> is the
|
||||
recommended place to store OS release information as
|
||||
part of vendor trees.
|
||||
<filename>/etc/os-release</filename> should be a
|
||||
relative symlink to
|
||||
<filename>/usr/lib/os-release</filename>,
|
||||
to provide compatibility with applications only
|
||||
looking at <filename>/etc</filename>. A relative
|
||||
symlink instead of an absolute symlink is
|
||||
necessary to avoid breaking the link in a chroot or
|
||||
initrd environment such as dracut.</para>
|
||||
<para>The file <filename>/etc/os-release</filename> takes
|
||||
precedence over <filename>/usr/lib/os-release</filename>.
|
||||
Applications should check for the former, and exclusively use its
|
||||
data if it exists, and only fall back to
|
||||
<filename>/usr/lib/os-release</filename> if it is missing.
|
||||
Applications should not read data from both files at the same
|
||||
time. <filename>/usr/lib/os-release</filename> is the recommended
|
||||
place to store OS release information as part of vendor trees.
|
||||
<filename>/etc/os-release</filename> should be a relative symlink
|
||||
to <filename>/usr/lib/os-release</filename>, to provide
|
||||
compatibility with applications only looking at
|
||||
<filename>/etc</filename>. A relative symlink instead of an
|
||||
absolute symlink is necessary to avoid breaking the link in a
|
||||
chroot or initrd environment such as dracut.</para>
|
||||
|
||||
<para><filename>os-release</filename> contains data
|
||||
that is defined by the operating system vendor and
|
||||
should generally not be changed by the
|
||||
administrator.</para>
|
||||
<para><filename>os-release</filename> contains data that is
|
||||
defined by the operating system vendor and should generally not be
|
||||
changed by the administrator.</para>
|
||||
|
||||
<para>As this file only encodes names and identifiers
|
||||
it should not be localized.</para>
|
||||
<para>As this file only encodes names and identifiers it should
|
||||
not be localized.</para>
|
||||
|
||||
<para>The <filename>/etc/os-release</filename> and
|
||||
<filename>/usr/lib/os-release</filename> files might
|
||||
be symlinks to other files, but it is important that
|
||||
the file is available from earliest boot on, and hence
|
||||
must be located on the root file system.</para>
|
||||
<para>The <filename>/etc/os-release</filename> and
|
||||
<filename>/usr/lib/os-release</filename> files might be symlinks
|
||||
to other files, but it is important that the file is available
|
||||
from earliest boot on, and hence must be located on the root file
|
||||
system.</para>
|
||||
|
||||
<para>For a longer rationale for
|
||||
<filename>os-release</filename> please refer to
|
||||
the <ulink
|
||||
url="http://0pointer.de/blog/projects/os-release">Announcement of <filename>/etc/os-release</filename></ulink>.</para>
|
||||
</refsect1>
|
||||
<para>For a longer rationale for <filename>os-release</filename>
|
||||
please refer to the <ulink
|
||||
url="http://0pointer.de/blog/projects/os-release">Announcement of
|
||||
<filename>/etc/os-release</filename></ulink>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following OS identifications parameters may be set using
|
||||
<filename>os-release</filename>:</para>
|
||||
<para>The following OS identifications parameters may be set using
|
||||
<filename>os-release</filename>:</para>
|
||||
|
||||
<variablelist>
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>NAME=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>NAME=</varname></term>
|
||||
|
||||
<listitem><para>A string identifying
|
||||
the operating system, without a
|
||||
version component, and suitable for
|
||||
presentation to the user. If not set,
|
||||
defaults to
|
||||
<literal>NAME=Linux</literal>. Example:
|
||||
<literal>NAME=Fedora</literal> or
|
||||
<literal>NAME="Debian
|
||||
GNU/Linux"</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A string identifying the operating system,
|
||||
without a version component, and suitable for presentation to
|
||||
the user. If not set, defaults to
|
||||
<literal>NAME=Linux</literal>. Example:
|
||||
<literal>NAME=Fedora</literal> or <literal>NAME="Debian
|
||||
GNU/Linux"</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>VERSION=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>VERSION=</varname></term>
|
||||
|
||||
<listitem><para>A string identifying
|
||||
the operating system version,
|
||||
excluding any OS name information,
|
||||
possibly including a release code
|
||||
name, and suitable for presentation to
|
||||
the user. This field is
|
||||
optional. Example:
|
||||
<literal>VERSION=17</literal> or
|
||||
<literal>VERSION="17 (Beefy
|
||||
Miracle)"</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A string identifying the operating system
|
||||
version, excluding any OS name information, possibly including
|
||||
a release code name, and suitable for presentation to the
|
||||
user. This field is optional. Example:
|
||||
<literal>VERSION=17</literal> or <literal>VERSION="17 (Beefy
|
||||
Miracle)"</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>ID=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>ID=</varname></term>
|
||||
|
||||
<listitem><para>A lower-case string
|
||||
(no spaces or other characters outside
|
||||
of 0-9, a-z, ".", "_" and "-")
|
||||
identifying the operating system,
|
||||
excluding any version information and
|
||||
suitable for processing by scripts or
|
||||
usage in generated filenames. If not
|
||||
set, defaults to
|
||||
<literal>ID=linux</literal>. Example:
|
||||
<literal>ID=fedora</literal> or
|
||||
<literal>ID=debian</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A lower-case string (no spaces or other
|
||||
characters outside of 0-9, a-z, ".", "_" and "-") identifying
|
||||
the operating system, excluding any version information and
|
||||
suitable for processing by scripts or usage in generated
|
||||
filenames. If not set, defaults to
|
||||
<literal>ID=linux</literal>. Example:
|
||||
<literal>ID=fedora</literal> or
|
||||
<literal>ID=debian</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>ID_LIKE=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>ID_LIKE=</varname></term>
|
||||
|
||||
<listitem><para>A space-separated list
|
||||
of operating system identifiers in the
|
||||
same syntax as the
|
||||
<varname>ID=</varname> setting. It should
|
||||
list identifiers of operating systems
|
||||
that are closely related to the local
|
||||
operating system in regards to
|
||||
packaging and programming interfaces,
|
||||
for example listing one or more
|
||||
OS identifiers the local
|
||||
OS is a derivative from. An
|
||||
OS should generally only list other OS
|
||||
identifiers it itself is a derivative
|
||||
of, and not any OSes that
|
||||
are derived from it, though symmetric
|
||||
relationships are possible. Build
|
||||
scripts and similar should check this
|
||||
variable if they need to identify the
|
||||
local operating system and the value
|
||||
of <varname>ID=</varname> is not
|
||||
recognized. Operating systems should
|
||||
be listed in order of how closely the
|
||||
local operating system relates to the
|
||||
listed ones, starting with the
|
||||
closest. This field is
|
||||
optional. Example: for an operating
|
||||
system with
|
||||
<literal>ID=centos</literal>, an
|
||||
assignment of <literal>ID_LIKE="rhel
|
||||
fedora"</literal> would be
|
||||
appropriate. For an operating system
|
||||
with <literal>ID=ubuntu</literal>, an
|
||||
assignment of
|
||||
<literal>ID_LIKE=debian</literal> is
|
||||
appropriate.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A space-separated list of operating system
|
||||
identifiers in the same syntax as the <varname>ID=</varname>
|
||||
setting. It should list identifiers of operating systems that
|
||||
are closely related to the local operating system in regards
|
||||
to packaging and programming interfaces, for example listing
|
||||
one or more OS identifiers the local OS is a derivative from.
|
||||
An OS should generally only list other OS identifiers it
|
||||
itself is a derivative of, and not any OSes that are derived
|
||||
from it, though symmetric relationships are possible. Build
|
||||
scripts and similar should check this variable if they need to
|
||||
identify the local operating system and the value of
|
||||
<varname>ID=</varname> is not recognized. Operating systems
|
||||
should be listed in order of how closely the local operating
|
||||
system relates to the listed ones, starting with the closest.
|
||||
This field is optional. Example: for an operating system with
|
||||
<literal>ID=centos</literal>, an assignment of
|
||||
<literal>ID_LIKE="rhel fedora"</literal> would be appropriate.
|
||||
For an operating system with <literal>ID=ubuntu</literal>, an
|
||||
assignment of <literal>ID_LIKE=debian</literal> is
|
||||
appropriate.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>VERSION_ID=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>VERSION_ID=</varname></term>
|
||||
|
||||
<listitem><para>A lower-case string
|
||||
(mostly numeric, no spaces or other
|
||||
characters outside of 0-9, a-z, ".",
|
||||
"_" and "-") identifying the operating
|
||||
system version, excluding any OS name
|
||||
information or release code name, and
|
||||
suitable for processing by scripts or
|
||||
usage in generated filenames. This
|
||||
field is optional. Example:
|
||||
<literal>VERSION_ID=17</literal> or
|
||||
<literal>VERSION_ID=11.04</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A lower-case string (mostly numeric, no spaces
|
||||
or other characters outside of 0-9, a-z, ".", "_" and "-")
|
||||
identifying the operating system version, excluding any OS
|
||||
name information or release code name, and suitable for
|
||||
processing by scripts or usage in generated filenames. This
|
||||
field is optional. Example: <literal>VERSION_ID=17</literal>
|
||||
or <literal>VERSION_ID=11.04</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>PRETTY_NAME=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>PRETTY_NAME=</varname></term>
|
||||
|
||||
<listitem><para>A pretty operating
|
||||
system name in a format suitable for
|
||||
presentation to the user. May or may
|
||||
not contain a release code name or OS
|
||||
version of some kind, as suitable. If
|
||||
not set, defaults to
|
||||
<literal>PRETTY_NAME="Linux"</literal>. Example:
|
||||
<literal>PRETTY_NAME="Fedora 17 (Beefy
|
||||
Miracle)"</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A pretty operating system name in a format
|
||||
suitable for presentation to the user. May or may not contain
|
||||
a release code name or OS version of some kind, as suitable.
|
||||
If not set, defaults to
|
||||
<literal>PRETTY_NAME="Linux"</literal>. Example:
|
||||
<literal>PRETTY_NAME="Fedora 17 (Beefy
|
||||
Miracle)"</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>ANSI_COLOR=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>ANSI_COLOR=</varname></term>
|
||||
|
||||
<listitem><para>A suggested
|
||||
presentation color when showing the
|
||||
OS name on the console. This
|
||||
should be specified as string suitable
|
||||
for inclusion in the ESC [ m
|
||||
ANSI/ECMA-48 escape code for setting
|
||||
graphical rendition. This field is
|
||||
optional. Example:
|
||||
<literal>ANSI_COLOR="0;31"</literal>
|
||||
for red, or
|
||||
<literal>ANSI_COLOR="1;34"</literal>
|
||||
for light blue.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A suggested presentation color when showing
|
||||
the OS name on the console. This should be specified as string
|
||||
suitable for inclusion in the ESC [ m ANSI/ECMA-48 escape code
|
||||
for setting graphical rendition. This field is optional.
|
||||
Example: <literal>ANSI_COLOR="0;31"</literal> for red, or
|
||||
<literal>ANSI_COLOR="1;34"</literal> for light
|
||||
blue.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>CPE_NAME=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>CPE_NAME=</varname></term>
|
||||
|
||||
<listitem><para>A CPE name for the
|
||||
operating system, following the <ulink
|
||||
url="https://cpe.mitre.org/specification/">Common
|
||||
Platform Enumeration
|
||||
Specification</ulink> as proposed by
|
||||
the MITRE Corporation. This field
|
||||
is optional. Example:
|
||||
<literal>CPE_NAME="cpe:/o:fedoraproject:fedora:17"</literal>
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A CPE name for the operating system, following
|
||||
the <ulink url="https://cpe.mitre.org/specification/">Common
|
||||
Platform Enumeration Specification</ulink> as proposed by the
|
||||
MITRE Corporation. This field is optional. Example:
|
||||
<literal>CPE_NAME="cpe:/o:fedoraproject:fedora:17"</literal>
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>HOME_URL=</varname></term>
|
||||
<term><varname>SUPPORT_URL=</varname></term>
|
||||
<term><varname>BUG_REPORT_URL=</varname></term>
|
||||
<term><varname>PRIVACY_POLICY_URL=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>HOME_URL=</varname></term>
|
||||
<term><varname>SUPPORT_URL=</varname></term>
|
||||
<term><varname>BUG_REPORT_URL=</varname></term>
|
||||
<term><varname>PRIVACY_POLICY_URL=</varname></term>
|
||||
|
||||
<listitem><para>Links to resources on
|
||||
the Internet related the operating
|
||||
system. <varname>HOME_URL=</varname>
|
||||
should refer to the homepage of the
|
||||
operating system, or alternatively
|
||||
some homepage of the specific version
|
||||
of the operating
|
||||
system. <varname>SUPPORT_URL=</varname>
|
||||
should refer to the main support page
|
||||
for the operating system, if there is
|
||||
any. This is primarily intended for
|
||||
operating systems which vendors
|
||||
provide support
|
||||
for. <varname>BUG_REPORT_URL=</varname>
|
||||
should refer to the main bug reporting
|
||||
page for the operating system, if
|
||||
there is any. This is primarily
|
||||
intended for operating systems that
|
||||
rely on community QA.
|
||||
<varname>PRIVACY_POLICY_URL=</varname>
|
||||
should refer to the main privacy policy
|
||||
page for the operation system, if there
|
||||
is any. These settings
|
||||
are optional, and providing only some
|
||||
of these settings is common. These
|
||||
URLs are intended to be exposed in
|
||||
"About this system" UIs behind links
|
||||
with captions such as "About this
|
||||
Operating System", "Obtain Support",
|
||||
"Report a Bug", or "Privacy Policy". The
|
||||
values should be in <ulink
|
||||
url="https://tools.ietf.org/html/rfc3986">RFC3986
|
||||
format</ulink>, and should be
|
||||
<literal>http:</literal> or
|
||||
<literal>https:</literal> URLs, and
|
||||
possibly <literal>mailto:</literal> or
|
||||
<literal>tel:</literal>. Only one URL
|
||||
shall be listed in each setting. If
|
||||
multiple resources need to be
|
||||
referenced, it is recommended to
|
||||
provide an online landing page linking
|
||||
all available resources. Examples:
|
||||
<literal>HOME_URL="https://fedoraproject.org/"</literal>
|
||||
and
|
||||
<literal>BUG_REPORT_URL="https://bugzilla.redhat.com/"</literal></para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Links to resources on the Internet related the
|
||||
operating system. <varname>HOME_URL=</varname> should refer to
|
||||
the homepage of the operating system, or alternatively some
|
||||
homepage of the specific version of the operating system.
|
||||
<varname>SUPPORT_URL=</varname> should refer to the main
|
||||
support page for the operating system, if there is any. This
|
||||
is primarily intended for operating systems which vendors
|
||||
provide support for. <varname>BUG_REPORT_URL=</varname> should
|
||||
refer to the main bug reporting page for the operating system,
|
||||
if there is any. This is primarily intended for operating
|
||||
systems that rely on community QA.
|
||||
<varname>PRIVACY_POLICY_URL=</varname> should refer to the
|
||||
main privacy policy page for the operation system, if there is
|
||||
any. These settings are optional, and providing only some of
|
||||
these settings is common. These URLs are intended to be
|
||||
exposed in "About this system" UIs behind links with captions
|
||||
such as "About this Operating System", "Obtain Support",
|
||||
"Report a Bug", or "Privacy Policy". The values should be in
|
||||
<ulink url="https://tools.ietf.org/html/rfc3986">RFC3986
|
||||
format</ulink>, and should be <literal>http:</literal> or
|
||||
<literal>https:</literal> URLs, and possibly
|
||||
<literal>mailto:</literal> or <literal>tel:</literal>. Only
|
||||
one URL shall be listed in each setting. If multiple resources
|
||||
need to be referenced, it is recommended to provide an online
|
||||
landing page linking all available resources. Examples:
|
||||
<literal>HOME_URL="https://fedoraproject.org/"</literal> and
|
||||
<literal>BUG_REPORT_URL="https://bugzilla.redhat.com/"</literal></para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>BUILD_ID=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>BUILD_ID=</varname></term>
|
||||
|
||||
<listitem><para>A string uniquely
|
||||
identifying the system image used as
|
||||
the origin for a distribution (it is
|
||||
not updated with system updates). The
|
||||
field can be identical between
|
||||
different VERSION_IDs as BUILD_ID is
|
||||
an only a unique identifier to a
|
||||
specific version. Distributions that
|
||||
release each update as a new version
|
||||
would only need to use VERSION_ID as
|
||||
each build is already distinct based
|
||||
on the VERSION_ID. This field is
|
||||
optional. Example:
|
||||
<literal>BUILD_ID="2013-03-20.3"</literal>
|
||||
or
|
||||
<literal>BUILD_ID=201303203</literal>.
|
||||
<listitem><para>A string uniquely identifying the system image
|
||||
used as the origin for a distribution (it is not updated with
|
||||
system updates). The field can be identical between different
|
||||
VERSION_IDs as BUILD_ID is an only a unique identifier to a
|
||||
specific version. Distributions that release each update as a
|
||||
new version would only need to use VERSION_ID as each build is
|
||||
already distinct based on the VERSION_ID. This field is
|
||||
optional. Example: <literal>BUILD_ID="2013-03-20.3"</literal>
|
||||
or <literal>BUILD_ID=201303203</literal>.
|
||||
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</variablelist>
|
||||
|
||||
<para>If you are reading this file from C code or a
|
||||
shell script to determine the OS or a specific version
|
||||
of it, use the ID and VERSION_ID fields, possibly with
|
||||
ID_LIKE as fallback for ID. When looking for an OS
|
||||
identification string for presentation to the user use
|
||||
the PRETTY_NAME field.</para>
|
||||
<para>If you are reading this file from C code or a shell script
|
||||
to determine the OS or a specific version of it, use the
|
||||
<varname>ID</varname> and <varname>VERSION_ID</varname> fields,
|
||||
possibly with <varname>ID_LIKE</varname> as fallback for
|
||||
<varname>ID</varname>. When looking for an OS identification
|
||||
string for presentation to the user use the
|
||||
<varname>PRETTY_NAME</varname> field.</para>
|
||||
|
||||
<para>Note that operating system vendors may choose
|
||||
not to provide version information, for example to
|
||||
accommodate for rolling releases. In this case, VERSION
|
||||
and VERSION_ID may be unset. Applications should not
|
||||
rely on these fields to be set.</para>
|
||||
<para>Note that operating system vendors may choose not to provide
|
||||
version information, for example to accommodate for rolling
|
||||
releases. In this case, <varname>VERSION</varname> and
|
||||
<varname>VERSION_ID</varname> may be unset. Applications should
|
||||
not rely on these fields to be set.</para>
|
||||
|
||||
<para>Operating system vendors may extend the file
|
||||
format and introduce new fields. It is highly
|
||||
recommended to prefix new fields with an OS specific
|
||||
name in order to avoid name clashes. Applications
|
||||
reading this file must ignore unknown fields. Example:
|
||||
<literal>DEBIAN_BTS="debbugs://bugs.debian.org/"</literal></para>
|
||||
</refsect1>
|
||||
<para>Operating system vendors may extend the file
|
||||
format and introduce new fields. It is highly
|
||||
recommended to prefix new fields with an OS specific
|
||||
name in order to avoid name clashes. Applications
|
||||
reading this file must ignore unknown fields. Example:
|
||||
<literal>DEBIAN_BTS="debbugs://bugs.debian.org/"</literal></para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
|
||||
<programlisting>NAME=Fedora
|
||||
<programlisting>NAME=Fedora
|
||||
VERSION="17 (Beefy Miracle)"
|
||||
ID=fedora
|
||||
VERSION_ID=17
|
||||
@@ -384,17 +311,17 @@ ANSI_COLOR="0;34"
|
||||
CPE_NAME="cpe:/o:fedoraproject:fedora:17"
|
||||
HOME_URL="https://fedoraproject.org/"
|
||||
BUG_REPORT_URL="https://bugzilla.redhat.com/"</programlisting>
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>lsb_release</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>lsb_release</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,292 +23,250 @@
|
||||
|
||||
<refentry id="pam_systemd" conditional='HAVE_PAM'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>pam_systemd</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>pam_systemd</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>pam_systemd</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>pam_systemd</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>pam_systemd</refname>
|
||||
<refpurpose>Register user sessions in the systemd login manager</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>pam_systemd</refname>
|
||||
<refpurpose>Register user sessions in the systemd login manager</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>pam_systemd.so</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>pam_systemd.so</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>pam_systemd</command> registers user
|
||||
sessions with the systemd login manager
|
||||
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
and hence the systemd control group hierarchy.</para>
|
||||
<para><command>pam_systemd</command> registers user sessions with
|
||||
the systemd login manager
|
||||
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
and hence the systemd control group hierarchy.</para>
|
||||
|
||||
<para>On login, this module ensures the following:</para>
|
||||
<para>On login, this module ensures the following:</para>
|
||||
|
||||
<orderedlist>
|
||||
<listitem><para>If it does not exist yet, the
|
||||
user runtime directory
|
||||
<filename>/run/user/$USER</filename> is
|
||||
created and its ownership changed to the user
|
||||
that is logging in.</para></listitem>
|
||||
<orderedlist>
|
||||
<listitem><para>If it does not exist yet, the user runtime
|
||||
directory <filename>/run/user/$USER</filename> is created and
|
||||
its ownership changed to the user that is logging
|
||||
in.</para></listitem>
|
||||
|
||||
<listitem><para>The
|
||||
<varname>$XDG_SESSION_ID</varname> environment
|
||||
variable is initialized. If auditing is
|
||||
available and
|
||||
<command>pam_loginuid.so</command> was run before
|
||||
this module (which is highly recommended), the
|
||||
variable is initialized from the auditing
|
||||
session id
|
||||
(<filename>/proc/self/sessionid</filename>). Otherwise,
|
||||
an independent session counter is
|
||||
used.</para></listitem>
|
||||
<listitem><para>The <varname>$XDG_SESSION_ID</varname>
|
||||
environment variable is initialized. If auditing is available
|
||||
and <command>pam_loginuid.so</command> was run before this
|
||||
module (which is highly recommended), the variable is
|
||||
initialized from the auditing session id
|
||||
(<filename>/proc/self/sessionid</filename>). Otherwise, an
|
||||
independent session counter is used.</para></listitem>
|
||||
|
||||
<listitem><para>A new systemd scope unit is
|
||||
created for the session. If this is the first
|
||||
concurrent session of the user, an implicit
|
||||
slice below <filename>user.slice</filename> is
|
||||
automatically created and the scope placed into
|
||||
it. An instance of the system service
|
||||
<filename>user@.service</filename>, which runs
|
||||
the systemd user manager instance, is started.
|
||||
</para></listitem>
|
||||
</orderedlist>
|
||||
<listitem><para>A new systemd scope unit is created for the
|
||||
session. If this is the first concurrent session of the user, an
|
||||
implicit slice below <filename>user.slice</filename> is
|
||||
automatically created and the scope placed into it. An instance
|
||||
of the system service <filename>user@.service</filename>, which
|
||||
runs the systemd user manager instance, is started.
|
||||
</para></listitem>
|
||||
</orderedlist>
|
||||
|
||||
<para>On logout, this module ensures the following:</para>
|
||||
<para>On logout, this module ensures the following:</para>
|
||||
|
||||
<orderedlist>
|
||||
<listitem><para>If enabled in
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum></citerefentry>, all
|
||||
processes of the session are terminated. If
|
||||
the last concurrent session of a user ends,
|
||||
the user's systemd instance will be
|
||||
terminated too, and so will the user's slice
|
||||
unit.</para></listitem>
|
||||
<orderedlist>
|
||||
<listitem><para>If enabled in
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum></citerefentry>, all processes of the
|
||||
session are terminated. If the last concurrent session of a user
|
||||
ends, the user's systemd instance will be terminated too, and so
|
||||
will the user's slice unit.</para></listitem>
|
||||
|
||||
<listitem><para>If the last concurrent session
|
||||
of a user ends, the
|
||||
<varname>$XDG_RUNTIME_DIR</varname> directory
|
||||
and all its contents are removed,
|
||||
too.</para></listitem>
|
||||
</orderedlist>
|
||||
<listitem><para>If the last concurrent session of a user ends,
|
||||
the <varname>$XDG_RUNTIME_DIR</varname> directory and all its
|
||||
contents are removed, too.</para></listitem>
|
||||
</orderedlist>
|
||||
|
||||
<para>If the system was not booted up with systemd as
|
||||
init system, this module does nothing and immediately
|
||||
returns PAM_SUCCESS.</para>
|
||||
<para>If the system was not booted up with systemd as init system,
|
||||
this module does nothing and immediately returns
|
||||
<constant>PAM_SUCCESS</constant>.</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist class='pam-directives'>
|
||||
<variablelist class='pam-directives'>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>class=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>class=</option></term>
|
||||
|
||||
<listitem><para>Takes a string
|
||||
argument which sets the session class.
|
||||
The XDG_SESSION_CLASS environmental variable
|
||||
takes precedence. One of
|
||||
<literal>user</literal>,
|
||||
<literal>greeter</literal>,
|
||||
<literal>lock-screen</literal> or
|
||||
<literal>background</literal>. See
|
||||
<citerefentry><refentrytitle>sd_session_get_class</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for details about the session class.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a string argument which sets the session
|
||||
class. The XDG_SESSION_CLASS environmental variable takes
|
||||
precedence. One of
|
||||
<literal>user</literal>,
|
||||
<literal>greeter</literal>,
|
||||
<literal>lock-screen</literal> or
|
||||
<literal>background</literal>. See
|
||||
<citerefentry><refentrytitle>sd_session_get_class</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for details about the session class.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>type=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>type=</option></term>
|
||||
|
||||
<listitem><para>Takes a string
|
||||
argument which sets the session type.
|
||||
The XDG_SESSION_TYPE environmental
|
||||
variable takes precedence. One of
|
||||
<literal>unspecified</literal>,
|
||||
<literal>tty</literal>,
|
||||
<literal>x11</literal>,
|
||||
<literal>wayland</literal> or
|
||||
<literal>mir</literal>. See
|
||||
<citerefentry><refentrytitle>sd_session_get_type</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for details about the session type.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a string argument which sets the session
|
||||
type. The XDG_SESSION_TYPE environmental variable takes
|
||||
precedence. One of
|
||||
<literal>unspecified</literal>,
|
||||
<literal>tty</literal>,
|
||||
<literal>x11</literal>,
|
||||
<literal>wayland</literal> or
|
||||
<literal>mir</literal>. See
|
||||
<citerefentry><refentrytitle>sd_session_get_type</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for details about the session type.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>debug<optional>=</optional></option></term>
|
||||
<varlistentry>
|
||||
<term><option>debug<optional>=</optional></option></term>
|
||||
|
||||
<listitem><para>Takes an optional
|
||||
boolean argument. If yes or without
|
||||
the argument, the module will log
|
||||
debugging information as it
|
||||
operates.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>Takes an optional
|
||||
boolean argument. If yes or without
|
||||
the argument, the module will log
|
||||
debugging information as it
|
||||
operates.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Module Types Provided</title>
|
||||
<refsect1>
|
||||
<title>Module Types Provided</title>
|
||||
|
||||
<para>Only <option>session</option> is provided.</para>
|
||||
</refsect1>
|
||||
<para>Only <option>session</option> is provided.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Environment</title>
|
||||
<refsect1>
|
||||
<title>Environment</title>
|
||||
|
||||
<para>The following environment variables are set for the processes of the user's session:</para>
|
||||
<para>The following environment variables are set for the
|
||||
processes of the user's session:</para>
|
||||
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_SESSION_ID</varname></term>
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_SESSION_ID</varname></term>
|
||||
|
||||
<listitem><para>A session identifier,
|
||||
suitable to be used in filenames. The
|
||||
string itself should be considered
|
||||
opaque, although often it is just the
|
||||
audit session ID as reported by
|
||||
<filename>/proc/self/sessionid</filename>. Each
|
||||
ID will be assigned only once during
|
||||
machine uptime. It may hence be used
|
||||
to uniquely label files or other
|
||||
resources of this
|
||||
session.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A session identifier, suitable to be used in
|
||||
filenames. The string itself should be considered opaque,
|
||||
although often it is just the audit session ID as reported by
|
||||
<filename>/proc/self/sessionid</filename>. Each ID will be
|
||||
assigned only once during machine uptime. It may hence be used
|
||||
to uniquely label files or other resources of this
|
||||
session.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_RUNTIME_DIR</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_RUNTIME_DIR</varname></term>
|
||||
|
||||
<listitem><para>Path to a user-private
|
||||
user-writable directory that is bound
|
||||
to the user login time on the
|
||||
machine. It is automatically created
|
||||
the first time a user logs in and
|
||||
removed on the user's final logout. If
|
||||
a user logs in twice at the same time,
|
||||
both sessions will see the same
|
||||
<varname>$XDG_RUNTIME_DIR</varname>
|
||||
and the same contents. If a user logs
|
||||
in once, then logs out again, and logs
|
||||
in again, the directory contents will
|
||||
have been lost in between, but
|
||||
applications should not rely on this
|
||||
behavior and must be able to deal with
|
||||
stale files. To store session-private
|
||||
data in this directory, the user
|
||||
should include the value of
|
||||
<varname>$XDG_SESSION_ID</varname> in
|
||||
the filename. This directory shall be
|
||||
used for runtime file system objects
|
||||
such as <constant>AF_UNIX</constant>
|
||||
sockets, FIFOs, PID files and
|
||||
similar. It is guaranteed that this
|
||||
directory is local and offers the
|
||||
greatest possible file system feature
|
||||
set the operating system provides. For
|
||||
further details see the <ulink
|
||||
url="http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html">XDG
|
||||
Base Directory
|
||||
Specification</ulink>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Path to a user-private user-writable directory
|
||||
that is bound to the user login time on the machine. It is
|
||||
automatically created the first time a user logs in and
|
||||
removed on the user's final logout. If a user logs in twice at
|
||||
the same time, both sessions will see the same
|
||||
<varname>$XDG_RUNTIME_DIR</varname> and the same contents. If
|
||||
a user logs in once, then logs out again, and logs in again,
|
||||
the directory contents will have been lost in between, but
|
||||
applications should not rely on this behavior and must be able
|
||||
to deal with stale files. To store session-private data in
|
||||
this directory, the user should include the value of
|
||||
<varname>$XDG_SESSION_ID</varname> in the filename. This
|
||||
directory shall be used for runtime file system objects such
|
||||
as <constant>AF_UNIX</constant> sockets, FIFOs, PID files and
|
||||
similar. It is guaranteed that this directory is local and
|
||||
offers the greatest possible file system feature set the
|
||||
operating system provides. For further details see the <ulink
|
||||
url="http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html">XDG
|
||||
Base Directory Specification</ulink>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</variablelist>
|
||||
|
||||
<para>The following environment variables are read by
|
||||
the module and may be used by the PAM service to pass
|
||||
metadata to the module:</para>
|
||||
<para>The following environment variables are read by the module
|
||||
and may be used by the PAM service to pass metadata to the
|
||||
module:</para>
|
||||
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_SESSION_TYPE</varname></term>
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_SESSION_TYPE</varname></term>
|
||||
|
||||
<listitem><para>The session type. This
|
||||
may be used instead of
|
||||
<option>session=</option> on the
|
||||
module parameter line, and is usually
|
||||
preferred.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The session type. This may be used instead of
|
||||
<option>session=</option> on the module parameter line, and is
|
||||
usually preferred.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_SESSION_CLASS</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_SESSION_CLASS</varname></term>
|
||||
|
||||
<listitem><para>The session class. This
|
||||
may be used instead of
|
||||
<option>class=</option> on the
|
||||
module parameter line, and is usually
|
||||
preferred.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The session class. This may be used instead of
|
||||
<option>class=</option> on the module parameter line, and is
|
||||
usually preferred.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_SESSION_DESKTOP</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_SESSION_DESKTOP</varname></term>
|
||||
|
||||
<listitem><para>A single, short
|
||||
identifier string for the desktop
|
||||
environment. This may be used to
|
||||
indicate the session desktop used,
|
||||
where this applies and if this
|
||||
information is available. For example:
|
||||
<literal>GNOME</literal>, or
|
||||
<literal>KDE</literal>. It is
|
||||
recommended to use the same
|
||||
identifiers and capitalization as for
|
||||
<varname>$XDG_CURRENT_DESKTOP</varname>,
|
||||
as defined by the <ulink
|
||||
url="http://standards.freedesktop.org/desktop-entry-spec/latest/">Desktop
|
||||
Entry Specification</ulink>. (However,
|
||||
note that
|
||||
<varname>$XDG_SESSION_DESKTOP</varname>
|
||||
only takes a single item, and not a
|
||||
colon-separated list like
|
||||
<varname>$XDG_CURRENT_DESKTOP</varname>.)
|
||||
See
|
||||
<citerefentry><refentrytitle>sd_session_get_desktop</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more details.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A single, short identifier string for the
|
||||
desktop environment. This may be used to indicate the session
|
||||
desktop used, where this applies and if this information is
|
||||
available. For example: <literal>GNOME</literal>, or
|
||||
<literal>KDE</literal>. It is recommended to use the same
|
||||
identifiers and capitalization as for
|
||||
<varname>$XDG_CURRENT_DESKTOP</varname>, as defined by the
|
||||
<ulink
|
||||
url="http://standards.freedesktop.org/desktop-entry-spec/latest/">Desktop
|
||||
Entry Specification</ulink>. (However, note that
|
||||
<varname>$XDG_SESSION_DESKTOP</varname> only takes a single
|
||||
item, and not a colon-separated list like
|
||||
<varname>$XDG_CURRENT_DESKTOP</varname>.) See
|
||||
<citerefentry><refentrytitle>sd_session_get_desktop</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more details.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_SEAT</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_SEAT</varname></term>
|
||||
|
||||
<listitem><para>The seat name the session
|
||||
shall be registered for, if
|
||||
any.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The seat name the session shall be registered
|
||||
for, if any.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_VTNR</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>$XDG_VTNR</varname></term>
|
||||
|
||||
<listitem><para>The VT number the
|
||||
session shall be registered for, if
|
||||
any. (Only applies to seats with a VT
|
||||
available, such as
|
||||
<literal>seat0</literal>)</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The VT number the session shall be registered
|
||||
for, if any. (Only applies to seats with a VT available, such
|
||||
as <literal>seat0</literal>)</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
|
||||
<programlisting>#%PAM-1.0
|
||||
<programlisting>#%PAM-1.0
|
||||
auth required pam_unix.so
|
||||
auth required pam_nologin.so
|
||||
account required pam_unix.so
|
||||
@@ -316,23 +274,23 @@ password required pam_unix.so
|
||||
session required pam_unix.so
|
||||
session required pam_loginuid.so
|
||||
session required pam_systemd.so</programlisting>
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>pam.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>pam.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>pam</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>pam_loginuid</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-logind.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>pam.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>pam.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>pam</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>pam_loginuid</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.scope</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,126 +23,109 @@
|
||||
-->
|
||||
|
||||
<refentry id="resolved.conf" conditional='ENABLE_RESOLVED'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<refentryinfo>
|
||||
<title>resolved.conf</title>
|
||||
<productname>systemd</productname>
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
<refentryinfo>
|
||||
<title>resolved.conf</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Tom</firstname>
|
||||
<surname>Gundersen</surname>
|
||||
<email>teg@jklm.no</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Tom</firstname>
|
||||
<surname>Gundersen</surname>
|
||||
<email>teg@jklm.no</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>resolved.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>resolved.conf</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>resolved.conf</refname>
|
||||
<refname>resolved.conf.d</refname>
|
||||
<refpurpose>Network Name Resolution configuration files</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>resolved.conf</refname>
|
||||
<refname>resolved.conf.d</refname>
|
||||
<refpurpose>Network Name Resolution configuration files</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/systemd/resolved.conf</filename></para>
|
||||
<para><filename>/etc/systemd/resolved.conf.d/*.conf</filename></para>
|
||||
<para><filename>/run/systemd/resolved.conf.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/systemd/resolved.conf.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/systemd/resolved.conf</filename></para>
|
||||
<para><filename>/etc/systemd/resolved.conf.d/*.conf</filename></para>
|
||||
<para><filename>/run/systemd/resolved.conf.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/systemd/resolved.conf.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>These configuration files control local DNS and LLMNR
|
||||
name resolving.</para>
|
||||
<para>These configuration files control local DNS and LLMNR
|
||||
name resolving.</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="conf" />
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="conf" />
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<variablelist class='network-directives'>
|
||||
<variablelist class='network-directives'>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>DNS=</varname></term>
|
||||
<listitem><para>A space separated list
|
||||
of IPv4 and IPv6 addresses to be used
|
||||
as system DNS servers. DNS requests
|
||||
are sent to one of the listed DNS
|
||||
servers in parallel to any
|
||||
per-interface DNS servers acquired
|
||||
from
|
||||
<citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>. For
|
||||
compatibility reasons, if set to the
|
||||
empty list the DNS servers listed in
|
||||
<filename>/etc/resolv.conf</filename>
|
||||
are used, if any are
|
||||
configured there. This setting
|
||||
defaults to the empty
|
||||
list.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>DNS=</varname></term>
|
||||
<listitem><para>A space separated list of IPv4 and IPv6
|
||||
addresses to be used as system DNS servers. DNS requests are
|
||||
sent to one of the listed DNS servers in parallel to any
|
||||
per-interface DNS servers acquired from
|
||||
<citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
|
||||
For compatibility reasons, if set to the empty list the DNS
|
||||
servers listed in <filename>/etc/resolv.conf</filename> are
|
||||
used, if any are configured there. This setting defaults to
|
||||
the empty list.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>FallbackDNS=</varname></term>
|
||||
<listitem><para>A space separated list
|
||||
of IPv4 and IPv6 addresses to be used
|
||||
as the fallback DNS servers. Any
|
||||
per-interface DNS servers obtained
|
||||
from
|
||||
<citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
take precedence over this setting, as
|
||||
do any servers set via
|
||||
<varname>DNS=</varname> above or
|
||||
<filename>/etc/resolv.conf</filename>. This
|
||||
setting is hence only used if no other
|
||||
DNS server information is known. If
|
||||
this option is not given, a
|
||||
compiled-in list of DNS servers is
|
||||
used instead.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>FallbackDNS=</varname></term>
|
||||
<listitem><para>A space separated list of IPv4 and IPv6
|
||||
addresses to be used as the fallback DNS servers. Any
|
||||
per-interface DNS servers obtained from
|
||||
<citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
take precedence over this setting, as do any servers set via
|
||||
<varname>DNS=</varname> above or
|
||||
<filename>/etc/resolv.conf</filename>. This setting is hence
|
||||
only used if no other DNS server information is known. If this
|
||||
option is not given, a compiled-in list of DNS servers is used
|
||||
instead.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>LLMNR=</varname></term>
|
||||
<listitem><para>Takes a boolean
|
||||
argument or
|
||||
<literal>resolve</literal>. Controls
|
||||
Link-Local Multicast Name Resolution support (<ulink
|
||||
url="https://tools.ietf.org/html/rfc4795">RFC
|
||||
4794</ulink>) on the local host. If
|
||||
true enables full LLMNR responder and
|
||||
resolver support. If false disable
|
||||
both. If set to
|
||||
<literal>resolve</literal> only
|
||||
resolving support is enabled, but
|
||||
responding is disabled. Note that
|
||||
<citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
also maintains per-interface LLMNR
|
||||
settings. LLMNR will be enabled on an
|
||||
interface only if the per-interface
|
||||
and the global setting is
|
||||
on.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>LLMNR=</varname></term>
|
||||
<listitem><para>Takes a boolean argument or
|
||||
<literal>resolve</literal>. Controls Link-Local Multicast Name
|
||||
Resolution support (<ulink
|
||||
url="https://tools.ietf.org/html/rfc4795">RFC 4794</ulink>) on
|
||||
the local host. If true enables full LLMNR responder and
|
||||
resolver support. If false disable both. If set to
|
||||
<literal>resolve</literal> only resolving support is enabled,
|
||||
but responding is disabled. Note that
|
||||
<citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
also maintains per-interface LLMNR settings. LLMNR will be
|
||||
enabled on an interface only if the per-interface and the
|
||||
global setting is on.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-resolved.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>resolv.conf</refentrytitle><manvolnum>4</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-resolved.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-networkd.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>resolv.conf</refentrytitle><manvolnum>4</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
197
man/runlevel.xml
197
man/runlevel.xml
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,134 +22,127 @@
|
||||
-->
|
||||
|
||||
<refentry id="runlevel"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
conditional="HAVE_UTMP">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
conditional="HAVE_UTMP">
|
||||
|
||||
<refentryinfo>
|
||||
<title>runlevel</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>runlevel</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>runlevel</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>runlevel</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>runlevel</refname>
|
||||
<refpurpose>Print previous and current SysV runlevel</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>runlevel</refname>
|
||||
<refpurpose>Print previous and current SysV runlevel</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>runlevel <arg choice="opt" rep="repeat">options</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>runlevel <arg choice="opt" rep="repeat">options</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>runlevel</command> prints the previous
|
||||
and current SysV runlevel if they are known.</para>
|
||||
<para><command>runlevel</command> prints the previous and current
|
||||
SysV runlevel if they are known.</para>
|
||||
|
||||
<para>The two runlevel characters are separated by a
|
||||
single space character. If a runlevel cannot be
|
||||
determined, N is printed instead. If neither can be
|
||||
determined, the word "unknown" is printed.</para>
|
||||
<para>The two runlevel characters are separated by a single space
|
||||
character. If a runlevel cannot be determined, N is printed
|
||||
instead. If neither can be determined, the word "unknown" is
|
||||
printed.</para>
|
||||
|
||||
<para>Unless overridden in the environment, this will
|
||||
check the utmp database for recent runlevel
|
||||
changes.</para>
|
||||
</refsect1>
|
||||
<para>Unless overridden in the environment, this will check the
|
||||
utmp database for recent runlevel changes.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following option is understood:</para>
|
||||
<para>The following option is understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--help</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--help</option></term>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help-text" />
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help-text" />
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>If one or both runlevels could be determined, 0
|
||||
is returned, a non-zero failure code otherwise.</para>
|
||||
<para>If one or both runlevels could be determined, 0 is returned,
|
||||
a non-zero failure code otherwise.</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Environment</title>
|
||||
<refsect1>
|
||||
<title>Environment</title>
|
||||
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$RUNLEVEL</varname></term>
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$RUNLEVEL</varname></term>
|
||||
|
||||
<listitem><para>If
|
||||
<varname>$RUNLEVEL</varname> is set,
|
||||
<command>runlevel</command> will print
|
||||
this value as current runlevel and
|
||||
ignore utmp.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>If <varname>$RUNLEVEL</varname> is set,
|
||||
<command>runlevel</command> will print this value as current
|
||||
runlevel and ignore utmp.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>$PREVLEVEL</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>$PREVLEVEL</varname></term>
|
||||
|
||||
<listitem><para>If
|
||||
<varname>$PREVLEVEL</varname> is set,
|
||||
<command>runlevel</command> will print
|
||||
this value as previous runlevel and
|
||||
ignore utmp.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>If <varname>$PREVLEVEL</varname> is set,
|
||||
<command>runlevel</command> will print this value as previous
|
||||
runlevel and ignore utmp.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Files</title>
|
||||
<refsect1>
|
||||
<title>Files</title>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><filename>/var/run/utmp</filename></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><filename>/var/run/utmp</filename></term>
|
||||
|
||||
<listitem><para>The utmp database
|
||||
<command>runlevel</command> reads the
|
||||
previous and current runlevel
|
||||
from.</para></listitem>
|
||||
<listitem><para>The utmp database <command>runlevel</command>
|
||||
reads the previous and current runlevel
|
||||
from.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<para>This is a legacy command available for compatibility only.
|
||||
It should not be used anymore, as the concept of runlevels is
|
||||
obsolete.</para>
|
||||
</refsect1>
|
||||
|
||||
<para>This is a legacy command available for compatibility
|
||||
only. It should not be used anymore, as the concept of
|
||||
runlevels is obsolete.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,71 +22,71 @@
|
||||
-->
|
||||
|
||||
<refentry id="sd-daemon"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd-daemon</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd-daemon</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd-daemon</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd-daemon</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd-daemon</refname>
|
||||
<refname>SD_EMERG</refname>
|
||||
<refname>SD_ALERT</refname>
|
||||
<refname>SD_CRIT</refname>
|
||||
<refname>SD_ERR</refname>
|
||||
<refname>SD_WARNING</refname>
|
||||
<refname>SD_NOTICE</refname>
|
||||
<refname>SD_INFO</refname>
|
||||
<refname>SD_DEBUG</refname>
|
||||
<refpurpose>APIs for
|
||||
new-style daemons</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd-daemon</refname>
|
||||
<refname>SD_EMERG</refname>
|
||||
<refname>SD_ALERT</refname>
|
||||
<refname>SD_CRIT</refname>
|
||||
<refname>SD_ERR</refname>
|
||||
<refname>SD_WARNING</refname>
|
||||
<refname>SD_NOTICE</refname>
|
||||
<refname>SD_INFO</refname>
|
||||
<refname>SD_DEBUG</refname>
|
||||
<refpurpose>APIs for
|
||||
new-style daemons</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
</funcsynopsis>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
</funcsynopsis>
|
||||
|
||||
<cmdsynopsis>
|
||||
<command>pkg-config --cflags --libs libsystemd</command>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>pkg-config --cflags --libs libsystemd</command>
|
||||
</cmdsynopsis>
|
||||
|
||||
</refsynopsisdiv>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>sd-daemon.h</filename> provide APIs
|
||||
for new-style daemons, as implemented by the
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
init system.</para>
|
||||
<para><filename>sd-daemon.h</filename> provide APIs for new-style
|
||||
daemons, as implemented by the
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
init system.</para>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_booted</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information about the functions
|
||||
implemented. In addition to these functions, a couple
|
||||
of logging prefixes are defined as macros:</para>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_booted</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information about the functions implemented. In addition
|
||||
to these functions, a couple of logging prefixes are defined as
|
||||
macros:</para>
|
||||
|
||||
<programlisting>#define SD_EMERG "<0>" /* system is unusable */
|
||||
<programlisting>#define SD_EMERG "<0>" /* system is unusable */
|
||||
#define SD_ALERT "<1>" /* action must be taken immediately */
|
||||
#define SD_CRIT "<2>" /* critical conditions */
|
||||
#define SD_ERR "<3>" /* error conditions */
|
||||
@@ -95,53 +95,50 @@
|
||||
#define SD_INFO "<6>" /* informational */
|
||||
#define SD_DEBUG "<7>" /* debug-level messages */</programlisting>
|
||||
|
||||
<para>These prefixes are intended to be used in
|
||||
conjunction with stderr-based logging as implemented
|
||||
by systemd. If a systemd service definition file is
|
||||
configured with
|
||||
<varname>StandardError=journal</varname>,
|
||||
<varname>StandardError=syslog</varname> or
|
||||
<varname>StandardError=kmsg</varname>, these prefixes
|
||||
can be used to encode a log level in lines
|
||||
printed. This is similar to the kernel
|
||||
<function>printk()</function>-style logging. See
|
||||
<citerefentry><refentrytitle>klogctl</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
for more information.</para>
|
||||
<para>These prefixes are intended to be used in conjunction with
|
||||
stderr-based logging as implemented by systemd. If a systemd
|
||||
service definition file is configured with
|
||||
<varname>StandardError=journal</varname>,
|
||||
<varname>StandardError=syslog</varname> or
|
||||
<varname>StandardError=kmsg</varname>, these prefixes can be used
|
||||
to encode a log level in lines printed. This is similar to the
|
||||
kernel <function>printk()</function>-style logging. See
|
||||
<citerefentry><refentrytitle>klogctl</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
for more information.</para>
|
||||
|
||||
<para>The log levels are identical to
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>'s
|
||||
log level system. To use these prefixes simply prefix
|
||||
every line with one of these strings. A line that is
|
||||
not prefixed will be logged at the default log level
|
||||
SD_INFO.</para>
|
||||
<para>The log levels are identical to
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>'s
|
||||
log level system. To use these prefixes simply prefix every line
|
||||
with one of these strings. A line that is not prefixed will be
|
||||
logged at the default log level SD_INFO.</para>
|
||||
|
||||
<example>
|
||||
<title>Hello World</title>
|
||||
<example>
|
||||
<title>Hello World</title>
|
||||
|
||||
<para>A daemon may log with the log level
|
||||
NOTICE by issuing this call:</para>
|
||||
<para>A daemon may log with the log level NOTICE by issuing this
|
||||
call:</para>
|
||||
|
||||
<programlisting>fprintf(stderr, SD_NOTICE "Hello World!\n");</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
<programlisting>fprintf(stderr, SD_NOTICE "Hello World!\n");</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="libsystemd-pkgconfig.xml" />
|
||||
<xi:include href="libsystemd-pkgconfig.xml" />
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_booted</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>fprintf</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_booted</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>fprintf</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
233
man/sd-id128.xml
233
man/sd-id128.xml
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,152 +22,145 @@
|
||||
-->
|
||||
|
||||
<refentry id="sd-id128"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd-id128</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd-id128</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd-id128</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd-id128</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd-id128</refname>
|
||||
<refname>sd_id128_t</refname>
|
||||
<refname>SD_ID128_MAKE</refname>
|
||||
<refname>SD_ID128_CONST_STR</refname>
|
||||
<refname>SD_ID128_FORMAT_STR</refname>
|
||||
<refname>SD_ID128_FORMAT_VAL</refname>
|
||||
<refname>sd_id128_equal</refname>
|
||||
<refpurpose>APIs for processing 128-bit IDs</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd-id128</refname>
|
||||
<refname>sd_id128_t</refname>
|
||||
<refname>SD_ID128_MAKE</refname>
|
||||
<refname>SD_ID128_CONST_STR</refname>
|
||||
<refname>SD_ID128_FORMAT_STR</refname>
|
||||
<refname>SD_ID128_FORMAT_VAL</refname>
|
||||
<refname>sd_id128_equal</refname>
|
||||
<refpurpose>APIs for processing 128-bit IDs</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-id128.h></funcsynopsisinfo>
|
||||
</funcsynopsis>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-id128.h></funcsynopsisinfo>
|
||||
</funcsynopsis>
|
||||
|
||||
<cmdsynopsis>
|
||||
<command>pkg-config --cflags --libs libsystemd</command>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>pkg-config --cflags --libs libsystemd</command>
|
||||
</cmdsynopsis>
|
||||
|
||||
</refsynopsisdiv>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>sd-id128.h</filename> provides APIs to
|
||||
process and generate 128-bit ID values. The 128-bit ID
|
||||
values processed and generated by these APIs are a
|
||||
generalization of OSF UUIDs as defined by <ulink
|
||||
url="https://tools.ietf.org/html/rfc4122">RFC
|
||||
4122</ulink> but use a simpler string
|
||||
format. These functions impose no structure on the
|
||||
used IDs, much unlike OSF UUIDs or Microsoft GUIDs,
|
||||
but are fully compatible with those types of IDs.
|
||||
</para>
|
||||
<para><filename>sd-id128.h</filename> provides APIs to process and
|
||||
generate 128-bit ID values. The 128-bit ID values processed and
|
||||
generated by these APIs are a generalization of OSF UUIDs as
|
||||
defined by <ulink url="https://tools.ietf.org/html/rfc4122">RFC
|
||||
4122</ulink> but use a simpler string format. These functions
|
||||
impose no structure on the used IDs, much unlike OSF UUIDs or
|
||||
Microsoft GUIDs, but are fully compatible with those types of IDs.
|
||||
</para>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_id128_to_string</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_randomize</refentrytitle><manvolnum>3</manvolnum></citerefentry> and
|
||||
<citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information about the implemented
|
||||
functions.</para>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_id128_to_string</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_randomize</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information about the implemented functions.</para>
|
||||
|
||||
<para>A 128-bit ID is implemented as the following
|
||||
union type:</para>
|
||||
<para>A 128-bit ID is implemented as the following
|
||||
union type:</para>
|
||||
|
||||
<programlisting>typedef union sd_id128 {
|
||||
uint8_t bytes[16];
|
||||
uint64_t qwords[2];
|
||||
<programlisting>typedef union sd_id128 {
|
||||
uint8_t bytes[16];
|
||||
uint64_t qwords[2];
|
||||
} sd_id128_t;</programlisting>
|
||||
|
||||
<para>This union type allows accessing the 128-bit ID
|
||||
as 16 separate bytes or two 64-bit words. It is generally
|
||||
safer to access the ID components by their 8-bit array
|
||||
to avoid endianness issues. This union is intended to
|
||||
be passed call-by-value (as opposed to
|
||||
call-by-reference) and may be directly manipulated by
|
||||
clients.</para>
|
||||
<para>This union type allows accessing the 128-bit ID as 16
|
||||
separate bytes or two 64-bit words. It is generally safer to
|
||||
access the ID components by their 8-bit array to avoid endianness
|
||||
issues. This union is intended to be passed call-by-value (as
|
||||
opposed to call-by-reference) and may be directly manipulated by
|
||||
clients.</para>
|
||||
|
||||
<para>A couple of macros are defined to denote and
|
||||
decode 128-bit IDs:</para>
|
||||
<para>A couple of macros are defined to denote and decode 128-bit
|
||||
IDs:</para>
|
||||
|
||||
<para><function>SD_ID128_MAKE()</function> may be used
|
||||
to denote a constant 128-bit ID in source code. A
|
||||
commonly used idiom is to assign a name to a 128-bit
|
||||
ID using this macro:</para>
|
||||
<para><function>SD_ID128_MAKE()</function> may be used to denote a
|
||||
constant 128-bit ID in source code. A commonly used idiom is to
|
||||
assign a name to a 128-bit ID using this macro:</para>
|
||||
|
||||
<programlisting>#define SD_MESSAGE_COREDUMP SD_ID128_MAKE(fc,2e,22,bc,6e,e6,47,b6,b9,07,29,ab,34,a2,50,b1)</programlisting>
|
||||
<programlisting>#define SD_MESSAGE_COREDUMP SD_ID128_MAKE(fc,2e,22,bc,6e,e6,47,b6,b9,07,29,ab,34,a2,50,b1)</programlisting>
|
||||
|
||||
<para><function>SD_ID128_CONST_STR()</function> may be
|
||||
used to convert constant 128-bit IDs into constant
|
||||
strings for output. The following example code will
|
||||
output the string
|
||||
"fc2e22bc6ee647b6b90729ab34a250b1":</para>
|
||||
<programlisting>int main(int argc, char *argv[]) {
|
||||
puts(SD_ID128_CONST_STR(SD_MESSAGE_COREDUMP));
|
||||
<para><function>SD_ID128_CONST_STR()</function> may be used to
|
||||
convert constant 128-bit IDs into constant strings for output. The
|
||||
following example code will output the string
|
||||
"fc2e22bc6ee647b6b90729ab34a250b1":</para>
|
||||
<programlisting>int main(int argc, char *argv[]) {
|
||||
puts(SD_ID128_CONST_STR(SD_MESSAGE_COREDUMP));
|
||||
}</programlisting>
|
||||
|
||||
<para><function>SD_ID128_FORMAT_STR</function> and
|
||||
<function>SD_ID128_FORMAT_VAL()</function> may be used
|
||||
to format a 128-bit ID in a
|
||||
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
format string, as shown in the following
|
||||
example:</para>
|
||||
<para><function>SD_ID128_FORMAT_STR</function> and
|
||||
<function>SD_ID128_FORMAT_VAL()</function> may be used to format a
|
||||
128-bit ID in a
|
||||
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
format string, as shown in the following example:</para>
|
||||
|
||||
<programlisting>int main(int argc, char *argv[]) {
|
||||
sd_id128_t id;
|
||||
id = SD_ID128_MAKE(ee,89,be,71,bd,6e,43,d6,91,e6,c5,5d,eb,03,02,07);
|
||||
printf("The ID encoded in this C file is " SD_ID128_FORMAT_STR ".\n", SD_ID128_FORMAT_VAL(id));
|
||||
return 0;
|
||||
<programlisting>int main(int argc, char *argv[]) {
|
||||
sd_id128_t id;
|
||||
id = SD_ID128_MAKE(ee,89,be,71,bd,6e,43,d6,91,e6,c5,5d,eb,03,02,07);
|
||||
printf("The ID encoded in this C file is " SD_ID128_FORMAT_STR ".\n", SD_ID128_FORMAT_VAL(id));
|
||||
return 0;
|
||||
}</programlisting>
|
||||
|
||||
<para>Use <function>sd_id128_equal()</function> to compare two 128-bit IDs:</para>
|
||||
<para>Use <function>sd_id128_equal()</function> to compare two 128-bit IDs:</para>
|
||||
|
||||
<programlisting>int main(int argc, char *argv[]) {
|
||||
sd_id128_t a, b, c;
|
||||
a = SD_ID128_MAKE(ee,89,be,71,bd,6e,43,d6,91,e6,c5,5d,eb,03,02,07);
|
||||
b = SD_ID128_MAKE(f2,28,88,9c,5f,09,44,15,9d,d7,04,77,58,cb,e7,3e);
|
||||
c = a;
|
||||
assert(sd_id128_equal(a, c));
|
||||
assert(!sd_id128_equal(a, b));
|
||||
return 0;
|
||||
<programlisting>int main(int argc, char *argv[]) {
|
||||
sd_id128_t a, b, c;
|
||||
a = SD_ID128_MAKE(ee,89,be,71,bd,6e,43,d6,91,e6,c5,5d,eb,03,02,07);
|
||||
b = SD_ID128_MAKE(f2,28,88,9c,5f,09,44,15,9d,d7,04,77,58,cb,e7,3e);
|
||||
c = a;
|
||||
assert(sd_id128_equal(a, c));
|
||||
assert(!sd_id128_equal(a, b));
|
||||
return 0;
|
||||
}</programlisting>
|
||||
|
||||
<para>Note that new, randomized IDs may be generated
|
||||
with
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
|
||||
<option>--new-id</option> option.</para>
|
||||
</refsect1>
|
||||
<para>Note that new, randomized IDs may be generated with
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
|
||||
<option>--new-id</option> option.</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="libsystemd-pkgconfig.xml" />
|
||||
<xi:include href="libsystemd-pkgconfig.xml" />
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_to_string</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_randomize</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_to_string</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_randomize</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,106 +22,104 @@
|
||||
-->
|
||||
|
||||
<refentry id="sd-journal"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd-journal</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd-journal</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd-journal</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd-journal</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd-journal</refname>
|
||||
<refpurpose>APIs for submitting and querying log entries to and from the journal</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd-journal</refname>
|
||||
<refpurpose>APIs for submitting and querying log entries to and
|
||||
from the journal</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
</funcsynopsis>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
</funcsynopsis>
|
||||
|
||||
<cmdsynopsis>
|
||||
<command>pkg-config --cflags --libs libsystemd</command>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>pkg-config --cflags --libs libsystemd</command>
|
||||
</cmdsynopsis>
|
||||
|
||||
</refsynopsisdiv>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>sd-journal.h</filename> provides APIs
|
||||
to submit and query log entries. The APIs exposed act
|
||||
both as client for the
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
journal service and as parser for the journal files
|
||||
on disk.
|
||||
</para>
|
||||
<para><filename>sd-journal.h</filename> provides APIs to submit
|
||||
and query log entries. The APIs exposed act both as client for the
|
||||
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
journal service and as parser for the journal files on disk.
|
||||
</para>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_stream_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_add_match</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_seek_head</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cutoff_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cutoff_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_usage</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_catalog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>sd_journal_get_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information about the functions
|
||||
implemented.</para>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_stream_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_add_match</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_seek_head</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cutoff_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cutoff_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_usage</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_catalog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>sd_journal_get_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information about the functions implemented.</para>
|
||||
|
||||
<para>Command line access for submitting entries to
|
||||
the journal is available with the
|
||||
<citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
tool. Command line access for querying entries from
|
||||
the journal is available with the
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
tool.</para>
|
||||
</refsect1>
|
||||
<para>Command line access for submitting entries to the journal is
|
||||
available with the
|
||||
<citerefentry><refentrytitle>systemd-cat</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
tool. Command line access for querying entries from the journal is
|
||||
available with the
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
tool.</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="libsystemd-pkgconfig.xml" />
|
||||
<xi:include href="libsystemd-pkgconfig.xml" />
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_stream_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_add_match</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_seek_head</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cutoff_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cutoff_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_usage</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_query_unique</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_catalog</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_stream_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_add_match</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_seek_head</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cutoff_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cutoff_monotonic_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_usage</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_query_unique</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_catalog</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
189
man/sd-login.xml
189
man/sd-login.xml
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,117 +22,114 @@
|
||||
-->
|
||||
|
||||
<refentry id="sd-login" conditional='HAVE_PAM'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd-login</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd-login</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd-login</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd-login</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd-login</refname>
|
||||
<refpurpose>APIs for
|
||||
tracking logins</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd-login</refname>
|
||||
<refpurpose>APIs for
|
||||
tracking logins</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
</funcsynopsis>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
</funcsynopsis>
|
||||
|
||||
<cmdsynopsis>
|
||||
<command>pkg-config --cflags --libs libsystemd</command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>pkg-config --cflags --libs libsystemd</command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>sd-login.h</filename> provides APIs to
|
||||
introspect and monitor seat, login session and user
|
||||
status information on the local system. </para>
|
||||
<para><filename>sd-login.h</filename> provides APIs to introspect
|
||||
and monitor seat, login session and user status information on the
|
||||
local system. </para>
|
||||
|
||||
<para>See <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/multiseat">Multi-Seat
|
||||
on Linux</ulink> for an introduction into multi-seat
|
||||
support on Linux, the background for this set of APIs.</para>
|
||||
<para>See <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/multiseat">Multi-Seat
|
||||
on Linux</ulink> for an introduction into multi-seat support on
|
||||
Linux, the background for this set of APIs.</para>
|
||||
|
||||
<para>Note that these APIs only allow purely passive access
|
||||
and monitoring of seats, sessions and users. To
|
||||
actively make changes to the seat configuration,
|
||||
terminate login sessions, or switch session on a seat
|
||||
you need to utilize the D-Bus API of
|
||||
systemd-logind, instead.</para>
|
||||
<para>Note that these APIs only allow purely passive access and
|
||||
monitoring of seats, sessions and users. To actively make changes
|
||||
to the seat configuration, terminate login sessions, or switch
|
||||
session on a seat you need to utilize the D-Bus API of
|
||||
systemd-logind, instead.</para>
|
||||
|
||||
<para>These functions synchronously access data in
|
||||
<filename>/proc</filename>,
|
||||
<filename>/sys/fs/cgroup</filename> and
|
||||
<filename>/run</filename>. All of these are virtual
|
||||
file systems, hence the runtime cost of the accesses
|
||||
is relatively cheap.</para>
|
||||
<para>These functions synchronously access data in
|
||||
<filename>/proc</filename>, <filename>/sys/fs/cgroup</filename>
|
||||
and <filename>/run</filename>. All of these are virtual file
|
||||
systems, hence the runtime cost of the accesses is relatively
|
||||
cheap.</para>
|
||||
|
||||
<para>It is possible (and often a very good choice) to
|
||||
mix calls to the synchronous interface of
|
||||
<filename>sd-login.h</filename> with the asynchronous
|
||||
D-Bus interface of systemd-logind. However, if this is
|
||||
done you need to think a bit about possible races
|
||||
since the stream of events from D-Bus and from
|
||||
<filename>sd-login.h</filename> interfaces such as the
|
||||
login monitor are asynchronous and not ordered against
|
||||
each other.</para>
|
||||
<para>It is possible (and often a very good choice) to mix calls
|
||||
to the synchronous interface of <filename>sd-login.h</filename>
|
||||
with the asynchronous D-Bus interface of systemd-logind. However,
|
||||
if this is done you need to think a bit about possible races since
|
||||
the stream of events from D-Bus and from
|
||||
<filename>sd-login.h</filename> interfaces such as the login
|
||||
monitor are asynchronous and not ordered against each
|
||||
other.</para>
|
||||
|
||||
<para>If the functions return string arrays, these are
|
||||
generally <constant>NULL</constant> terminated and need to be freed by the
|
||||
caller with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use, including the strings referenced
|
||||
therein. Similarly, individual strings returned need to
|
||||
be freed, as well.</para>
|
||||
<para>If the functions return string arrays, these are generally
|
||||
<constant>NULL</constant> terminated and need to be freed by the
|
||||
caller with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use, including the strings referenced therein.
|
||||
Similarly, individual strings returned need to be freed, as
|
||||
well.</para>
|
||||
|
||||
<para>As a special exception, instead of an empty
|
||||
string array <constant>NULL</constant> may be returned, which should be
|
||||
treated equivalent to an empty string array.</para>
|
||||
<para>As a special exception, instead of an empty string array
|
||||
<constant>NULL</constant> may be returned, which should be treated
|
||||
equivalent to an empty string array.</para>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_pid_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_uid_get_state</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_session_is_active</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_seat_get_active</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_login_monitor_new</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information about the functions
|
||||
implemented.</para>
|
||||
</refsect1>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_pid_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_uid_get_state</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_session_is_active</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_seat_get_active</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_login_monitor_new</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information about the functions
|
||||
implemented.</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="libsystemd-pkgconfig.xml" />
|
||||
<xi:include href="libsystemd-pkgconfig.xml" />
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_pid_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_uid_get_state</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_session_is_active</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_seat_get_active</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_login_monitor_new</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_pid_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_uid_get_state</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_session_is_active</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_seat_get_active</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_login_monitor_new</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,76 +22,74 @@
|
||||
-->
|
||||
|
||||
<refentry id="sd_booted"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_booted</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_booted</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_booted</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_booted</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_booted</refname>
|
||||
<refpurpose>Test whether the system is running the systemd init system</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_booted</refname>
|
||||
<refpurpose>Test whether the system is running the systemd init system</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_booted</function></funcdef>
|
||||
<paramdef>void</paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_booted</function></funcdef>
|
||||
<paramdef>void</paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<para><function>sd_booted()</function> checks whether
|
||||
the system was booted up using the systemd init system.</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<para><function>sd_booted()</function> checks whether the system
|
||||
was booted up using the systemd init system.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On failure, this call returns a negative
|
||||
errno-style error code. If the system was booted up
|
||||
with systemd as init system, this call returns a
|
||||
positive return value, zero otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On failure, this call returns a negative errno-style error
|
||||
code. If the system was booted up with systemd as init system,
|
||||
this call returns a positive return value, zero otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
|
||||
<xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
|
||||
|
||||
<para>Internally, this function checks whether the
|
||||
directory <filename>/run/systemd/system/</filename>
|
||||
exists. A simple check like this can also be
|
||||
implemented trivially in shell or any other
|
||||
language.</para>
|
||||
</refsect1>
|
||||
<para>Internally, this function checks whether the directory
|
||||
<filename>/run/systemd/system/</filename> exists. A simple check
|
||||
like this can also be implemented trivially in shell or any other
|
||||
language.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,130 +23,124 @@
|
||||
|
||||
<refentry id="sd_bus_message_get_cookie" conditional="ENABLE_KDBUS">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_bus_message_get_cookie</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_bus_message_get_cookie</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_bus_message_get_cookie</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_bus_message_get_cookie</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_bus_message_get_cookie</refname>
|
||||
<refname>sd_bus_message_get_reply_cookie</refname>
|
||||
<refpurpose>Returns the transaction cookie of a message</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_bus_message_get_cookie</refname>
|
||||
<refname>sd_bus_message_get_reply_cookie</refname>
|
||||
<refpurpose>Returns the transaction cookie of a message</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-bus.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-bus.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_message_get_cookie</function></funcdef>
|
||||
<paramdef>sd_bus_message *<parameter>message</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>cookie</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_message_get_cookie</function></funcdef>
|
||||
<paramdef>sd_bus_message *<parameter>message</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>cookie</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_message_get_reply_cookie</function></funcdef>
|
||||
<paramdef>sd_bus_message *<parameter>message</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>cookie</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_message_get_reply_cookie</function></funcdef>
|
||||
<paramdef>sd_bus_message *<parameter>message</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>cookie</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_bus_message_get_cookie()</function> returns
|
||||
the transaction cookie of a message. The cookie
|
||||
uniquely identifies a message within each bus peer,
|
||||
but is not globally unique. It is assigned when a
|
||||
message is sent.</para>
|
||||
<para><function>sd_bus_message_get_cookie()</function> returns the
|
||||
transaction cookie of a message. The cookie uniquely identifies a
|
||||
message within each bus peer, but is not globally unique. It is
|
||||
assigned when a message is sent.</para>
|
||||
|
||||
<para><function>sd_bus_message_get_reply_cookie()</function>
|
||||
returns the transaction cookie of the message the
|
||||
specified message is a response to. When a reply
|
||||
message is generated for a method call message, its
|
||||
cookie is copied over into this field. Note that while
|
||||
every message that is transferred is identified by a
|
||||
cookie, only response messages carry a reply cookie
|
||||
field.</para>
|
||||
<para><function>sd_bus_message_get_reply_cookie()</function>
|
||||
returns the transaction cookie of the message the specified
|
||||
message is a response to. When a reply message is generated for a
|
||||
method call message, its cookie is copied over into this field.
|
||||
Note that while every message that is transferred is identified by
|
||||
a cookie, only response messages carry a reply cookie
|
||||
field.</para>
|
||||
|
||||
<para>Both functions take a message object as first
|
||||
parameter and a place to store the 64-bit cookie
|
||||
in.</para>
|
||||
</refsect1>
|
||||
<para>Both functions take a message object as first parameter and
|
||||
a place to store the 64-bit cookie in.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On success, these calls return 0 or a positive
|
||||
integer. On failure, these calls return a negative
|
||||
errno-style error code.</para>
|
||||
<para>On success, these calls return 0 or a positive integer. On
|
||||
failure, these calls return a negative errno-style error
|
||||
code.</para>
|
||||
|
||||
<para>On success, the cookie/reply cookie is returned
|
||||
in the specified 64-bit unsigned integer variable.</para>
|
||||
</refsect1>
|
||||
<para>On success, the cookie/reply cookie is returned in the
|
||||
specified 64-bit unsigned integer variable.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Errors</title>
|
||||
<refsect1>
|
||||
<title>Errors</title>
|
||||
|
||||
<para>Returned errors may indicate the following problems:</para>
|
||||
<para>Returned errors may indicate the following problems:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><constant>-EINVAL</constant></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><constant>-EINVAL</constant></term>
|
||||
|
||||
<listitem><para>A specified parameter
|
||||
is invalid.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A specified parameter
|
||||
is invalid.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><constant>-ENODATA</constant></term>
|
||||
<varlistentry>
|
||||
<term><constant>-ENODATA</constant></term>
|
||||
|
||||
<listitem><para>No cookie has been
|
||||
assigned to this message. This either
|
||||
indicates that the message has not
|
||||
been sent yet and hence has no cookie
|
||||
assigned, or that the message is not a
|
||||
method response message and hence
|
||||
carries a reply cookie
|
||||
field.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>No cookie has been assigned to this message.
|
||||
This either indicates that the message has not been sent yet
|
||||
and hence has no cookie assigned, or that the message is not a
|
||||
method response message and hence carries a reply cookie
|
||||
field.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_bus_message_get_cookie()</function>
|
||||
and <function>sd_bus_message_get_reply_cookie()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_bus_message_get_cookie()</function> and
|
||||
<function>sd_bus_message_get_reply_cookie()</function> interfaces
|
||||
are available as a shared library, which can be compiled and
|
||||
linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-bus</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_bus_new</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-bus</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_bus_new</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,168 +23,159 @@
|
||||
|
||||
<refentry id="sd_bus_message_get_monotonic_usec" conditional="ENABLE_KDBUS">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_bus_message_get_monotonic_usec</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_bus_message_get_monotonic_usec</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_bus_message_get_monotonic_usec</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_bus_message_get_monotonic_usec</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_bus_message_get_monotonic_usec</refname>
|
||||
<refname>sd_bus_message_get_realtime_usec</refname>
|
||||
<refname>sd_bus_message_get_seqnum</refname>
|
||||
<refpurpose>Retrieve the sender timestamps and sequence number of a message</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_bus_message_get_monotonic_usec</refname>
|
||||
<refname>sd_bus_message_get_realtime_usec</refname>
|
||||
<refname>sd_bus_message_get_seqnum</refname>
|
||||
<refpurpose>Retrieve the sender timestamps and sequence number of a message</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-bus.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-bus.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_message_get_monotonic_usec</function></funcdef>
|
||||
<paramdef>sd_bus_message *<parameter>message</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_message_get_monotonic_usec</function></funcdef>
|
||||
<paramdef>sd_bus_message *<parameter>message</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_message_get_realtime_usec</function></funcdef>
|
||||
<paramdef>sd_bus_message *<parameter>message</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_message_get_realtime_usec</function></funcdef>
|
||||
<paramdef>sd_bus_message *<parameter>message</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_message_get_seqnum</function></funcdef>
|
||||
<paramdef>sd_bus_message *<parameter>message</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>seqnum</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_message_get_seqnum</function></funcdef>
|
||||
<paramdef>sd_bus_message *<parameter>message</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>seqnum</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_bus_message_get_monotonic_usec()</function>
|
||||
returns the monotonic timestamp of the time the
|
||||
message was sent. This value is in microseconds since
|
||||
the <literal>CLOCK_MONOTONIC</literal> epoch, see
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
for details.</para>
|
||||
<para><function>sd_bus_message_get_monotonic_usec()</function>
|
||||
returns the monotonic timestamp of the time the message was sent.
|
||||
This value is in microseconds since the
|
||||
<constant>CLOCK_MONOTONIC</constant> epoch, see
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
for details.</para>
|
||||
|
||||
<para>Similar,
|
||||
<function>sd_bus_message_get_realtime_usec()</function>
|
||||
returns the realtime (wallclock) timestamp of the time
|
||||
the message was sent. This value is in microseconds
|
||||
since Jan 1st, 1970, i.e. in the
|
||||
<literal>CLOCK_REALTIME</literal> clock.</para>
|
||||
<para>Similar,
|
||||
<function>sd_bus_message_get_realtime_usec()</function> returns
|
||||
the realtime (wallclock) timestamp of the time the message was
|
||||
sent. This value is in microseconds since Jan 1st, 1970, i.e. in
|
||||
the <constant>CLOCK_REALTIME</constant> clock.</para>
|
||||
|
||||
<para><function>sd_bus_message_get_seqnum()</function>
|
||||
returns the kernel-assigned sequence number of the
|
||||
message. The kernel assigns a global, monotonically
|
||||
increasing sequence number to all messages transmitted
|
||||
on the local system, at the time the message was
|
||||
sent. This sequence number is useful for determining
|
||||
message send order, even across different busses of
|
||||
the local system. The sequence number combined with
|
||||
the boot ID of the system (as returned by
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>)
|
||||
is a suitable globally unique identifier for bus
|
||||
messages.</para>
|
||||
<para><function>sd_bus_message_get_seqnum()</function> returns the
|
||||
kernel-assigned sequence number of the message. The kernel assigns
|
||||
a global, monotonically increasing sequence number to all messages
|
||||
transmitted on the local system, at the time the message was sent.
|
||||
This sequence number is useful for determining message send order,
|
||||
even across different busses of the local system. The sequence
|
||||
number combined with the boot ID of the system (as returned by
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>)
|
||||
is a suitable globally unique identifier for bus messages.</para>
|
||||
|
||||
<para>Note that the sending order and receiving order
|
||||
of messages might differ, in particular for broadcast
|
||||
messages. This means that the sequence number and the
|
||||
timestamps of messages a client reads are not
|
||||
necessarily monotonically increasing.</para>
|
||||
<para>Note that the sending order and receiving order of messages
|
||||
might differ, in particular for broadcast messages. This means
|
||||
that the sequence number and the timestamps of messages a client
|
||||
reads are not necessarily monotonically increasing.</para>
|
||||
|
||||
<para>These timestamps and the sequence number are
|
||||
attached to each message by the kernel and cannot be
|
||||
manipulated by the sender.</para>
|
||||
<para>These timestamps and the sequence number are attached to
|
||||
each message by the kernel and cannot be manipulated by the
|
||||
sender.</para>
|
||||
|
||||
<para>Note that these timestamps are only available on
|
||||
some bus transports, and only after support for them
|
||||
has been negotiated with the
|
||||
<citerefentry><refentrytitle>sd_bus_negotiate_timestamp</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call.</para>
|
||||
</refsect1>
|
||||
<para>Note that these timestamps are only available on some bus
|
||||
transports, and only after support for them has been negotiated
|
||||
with the
|
||||
<citerefentry><refentrytitle>sd_bus_negotiate_timestamp</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On success, these calls return 0 or a positive
|
||||
integer. On failure, these calls return a negative
|
||||
errno-style error code.</para>
|
||||
<para>On success, these calls return 0 or a positive integer. On
|
||||
failure, these calls return a negative errno-style error
|
||||
code.</para>
|
||||
|
||||
<para>On success, the timestamp or sequence number is
|
||||
returned in the specified 64-bit unsigned integer
|
||||
variable.</para>
|
||||
</refsect1>
|
||||
<para>On success, the timestamp or sequence number is returned in
|
||||
the specified 64-bit unsigned integer variable.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Errors</title>
|
||||
<refsect1>
|
||||
<title>Errors</title>
|
||||
|
||||
<para>Returned errors may indicate the following problems:</para>
|
||||
<para>Returned errors may indicate the following problems:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><constant>-EINVAL</constant></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><constant>-EINVAL</constant></term>
|
||||
|
||||
<listitem><para>A specified parameter
|
||||
is invalid.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A specified parameter is
|
||||
invalid.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><constant>-ENODATA</constant></term>
|
||||
<varlistentry>
|
||||
<term><constant>-ENODATA</constant></term>
|
||||
|
||||
<listitem><para>No timestamp or
|
||||
sequence number information is
|
||||
attached to the passed message. This
|
||||
error is returned if the underlying
|
||||
transport does not support
|
||||
timestamping or assigning of sequence
|
||||
numbers, or if this feature has not
|
||||
been negotiated with
|
||||
<citerefentry><refentrytitle>sd_bus_negotiate_timestamp</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>No timestamp or sequence number information is
|
||||
attached to the passed message. This error is returned if the
|
||||
underlying transport does not support timestamping or
|
||||
assigning of sequence numbers, or if this feature has not been
|
||||
negotiated with
|
||||
<citerefentry><refentrytitle>sd_bus_negotiate_timestamp</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The
|
||||
<function>sd_bus_message_get_monotonic_usec()</function>,
|
||||
<function>sd_bus_message_get_realtime_usec()</function>,
|
||||
and <function>sd_bus_message_get_seqnum()</function>
|
||||
interfaces are available as a shared library, which
|
||||
can be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The
|
||||
<function>sd_bus_message_get_monotonic_usec()</function>,
|
||||
<function>sd_bus_message_get_realtime_usec()</function>, and
|
||||
<function>sd_bus_message_get_seqnum()</function> interfaces are
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-bus</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_bus_new</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_bus_negotiate_timestamp</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-bus</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_bus_new</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_bus_negotiate_timestamp</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,206 +23,188 @@
|
||||
|
||||
<refentry id="sd_bus_request_name" conditional="ENABLE_KDBUS">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_bus_request_name</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_bus_request_name</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_bus_request_name</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_bus_request_name</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_bus_request_name</refname>
|
||||
<refname>sd_bus_release_name</refname>
|
||||
<refpurpose>Request or release a well-known name on a bus</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_bus_request_name</refname>
|
||||
<refname>sd_bus_release_name</refname>
|
||||
<refpurpose>Request or release a well-known name on a bus</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-bus.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-bus.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_request_name</function></funcdef>
|
||||
<paramdef>sd_bus *<parameter>bus</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>name</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>flags</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_request_name</function></funcdef>
|
||||
<paramdef>sd_bus *<parameter>bus</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>name</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>flags</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_release_name</function></funcdef>
|
||||
<paramdef>sd_bus *<parameter>bus</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>name</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_bus_release_name</function></funcdef>
|
||||
<paramdef>sd_bus *<parameter>bus</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>name</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_bus_request_name()</function> requests
|
||||
a well-known name on a bus. It takes a bus connection,
|
||||
a valid bus name and a flags parameter. The flags
|
||||
parameter is a combination of the following
|
||||
flags:</para>
|
||||
<para><function>sd_bus_request_name()</function> requests a
|
||||
well-known name on a bus. It takes a bus connection, a valid bus
|
||||
name and a flags parameter. The flags parameter is a combination
|
||||
of the following flags:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><varname>SD_BUS_NAME_ALLOW_REPLACEMENT</varname></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><varname>SD_BUS_NAME_ALLOW_REPLACEMENT</varname></term>
|
||||
|
||||
<listitem><para>After acquiring the
|
||||
name successfully, permit other peers
|
||||
to take over the name when they try to
|
||||
acquire it with the
|
||||
<varname>SD_BUS_NAME_REPLACE_EXISTING</varname>
|
||||
flag set. If
|
||||
<varname>SD_BUS_NAME_ALLOW_REPLACEMENT</varname>
|
||||
is not set on the original request,
|
||||
such a request by other peers will be
|
||||
denied.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>After acquiring the name successfully, permit
|
||||
other peers to take over the name when they try to acquire it
|
||||
with the <varname>SD_BUS_NAME_REPLACE_EXISTING</varname> flag
|
||||
set. If <varname>SD_BUS_NAME_ALLOW_REPLACEMENT</varname> is
|
||||
not set on the original request, such a request by other peers
|
||||
will be denied.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>SD_BUS_NAME_REPLACE_EXISTING</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>SD_BUS_NAME_REPLACE_EXISTING</varname></term>
|
||||
|
||||
<listitem><para>Take over the name
|
||||
if it is already acquired by another
|
||||
peer, and that other peer has permitted
|
||||
takeover by setting
|
||||
<varname>SD_BUS_NAME_ALLOW_REPLACEMENT</varname>
|
||||
while acquiring it.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Take over the name if it is already acquired
|
||||
by another peer, and that other peer has permitted takeover by
|
||||
setting <varname>SD_BUS_NAME_ALLOW_REPLACEMENT</varname> while
|
||||
acquiring it.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>SD_BUS_NAME_QUEUE</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>SD_BUS_NAME_QUEUE</varname></term>
|
||||
|
||||
<listitem><para>Queue the acquisition
|
||||
of the name when the name is already
|
||||
taken.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<listitem><para>Queue the acquisition of the name when the
|
||||
name is already taken.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para><function>sd_bus_release_name()</function> releases
|
||||
an acquired well-known name. It takes a bus connection
|
||||
and a valid bus name as parameters.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_bus_release_name()</function> releases an
|
||||
acquired well-known name. It takes a bus connection and a valid
|
||||
bus name as parameters.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On success, these calls return 0 or a positive
|
||||
integer. On failure, these calls return a negative
|
||||
errno-style error code.</para>
|
||||
<para>On success, these calls return 0 or a positive integer. On
|
||||
failure, these calls return a negative errno-style error
|
||||
code.</para>
|
||||
|
||||
<para>If <varname>SD_BUS_NAME_QUEUE</varname> is
|
||||
specified, <function>sd_bus_request_name()</function>
|
||||
will return 0 when the name is already taken by
|
||||
another peer and the client has been added to the
|
||||
queue for the name. In that case, the caller can
|
||||
subscribe to <literal>NameOwnerChanged</literal>
|
||||
signals to be notified when the name is successfully
|
||||
acquired. <function>sd_bus_request_name()</function>
|
||||
returns > 0 when the name has immediately been
|
||||
acquired successfully.</para>
|
||||
</refsect1>
|
||||
<para>If <varname>SD_BUS_NAME_QUEUE</varname> is specified,
|
||||
<function>sd_bus_request_name()</function> will return 0 when the
|
||||
name is already taken by another peer and the client has been
|
||||
added to the queue for the name. In that case, the caller can
|
||||
subscribe to <literal>NameOwnerChanged</literal> signals to be
|
||||
notified when the name is successfully acquired.
|
||||
<function>sd_bus_request_name()</function> returns > 0 when the
|
||||
name has immediately been acquired successfully.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Errors</title>
|
||||
<refsect1>
|
||||
<title>Errors</title>
|
||||
|
||||
<para>Returned errors may indicate the following problems:</para>
|
||||
<para>Returned errors may indicate the following problems:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><constant>-EALREADY</constant></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><constant>-EALREADY</constant></term>
|
||||
|
||||
<listitem><para>The caller already is
|
||||
the owner of the specified
|
||||
name.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The caller already is the owner of the
|
||||
specified name.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><constant>-EEXIST</constant></term>
|
||||
<varlistentry>
|
||||
<term><constant>-EEXIST</constant></term>
|
||||
|
||||
<listitem><para>The name has already
|
||||
been acquired by a different peer, and
|
||||
SD_BUS_NAME_REPLACE_EXISTING was not
|
||||
specified or the other peer did not
|
||||
specify SD_BUS_NAME_ALLOW_REPLACEMENT
|
||||
while acquiring the
|
||||
name.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The name has already been acquired by a
|
||||
different peer, and SD_BUS_NAME_REPLACE_EXISTING was not
|
||||
specified or the other peer did not specify
|
||||
SD_BUS_NAME_ALLOW_REPLACEMENT while acquiring the
|
||||
name.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><constant>-ESRCH</constant></term>
|
||||
<varlistentry>
|
||||
<term><constant>-ESRCH</constant></term>
|
||||
|
||||
<listitem><para>It was attempted to
|
||||
release a name that is currently not
|
||||
registered on the
|
||||
bus.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>It was attempted to release a name that is
|
||||
currently not registered on the bus.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><constant>-EADDRINUSE</constant></term>
|
||||
<varlistentry>
|
||||
<term><constant>-EADDRINUSE</constant></term>
|
||||
|
||||
<listitem><para>It was attempted to
|
||||
release a name that is owned by a
|
||||
different peer on the
|
||||
bus.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>It was attempted to release a name that is
|
||||
owned by a different peer on the bus.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><constant>-EINVAL</constant></term>
|
||||
<varlistentry>
|
||||
<term><constant>-EINVAL</constant></term>
|
||||
|
||||
<listitem><para>A specified parameter
|
||||
is invalid.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>A specified parameter is
|
||||
invalid.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><constant>-ENOTCONN</constant></term>
|
||||
<varlistentry>
|
||||
<term><constant>-ENOTCONN</constant></term>
|
||||
|
||||
<listitem><para>The bus connection has
|
||||
been disconnected.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The bus connection has been
|
||||
disconnected.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><constant>-ECHILD</constant></term>
|
||||
<varlistentry>
|
||||
<term><constant>-ECHILD</constant></term>
|
||||
|
||||
<listitem><para>The bus connection has
|
||||
been created in a different process
|
||||
than the current one.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>The bus connection has been created in a
|
||||
different process than the current one.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_bus_acquire_name()</function>
|
||||
and <function>sd_bus_release_name()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_bus_acquire_name()</function> and
|
||||
<function>sd_bus_release_name()</function> interfaces are
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-bus</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_bus_new</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-bus</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_bus_new</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,119 +23,119 @@
|
||||
|
||||
<refentry id="sd_get_seats" conditional='HAVE_PAM'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_get_seats</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_get_seats</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_get_seats</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_get_seats</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_get_seats</refname>
|
||||
<refname>sd_get_sessions</refname>
|
||||
<refname>sd_get_uids</refname>
|
||||
<refname>sd_get_machine_names</refname>
|
||||
<refpurpose>Determine available seats, sessions, logged in users and virtual machines/containers</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_get_seats</refname>
|
||||
<refname>sd_get_sessions</refname>
|
||||
<refname>sd_get_uids</refname>
|
||||
<refname>sd_get_machine_names</refname>
|
||||
<refpurpose>Determine available seats, sessions, logged in users and virtual machines/containers</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_get_seats</function></funcdef>
|
||||
<paramdef>char ***<parameter>seats</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_get_seats</function></funcdef>
|
||||
<paramdef>char ***<parameter>seats</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_get_sessions</function></funcdef>
|
||||
<paramdef>char ***<parameter>sessions</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_get_sessions</function></funcdef>
|
||||
<paramdef>char ***<parameter>sessions</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_get_uids</function></funcdef>
|
||||
<paramdef>uid_t **<parameter>users</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_get_uids</function></funcdef>
|
||||
<paramdef>uid_t **<parameter>users</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_get_machine_names</function></funcdef>
|
||||
<paramdef>char ***<parameter>machines</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_get_machine_names</function></funcdef>
|
||||
<paramdef>char ***<parameter>machines</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_get_seats()</function> may be used
|
||||
to determine all currently available local
|
||||
seats. Returns a <constant>NULL</constant> terminated array of seat
|
||||
identifiers. The returned array and all strings it
|
||||
references need to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use. Note that instead of an empty array
|
||||
<constant>NULL</constant> may be returned and should be considered
|
||||
equivalent to an empty array.</para>
|
||||
<para><function>sd_get_seats()</function> may be used to determine
|
||||
all currently available local seats. Returns a
|
||||
<constant>NULL</constant> terminated array of seat identifiers.
|
||||
The returned array and all strings it references need to be freed
|
||||
with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use. Note that instead of an empty array
|
||||
<constant>NULL</constant> may be returned and should be considered
|
||||
equivalent to an empty array.</para>
|
||||
|
||||
<para>Similarly, <function>sd_get_sessions()</function> may
|
||||
be used to determine all current login sessions.</para>
|
||||
<para>Similarly, <function>sd_get_sessions()</function> may be
|
||||
used to determine all current login sessions.</para>
|
||||
|
||||
<para>Similarly, <function>sd_get_uids()</function> may
|
||||
be used to determine all Unix users who currently have login sessions.</para>
|
||||
<para>Similarly, <function>sd_get_uids()</function> may be used to
|
||||
determine all Unix users who currently have login sessions.</para>
|
||||
|
||||
<para>Similarly,
|
||||
<function>sd_get_machine_names()</function> may be
|
||||
used to determine all current virtual machines and
|
||||
containers on the system.</para>
|
||||
<para>Similarly, <function>sd_get_machine_names()</function> may
|
||||
be used to determine all current virtual machines and containers
|
||||
on the system.</para>
|
||||
|
||||
<para>Note that the returned lists are not sorted and in an undefined order.</para>
|
||||
</refsect1>
|
||||
<para>Note that the returned lists are not sorted and in an
|
||||
undefined order.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On success, <function>sd_get_seats()</function>,
|
||||
<function>sd_get_sessions()</function>,
|
||||
<function>sd_get_uids()</function> and
|
||||
<function>sd_get_machine_names()</function> return the
|
||||
number of entries in the arrays. On failure, these
|
||||
calls return a negative errno-style error code.</para>
|
||||
</refsect1>
|
||||
<para>On success, <function>sd_get_seats()</function>,
|
||||
<function>sd_get_sessions()</function>,
|
||||
<function>sd_get_uids()</function> and
|
||||
<function>sd_get_machine_names()</function> return the number of
|
||||
entries in the arrays. On failure, these calls return a negative
|
||||
errno-style error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_get_seats()</function>,
|
||||
<function>sd_get_sessions()</function>,
|
||||
<function>sd_get_uids()</function> and
|
||||
<function>sd_get_machine_names()</function> interfaces
|
||||
are available as a shared library, which can be compiled
|
||||
and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_get_seats()</function>,
|
||||
<function>sd_get_sessions()</function>,
|
||||
<function>sd_get_uids()</function> and
|
||||
<function>sd_get_machine_names()</function> interfaces are
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_session_get_seat</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_session_get_seat</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,115 +23,107 @@
|
||||
|
||||
<refentry id="sd_id128_get_machine">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_id128_get_machine</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_id128_get_machine</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_id128_get_machine</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_id128_get_machine</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_id128_get_machine</refname>
|
||||
<refname>sd_id128_get_boot</refname>
|
||||
<refpurpose>Retrieve 128-bit IDs</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_id128_get_machine</refname>
|
||||
<refname>sd_id128_get_boot</refname>
|
||||
<refpurpose>Retrieve 128-bit IDs</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-id128.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-id128.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_id128_get_machine</function></funcdef>
|
||||
<paramdef>sd_id128_t *<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_id128_get_machine</function></funcdef>
|
||||
<paramdef>sd_id128_t *<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_id128_get_boot</function></funcdef>
|
||||
<paramdef>sd_id128_t *<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_id128_get_boot</function></funcdef>
|
||||
<paramdef>sd_id128_t *<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_id128_get_machine()</function>
|
||||
returns the machine ID of the executing host. This
|
||||
reads and parses the
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
file. This function caches the machine ID internally
|
||||
to make retrieving the machine ID a cheap
|
||||
operation.</para>
|
||||
<para><function>sd_id128_get_machine()</function> returns the
|
||||
machine ID of the executing host. This reads and parses the
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
file. This function caches the machine ID internally to make
|
||||
retrieving the machine ID a cheap operation.</para>
|
||||
|
||||
<para><function>sd_id128_get_boot()</function> returns
|
||||
the boot ID of the executing kernel. This reads and
|
||||
parses the
|
||||
<filename>/proc/sys/kernel/random/boot_id</filename>
|
||||
file exposed by the kernel. It is randomly generated
|
||||
early at boot and is unique for every running kernel
|
||||
instance. See
|
||||
<citerefentry project='man-pages'><refentrytitle>random</refentrytitle><manvolnum>4</manvolnum></citerefentry>
|
||||
for more information. This function also internally
|
||||
caches the returned ID to make this call a cheap
|
||||
operation.</para>
|
||||
<para><function>sd_id128_get_boot()</function> returns the boot ID
|
||||
of the executing kernel. This reads and parses the
|
||||
<filename>/proc/sys/kernel/random/boot_id</filename> file exposed
|
||||
by the kernel. It is randomly generated early at boot and is
|
||||
unique for every running kernel instance. See
|
||||
<citerefentry project='man-pages'><refentrytitle>random</refentrytitle><manvolnum>4</manvolnum></citerefentry>
|
||||
for more information. This function also internally caches the
|
||||
returned ID to make this call a cheap operation.</para>
|
||||
|
||||
<para>Note that
|
||||
<function>sd_id128_get_boot()</function> always returns
|
||||
a UUID v4 compatible
|
||||
ID. <function>sd_id128_get_machine()</function> will
|
||||
also return a UUID v4-compatible ID on new
|
||||
installations but might not on older. It is possible
|
||||
to convert the machine ID into a UUID v4-compatible
|
||||
one. For more information, see
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
|
||||
<para>Note that <function>sd_id128_get_boot()</function> always
|
||||
returns a UUID v4 compatible ID.
|
||||
<function>sd_id128_get_machine()</function> will also return a
|
||||
UUID v4-compatible ID on new installations but might not on older.
|
||||
It is possible to convert the machine ID into a UUID v4-compatible
|
||||
one. For more information, see
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para>For more information about the
|
||||
<literal>sd_id128_t</literal> type see
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
<para>For more information about the <literal>sd_id128_t</literal>
|
||||
type see
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>The two calls return 0 on success (in which
|
||||
case <parameter>ret</parameter> is filled in), or a
|
||||
negative errno-style error code.</para>
|
||||
</refsect1>
|
||||
<para>The two calls return 0 on success (in which case
|
||||
<parameter>ret</parameter> is filled in), or a negative
|
||||
errno-style error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_id128_get_machine()</function>
|
||||
and <function>sd_id128_get_boot()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<literal>libsystemd</literal> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_id128_get_machine()</function> and
|
||||
<function>sd_id128_get_boot()</function> interfaces are available
|
||||
as a shared library, which can be compiled and linked to with the
|
||||
<literal>libsystemd</literal> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>random</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_randomize</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>random</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_randomize</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,94 +23,92 @@
|
||||
|
||||
<refentry id="sd_id128_randomize">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_id128_randomize</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_id128_randomize</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_id128_randomize</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_id128_randomize</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_id128_randomize</refname>
|
||||
<refpurpose>Generate 128-bit IDs</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_id128_randomize</refname>
|
||||
<refpurpose>Generate 128-bit IDs</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-id128.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-id128.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_id128_randomize</function></funcdef>
|
||||
<paramdef>sd_id128_t *<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_id128_randomize</function></funcdef>
|
||||
<paramdef>sd_id128_t *<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_id128_randomize()</function>
|
||||
generates a new randomized 128-bit ID and returns it
|
||||
in <parameter>ret</parameter>. Every invocation
|
||||
returns a new randomly generated ID. This uses the
|
||||
<filename>/dev/urandom</filename> kernel random number
|
||||
generator.</para>
|
||||
<para><function>sd_id128_randomize()</function> generates a new
|
||||
randomized 128-bit ID and returns it in
|
||||
<parameter>ret</parameter>. Every invocation returns a new
|
||||
randomly generated ID. This uses the
|
||||
<filename>/dev/urandom</filename> kernel random number
|
||||
generator.</para>
|
||||
|
||||
<para>Note that
|
||||
<function>sd_id128_randomize()</function> always returns
|
||||
a UUID v4-compatible ID.</para>
|
||||
<para>Note that <function>sd_id128_randomize()</function> always
|
||||
returns a UUID v4-compatible ID.</para>
|
||||
|
||||
<para>For more information about the
|
||||
<literal>sd_id128_t</literal> type, see
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
<para>For more information about the <literal>sd_id128_t</literal>
|
||||
type, see
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
|
||||
<option>--new-id</option> option may be used as a
|
||||
command line front-end for
|
||||
<function>sd_id128_randomize()</function>.</para>
|
||||
</refsect1>
|
||||
<para><citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>'s
|
||||
<option>--new-id</option> option may be used as a command line
|
||||
front-end for <function>sd_id128_randomize()</function>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>The call returns 0 on success (in which
|
||||
case <parameter>ret</parameter> is filled in), or a
|
||||
negative errno-style error code.</para>
|
||||
</refsect1>
|
||||
<para>The call returns 0 on success (in which case
|
||||
<parameter>ret</parameter> is filled in), or a negative
|
||||
errno-style error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_id128_randomize()</function> interface
|
||||
is available as a shared library, which can be compiled
|
||||
and linked to with the
|
||||
<literal>libsystemd</literal> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_id128_randomize()</function> interface is
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<literal>libsystemd</literal> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>random</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>random</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_machine</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,114 +23,110 @@
|
||||
|
||||
<refentry id="sd_id128_to_string">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_id128_to_string</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_id128_to_string</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_id128_to_string</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_id128_to_string</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_id128_to_string</refname>
|
||||
<refname>sd_id128_from_string</refname>
|
||||
<refpurpose>Format or parse 128-bit IDs as strings</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_id128_to_string</refname>
|
||||
<refname>sd_id128_from_string</refname>
|
||||
<refpurpose>Format or parse 128-bit IDs as strings</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-id128.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-id128.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>char *<function>sd_id128_to_string</function></funcdef>
|
||||
<paramdef>sd_id128_t <parameter>id</parameter>, char <parameter>s</parameter>[33]</paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>char *<function>sd_id128_to_string</function></funcdef>
|
||||
<paramdef>sd_id128_t <parameter>id</parameter>, char <parameter>s</parameter>[33]</paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_id128_from_string</function></funcdef>
|
||||
<paramdef>const char *<parameter>s</parameter>, sd_id128_t *<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_id128_from_string</function></funcdef>
|
||||
<paramdef>const char *<parameter>s</parameter>, sd_id128_t *<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_id128_to_string()</function>
|
||||
formats a 128-bit ID as a character string. It expects
|
||||
the ID and a string array capable of storing 33
|
||||
characters. The ID will be formatted as 32 lowercase
|
||||
hexadecimal digits and be terminated by a
|
||||
<constant>NUL</constant> byte.</para>
|
||||
<para><function>sd_id128_to_string()</function> formats a 128-bit
|
||||
ID as a character string. It expects the ID and a string array
|
||||
capable of storing 33 characters. The ID will be formatted as 32
|
||||
lowercase hexadecimal digits and be terminated by a
|
||||
<constant>NUL</constant> byte.</para>
|
||||
|
||||
<para><function>sd_id128_from_string()</function>
|
||||
implements the reverse operation: it takes a 33
|
||||
character string with 32 hexadecimal digits (either
|
||||
lowercase or uppercase, terminated by
|
||||
<constant>NUL</constant>) and parses them back into a
|
||||
128-bit ID returned in
|
||||
<parameter>ret</parameter>. Alternatively, this call
|
||||
can also parse a 37-character string with a 128-bit ID
|
||||
formatted as RFC UUID.</para>
|
||||
<para><function>sd_id128_from_string()</function> implements the
|
||||
reverse operation: it takes a 33 character string with 32
|
||||
hexadecimal digits (either lowercase or uppercase, terminated by
|
||||
<constant>NUL</constant>) and parses them back into a 128-bit ID
|
||||
returned in <parameter>ret</parameter>. Alternatively, this call
|
||||
can also parse a 37-character string with a 128-bit ID formatted
|
||||
as RFC UUID.</para>
|
||||
|
||||
<para>For more information about the
|
||||
<literal>sd_id128_t</literal> type see
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>. Note
|
||||
that these calls operate the same way on all
|
||||
architectures, i.e. the results do not depend on
|
||||
endianness.</para>
|
||||
<para>For more information about the <literal>sd_id128_t</literal>
|
||||
type see
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
Note that these calls operate the same way on all architectures,
|
||||
i.e. the results do not depend on endianness.</para>
|
||||
|
||||
<para>When formatting a 128-bit ID into a string, it is
|
||||
often easier to use a format string for
|
||||
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>. This
|
||||
is easily done using the
|
||||
<function>SD_ID128_FORMAT_STR</function> and
|
||||
<function>SD_ID128_FORMAT_VAL()</function> macros. For
|
||||
more information see
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
<para>When formatting a 128-bit ID into a string, it is often
|
||||
easier to use a format string for
|
||||
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
This is easily done using the
|
||||
<function>SD_ID128_FORMAT_STR</function> and
|
||||
<function>SD_ID128_FORMAT_VAL()</function> macros. For more
|
||||
information see
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para><function>sd_id128_to_string()</function> always
|
||||
succeeds and returns a pointer to the string array
|
||||
passed in. <function>sd_id128_from_string</function>
|
||||
returns 0 on success, in which case
|
||||
<parameter>ret</parameter> is filled in, or a negative
|
||||
errno-style error code.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_id128_to_string()</function> always succeeds
|
||||
and returns a pointer to the string array passed in.
|
||||
<function>sd_id128_from_string</function> returns 0 on success, in
|
||||
which case <parameter>ret</parameter> is filled in, or a negative
|
||||
errno-style error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_id128_to_string()</function>
|
||||
and <function>sd_id128_from_string()</function> interfaces are
|
||||
available as a shared library, which can be compiled and
|
||||
linked to with the <literal>libsystemd</literal> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_id128_to_string()</function> and
|
||||
<function>sd_id128_from_string()</function> interfaces are
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<literal>libsystemd</literal> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-id128</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,187 +22,179 @@
|
||||
-->
|
||||
|
||||
<refentry id="sd_is_fifo"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_is_fifo</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_is_fifo</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_is_fifo</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_is_fifo</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_is_fifo</refname>
|
||||
<refname>sd_is_socket</refname>
|
||||
<refname>sd_is_socket_inet</refname>
|
||||
<refname>sd_is_socket_unix</refname>
|
||||
<refname>sd_is_mq</refname>
|
||||
<refname>sd_is_special</refname>
|
||||
<refpurpose>Check the type of a file descriptor</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_is_fifo</refname>
|
||||
<refname>sd_is_socket</refname>
|
||||
<refname>sd_is_socket_inet</refname>
|
||||
<refname>sd_is_socket_unix</refname>
|
||||
<refname>sd_is_mq</refname>
|
||||
<refname>sd_is_special</refname>
|
||||
<refpurpose>Check the type of a file descriptor</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_fifo</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>path</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_fifo</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>path</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_socket</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>int <parameter>family</parameter></paramdef>
|
||||
<paramdef>int <parameter>type</parameter></paramdef>
|
||||
<paramdef>int <parameter>listening</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_socket</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>int <parameter>family</parameter></paramdef>
|
||||
<paramdef>int <parameter>type</parameter></paramdef>
|
||||
<paramdef>int <parameter>listening</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_socket_inet</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>int <parameter>family</parameter></paramdef>
|
||||
<paramdef>int <parameter>type</parameter></paramdef>
|
||||
<paramdef>int <parameter>listening</parameter></paramdef>
|
||||
<paramdef>uint16_t <parameter>port</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_socket_inet</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>int <parameter>family</parameter></paramdef>
|
||||
<paramdef>int <parameter>type</parameter></paramdef>
|
||||
<paramdef>int <parameter>listening</parameter></paramdef>
|
||||
<paramdef>uint16_t <parameter>port</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_socket_unix</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>int <parameter>type</parameter></paramdef>
|
||||
<paramdef>int <parameter>listening</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>path</parameter></paramdef>
|
||||
<paramdef>size_t <parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_socket_unix</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>int <parameter>type</parameter></paramdef>
|
||||
<paramdef>int <parameter>listening</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>path</parameter></paramdef>
|
||||
<paramdef>size_t <parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_mq</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>path</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_mq</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>path</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_special</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>path</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_is_special</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>path</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_is_fifo()</function> may be called
|
||||
to check whether the specified file descriptor refers
|
||||
to a FIFO or pipe. If the <parameter>path</parameter>
|
||||
parameter is not <constant>NULL</constant>, it is
|
||||
checked whether the FIFO is bound to the specified
|
||||
file system path.</para>
|
||||
<para><function>sd_is_fifo()</function> may be called to check
|
||||
whether the specified file descriptor refers to a FIFO or pipe. If
|
||||
the <parameter>path</parameter> parameter is not
|
||||
<constant>NULL</constant>, it is checked whether the FIFO is bound
|
||||
to the specified file system path.</para>
|
||||
|
||||
<para><function>sd_is_socket()</function> may be
|
||||
called to check whether the specified file descriptor
|
||||
refers to a socket. If the
|
||||
<parameter>family</parameter> parameter is not
|
||||
<constant>AF_UNSPEC</constant>, it is checked whether
|
||||
the socket is of the specified family (AF_UNIX,
|
||||
<constant>AF_INET</constant>, ...). If the
|
||||
<parameter>type</parameter> parameter is not 0, it is
|
||||
checked whether the socket is of the specified type
|
||||
(<constant>SOCK_STREAM</constant>,
|
||||
<constant>SOCK_DGRAM</constant>, ...). If the
|
||||
<parameter>listening</parameter> parameter is positive,
|
||||
it is checked whether the socket is in accepting mode,
|
||||
i.e. <function>listen()</function> has been called for
|
||||
it. If <parameter>listening</parameter> is 0, it is
|
||||
checked whether the socket is not in this mode. If the
|
||||
parameter is negative, no such check is made. The
|
||||
<parameter>listening</parameter> parameter should only
|
||||
be used for stream sockets and should be set to a
|
||||
negative value otherwise.</para>
|
||||
<para><function>sd_is_socket()</function> may be called to check
|
||||
whether the specified file descriptor refers to a socket. If the
|
||||
<parameter>family</parameter> parameter is not
|
||||
<constant>AF_UNSPEC</constant>, it is checked whether the socket
|
||||
is of the specified family (AF_UNIX, <constant>AF_INET</constant>,
|
||||
...). If the <parameter>type</parameter> parameter is not 0, it is
|
||||
checked whether the socket is of the specified type
|
||||
(<constant>SOCK_STREAM</constant>,
|
||||
<constant>SOCK_DGRAM</constant>, ...). If the
|
||||
<parameter>listening</parameter> parameter is positive, it is
|
||||
checked whether the socket is in accepting mode, i.e.
|
||||
<function>listen()</function> has been called for it. If
|
||||
<parameter>listening</parameter> is 0, it is checked whether the
|
||||
socket is not in this mode. If the parameter is negative, no such
|
||||
check is made. The <parameter>listening</parameter> parameter
|
||||
should only be used for stream sockets and should be set to a
|
||||
negative value otherwise.</para>
|
||||
|
||||
<para><function>sd_is_socket_inet()</function> is
|
||||
similar to <function>sd_is_socket()</function>, but
|
||||
optionally checks the IPv4 or IPv6 port number the
|
||||
socket is bound to, unless <parameter>port</parameter>
|
||||
is zero. For this call <parameter>family</parameter>
|
||||
must be passed as either <constant>AF_UNSPEC</constant>, <constant>AF_INET</constant>, or
|
||||
<constant>AF_INET6</constant>.</para>
|
||||
<para><function>sd_is_socket_inet()</function> is similar to
|
||||
<function>sd_is_socket()</function>, but optionally checks the
|
||||
IPv4 or IPv6 port number the socket is bound to, unless
|
||||
<parameter>port</parameter> is zero. For this call
|
||||
<parameter>family</parameter> must be passed as either
|
||||
<constant>AF_UNSPEC</constant>, <constant>AF_INET</constant>, or
|
||||
<constant>AF_INET6</constant>.</para>
|
||||
|
||||
<para><function>sd_is_socket_unix()</function> is
|
||||
similar to <function>sd_is_socket()</function> but
|
||||
optionally checks the <constant>AF_UNIX</constant> path the socket is bound
|
||||
to, unless the <parameter>path</parameter> parameter
|
||||
is <constant>NULL</constant>. For normal file system <constant>AF_UNIX</constant> sockets,
|
||||
set the <parameter>length</parameter> parameter to 0. For
|
||||
Linux abstract namespace sockets, set the
|
||||
<parameter>length</parameter> to the size of the
|
||||
address, including the initial 0 byte, and set the
|
||||
<parameter>path</parameter> to the initial 0 byte of
|
||||
the socket address.</para>
|
||||
<para><function>sd_is_socket_unix()</function> is similar to
|
||||
<function>sd_is_socket()</function> but optionally checks the
|
||||
<constant>AF_UNIX</constant> path the socket is bound to, unless
|
||||
the <parameter>path</parameter> parameter is
|
||||
<constant>NULL</constant>. For normal file system
|
||||
<constant>AF_UNIX</constant> sockets, set the
|
||||
<parameter>length</parameter> parameter to 0. For Linux abstract
|
||||
namespace sockets, set the <parameter>length</parameter> to the
|
||||
size of the address, including the initial 0 byte, and set the
|
||||
<parameter>path</parameter> to the initial 0 byte of the socket
|
||||
address.</para>
|
||||
|
||||
<para><function>sd_is_mq()</function> may be called to
|
||||
check whether the specified file descriptor refers to
|
||||
a POSIX message queue. If the
|
||||
<parameter>path</parameter> parameter is not
|
||||
<constant>NULL</constant>, it is checked whether the
|
||||
message queue is bound to the specified name.</para>
|
||||
<para><function>sd_is_mq()</function> may be called to check
|
||||
whether the specified file descriptor refers to a POSIX message
|
||||
queue. If the <parameter>path</parameter> parameter is not
|
||||
<constant>NULL</constant>, it is checked whether the message queue
|
||||
is bound to the specified name.</para>
|
||||
|
||||
<para><function>sd_is_special()</function> may be
|
||||
called to check whether the specified file descriptor
|
||||
refers to a special file. If the
|
||||
<parameter>path</parameter> parameter is not
|
||||
<constant>NULL</constant>, it is checked whether the file
|
||||
descriptor is bound to the specified file
|
||||
name. Special files in this context are character
|
||||
device nodes and files in <filename>/proc</filename>
|
||||
or <filename>/sys</filename>.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_is_special()</function> may be called to check
|
||||
whether the specified file descriptor refers to a special file. If
|
||||
the <parameter>path</parameter> parameter is not
|
||||
<constant>NULL</constant>, it is checked whether the file
|
||||
descriptor is bound to the specified file name. Special files in
|
||||
this context are character device nodes and files in
|
||||
<filename>/proc</filename> or <filename>/sys</filename>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On failure, these calls return a negative
|
||||
errno-style error code. If the file descriptor is of
|
||||
the specified type and bound to the specified address,
|
||||
a positive return value is returned, otherwise
|
||||
zero.</para>
|
||||
</refsect1>
|
||||
<para>On failure, these calls return a negative errno-style error
|
||||
code. If the file descriptor is of the specified type and bound to
|
||||
the specified address, a positive return value is returned,
|
||||
otherwise zero.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
|
||||
<xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
|
||||
|
||||
<para>Internally, these function use a combination of
|
||||
<filename>fstat()</filename> and
|
||||
<filename>getsockname()</filename> to check the file
|
||||
descriptor type and where it is bound to.</para>
|
||||
</refsect1>
|
||||
<para>Internally, these function use a combination of
|
||||
<filename>fstat()</filename> and
|
||||
<filename>getsockname()</filename> to check the file descriptor
|
||||
type and where it is bound to.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,198 +23,186 @@
|
||||
|
||||
<refentry id="sd_journal_add_match">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_add_match</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_add_match</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_add_match</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_add_match</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_add_match</refname>
|
||||
<refname>sd_journal_add_disjunction</refname>
|
||||
<refname>sd_journal_add_conjunction</refname>
|
||||
<refname>sd_journal_flush_matches</refname>
|
||||
<refpurpose>Add or remove entry matches</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_add_match</refname>
|
||||
<refname>sd_journal_add_disjunction</refname>
|
||||
<refname>sd_journal_add_conjunction</refname>
|
||||
<refname>sd_journal_flush_matches</refname>
|
||||
<refpurpose>Add or remove entry matches</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_add_match</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const void *<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t <parameter>size</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_add_match</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const void *<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t <parameter>size</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_add_disjunction</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_add_disjunction</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_add_conjunction</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_add_conjunction</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>void <function>sd_journal_flush_matches</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>void <function>sd_journal_flush_matches</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_add_match()</function> adds
|
||||
a match by which to filter the entries of the journal
|
||||
file. Matches applied with this call will filter what
|
||||
can be iterated through and read from the journal file
|
||||
via calls like
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>. Matches
|
||||
are of the form <literal>FIELD=value</literal>, where
|
||||
the field part is a short uppercase string consisting
|
||||
only of 0-9, A-Z and the underscore. It may not begin
|
||||
with two underscores or be the empty string. The value
|
||||
part may be any value, including binary. If a match is
|
||||
applied, only entries with this field set will be
|
||||
iterated. Multiple matches may be active at the same
|
||||
time: If they apply to different fields, only entries
|
||||
with both fields set like this will be iterated. If
|
||||
they apply to the same fields, only entries where the
|
||||
field takes one of the specified values will be
|
||||
iterated. Well known fields are documented in
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>. Whenever
|
||||
a new match is added the current entry position is
|
||||
reset, and
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry> (or a similar call)
|
||||
needs to be called before entries can be read
|
||||
again.</para>
|
||||
<para><function>sd_journal_add_match()</function> adds a match by
|
||||
which to filter the entries of the journal file. Matches applied
|
||||
with this call will filter what can be iterated through and read
|
||||
from the journal file via calls like
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
Matches are of the form <literal>FIELD=value</literal>, where the
|
||||
field part is a short uppercase string consisting only of 0-9, A-Z
|
||||
and the underscore. It may not begin with two underscores or be
|
||||
the empty string. The value part may be any value, including
|
||||
binary. If a match is applied, only entries with this field set
|
||||
will be iterated. Multiple matches may be active at the same time:
|
||||
If they apply to different fields, only entries with both fields
|
||||
set like this will be iterated. If they apply to the same fields,
|
||||
only entries where the field takes one of the specified values
|
||||
will be iterated. Well known fields are documented in
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
|
||||
Whenever a new match is added the current entry position is reset,
|
||||
and
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
(or a similar call) needs to be called before entries can be read
|
||||
again.</para>
|
||||
|
||||
<para><function>sd_journal_add_disjunction()</function>
|
||||
may be used to insert a disjunction (i.e. logical OR)
|
||||
in the match list. If this call is invoked, all
|
||||
previously added matches since the last invocation of
|
||||
<function>sd_journal_add_disjunction()</function> or
|
||||
<function>sd_journal_add_conjunction()</function> are
|
||||
combined in an OR with all matches added afterwards,
|
||||
until
|
||||
<function>sd_journal_add_disjunction()</function> or
|
||||
<function>sd_journal_add_conjunction()</function> is
|
||||
invoked again to begin the next OR or AND
|
||||
term. </para>
|
||||
<para><function>sd_journal_add_disjunction()</function> may be
|
||||
used to insert a disjunction (i.e. logical OR) in the match list.
|
||||
If this call is invoked, all previously added matches since the
|
||||
last invocation of
|
||||
<function>sd_journal_add_disjunction()</function> or
|
||||
<function>sd_journal_add_conjunction()</function> are combined in
|
||||
an OR with all matches added afterwards, until
|
||||
<function>sd_journal_add_disjunction()</function> or
|
||||
<function>sd_journal_add_conjunction()</function> is invoked again
|
||||
to begin the next OR or AND term. </para>
|
||||
|
||||
<para><function>sd_journal_add_conjunction()</function>
|
||||
may be used to insert a conjunction (i.e. logical AND)
|
||||
in the match list. If this call is invoked, all
|
||||
previously added matches since the last invocation of
|
||||
<function>sd_journal_add_conjunction()</function> are
|
||||
combined in an AND with all matches added afterwards,
|
||||
until
|
||||
<function>sd_journal_add_conjunction()</function> is
|
||||
invoked again to begin the next AND term. The
|
||||
combination of
|
||||
<function>sd_journal_add_match()</function>,
|
||||
<function>sd_journal_add_disjunction()</function> and
|
||||
<function>sd_journal_add_conjunction()</function> may
|
||||
be used to build complex search terms, even though
|
||||
full logical expressions are not available. Note that
|
||||
<function>sd_journal_add_conjunction()</function>
|
||||
operates one level 'higher' than
|
||||
<function>sd_journal_add_disjunction()</function>. It
|
||||
is hence possible to build an expression of AND terms,
|
||||
consisting of OR terms, consisting of AND terms,
|
||||
consisting of OR terms of matches (the latter OR
|
||||
expression is implicitly created for matches with the
|
||||
same field name, see above).</para>
|
||||
<para><function>sd_journal_add_conjunction()</function> may be
|
||||
used to insert a conjunction (i.e. logical AND) in the match list.
|
||||
If this call is invoked, all previously added matches since the
|
||||
last invocation of
|
||||
<function>sd_journal_add_conjunction()</function> are combined in
|
||||
an AND with all matches added afterwards, until
|
||||
<function>sd_journal_add_conjunction()</function> is invoked again
|
||||
to begin the next AND term. The combination of
|
||||
<function>sd_journal_add_match()</function>,
|
||||
<function>sd_journal_add_disjunction()</function> and
|
||||
<function>sd_journal_add_conjunction()</function> may be used to
|
||||
build complex search terms, even though full logical expressions
|
||||
are not available. Note that
|
||||
<function>sd_journal_add_conjunction()</function> operates one
|
||||
level 'higher' than
|
||||
<function>sd_journal_add_disjunction()</function>. It is hence
|
||||
possible to build an expression of AND terms, consisting of OR
|
||||
terms, consisting of AND terms, consisting of OR terms of matches
|
||||
(the latter OR expression is implicitly created for matches with
|
||||
the same field name, see above).</para>
|
||||
|
||||
<para><function>sd_journal_flush_matches()</function>
|
||||
may be used to flush all matches, disjunction and
|
||||
conjunction terms again. After this call all filtering
|
||||
is removed and all entries in the journal will be
|
||||
iterated again.</para>
|
||||
<para><function>sd_journal_flush_matches()</function> may be used
|
||||
to flush all matches, disjunction and conjunction terms again.
|
||||
After this call all filtering is removed and all entries in the
|
||||
journal will be iterated again.</para>
|
||||
|
||||
<para>Note that filtering via matches only applies to
|
||||
the way the journal is read, it has no effect on storage
|
||||
on disk.</para>
|
||||
</refsect1>
|
||||
<para>Note that filtering via matches only applies to the way the
|
||||
journal is read, it has no effect on storage on disk.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para><function>sd_journal_add_match()</function>,
|
||||
<function>sd_journal_add_disjunction()</function> and
|
||||
<function>sd_journal_add_conjunction()</function>
|
||||
return 0 on success or a negative errno-style error
|
||||
code. <function>sd_journal_flush_matches()</function>
|
||||
returns nothing.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_add_match()</function>,
|
||||
<function>sd_journal_add_disjunction()</function> and
|
||||
<function>sd_journal_add_conjunction()</function>
|
||||
return 0 on success or a negative errno-style error
|
||||
code. <function>sd_journal_flush_matches()</function>
|
||||
returns nothing.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_add_match()</function>,
|
||||
<function>sd_journal_add_disjunction()</function>,
|
||||
<function>sd_journal_add_conjunction()</function> and
|
||||
<function>sd_journal_flush_matches()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_add_match()</function>,
|
||||
<function>sd_journal_add_disjunction()</function>,
|
||||
<function>sd_journal_add_conjunction()</function> and
|
||||
<function>sd_journal_flush_matches()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<para>The following example adds matches to a journal
|
||||
context object to iterate only through messages
|
||||
generated by the Avahi service at the four error log
|
||||
levels, plus all messages of the message ID
|
||||
03bb1dab98ab4ecfbf6fff2738bdd964 coming from any
|
||||
service (this example lacks the necessary error
|
||||
checking):</para>
|
||||
<para>The following example adds matches to a journal context
|
||||
object to iterate only through messages generated by the Avahi
|
||||
service at the four error log levels, plus all messages of the
|
||||
message ID 03bb1dab98ab4ecfbf6fff2738bdd964 coming from any
|
||||
service (this example lacks the necessary error checking):</para>
|
||||
|
||||
<programlisting>...
|
||||
<programlisting>...
|
||||
int add_matches(sd_journal *j) {
|
||||
sd_journal_add_match(j, "_SYSTEMD_UNIT=avahi-daemon.service", 0);
|
||||
sd_journal_add_match(j, "PRIORITY=0", 0);
|
||||
sd_journal_add_match(j, "PRIORITY=1", 0);
|
||||
sd_journal_add_match(j, "PRIORITY=2", 0);
|
||||
sd_journal_add_match(j, "PRIORITY=3", 0);
|
||||
sd_journal_add_disjunction(j);
|
||||
sd_journal_add_match(j, "MESSAGE_ID=03bb1dab98ab4ecfbf6fff2738bdd964", 0);
|
||||
sd_journal_add_match(j, "_SYSTEMD_UNIT=avahi-daemon.service", 0);
|
||||
sd_journal_add_match(j, "PRIORITY=0", 0);
|
||||
sd_journal_add_match(j, "PRIORITY=1", 0);
|
||||
sd_journal_add_match(j, "PRIORITY=2", 0);
|
||||
sd_journal_add_match(j, "PRIORITY=3", 0);
|
||||
sd_journal_add_disjunction(j);
|
||||
sd_journal_add_match(j, "MESSAGE_ID=03bb1dab98ab4ecfbf6fff2738bdd964", 0);
|
||||
}</programlisting>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,119 +23,115 @@
|
||||
|
||||
<refentry id="sd_journal_get_catalog">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_catalog</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_catalog</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_catalog</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_catalog</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_catalog</refname>
|
||||
<refname>sd_journal_get_catalog_for_message_id</refname>
|
||||
<refpurpose>Retrieve message catalog entry</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_catalog</refname>
|
||||
<refname>sd_journal_get_catalog_for_message_id</refname>
|
||||
<refpurpose>Retrieve message catalog entry</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_catalog</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>char **<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_catalog</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>char **<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_catalog_for_message_id</function></funcdef>
|
||||
<paramdef>sd_id128_t <parameter>id</parameter></paramdef>
|
||||
<paramdef>char **<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_catalog_for_message_id</function></funcdef>
|
||||
<paramdef>sd_id128_t <parameter>id</parameter></paramdef>
|
||||
<paramdef>char **<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_get_catalog()</function>
|
||||
retrieves a message catalog entry for the current
|
||||
journal entry. This will look up an entry in the
|
||||
message catalog by using the
|
||||
<literal>MESSAGE_ID=</literal> field of the current
|
||||
journal entry. Before returning the entry all journal
|
||||
field names in the catalog entry text enclosed in "@"
|
||||
will be replaced by the respective field values of the
|
||||
current entry. If a field name referenced in the
|
||||
message catalog entry does not exist, in the current
|
||||
journal entry, the "@" will be removed, but the field
|
||||
name otherwise left untouched.</para>
|
||||
<para><function>sd_journal_get_catalog()</function> retrieves a
|
||||
message catalog entry for the current journal entry. This will
|
||||
look up an entry in the message catalog by using the
|
||||
<literal>MESSAGE_ID=</literal> field of the current journal entry.
|
||||
Before returning the entry all journal field names in the catalog
|
||||
entry text enclosed in "@" will be replaced by the respective
|
||||
field values of the current entry. If a field name referenced in
|
||||
the message catalog entry does not exist, in the current journal
|
||||
entry, the "@" will be removed, but the field name otherwise left
|
||||
untouched.</para>
|
||||
|
||||
<para><function>sd_journal_get_catalog_for_message_id()</function>
|
||||
works similar to
|
||||
<function>sd_journal_get_catalog()</function> but the
|
||||
entry is looked up by the specified message ID (no
|
||||
open journal context is necessary for this), and no
|
||||
field substitution is performed.</para>
|
||||
<para><function>sd_journal_get_catalog_for_message_id()</function>
|
||||
works similar to <function>sd_journal_get_catalog()</function> but
|
||||
the entry is looked up by the specified message ID (no open
|
||||
journal context is necessary for this), and no field substitution
|
||||
is performed.</para>
|
||||
|
||||
<para>For more information about the journal message
|
||||
catalog please refer to the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/catalog">Journal
|
||||
Message Catalogs</ulink> documentation page.</para>
|
||||
</refsect1>
|
||||
<para>For more information about the journal message catalog
|
||||
please refer to the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/catalog">Journal
|
||||
Message Catalogs</ulink> documentation page.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para><function>sd_journal_get_catalog()</function>
|
||||
and
|
||||
<function>sd_journal_get_catalog_for_message_id()</function>
|
||||
return 0 on success or a negative errno-style error
|
||||
code. If no matching message catalog entry is found,
|
||||
-ENOENT is returned.</para>
|
||||
<para><function>sd_journal_get_catalog()</function> and
|
||||
<function>sd_journal_get_catalog_for_message_id()</function>
|
||||
return 0 on success or a negative errno-style error code. If no
|
||||
matching message catalog entry is found, -ENOENT is
|
||||
returned.</para>
|
||||
|
||||
<para>On successful return, <parameter>ret</parameter>
|
||||
points to a new string, which must be freed with
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>On successful return, <parameter>ret</parameter> points to a
|
||||
new string, which must be freed with
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_get_catalog()</function> and
|
||||
<function>sd_journal_get_catalog_for_message_id()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_get_catalog()</function> and
|
||||
<function>sd_journal_get_catalog_for_message_id()</function>
|
||||
interfaces are available as a shared library, which can be
|
||||
compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>malloc</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>malloc</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,128 +23,122 @@
|
||||
|
||||
<refentry id="sd_journal_get_cursor">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_cursor</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_cursor</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_cursor</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_cursor</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_cursor</refname>
|
||||
<refname>sd_journal_test_cursor</refname>
|
||||
<refpurpose>Get cursor string for or test cursor string against the current journal entry</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_cursor</refname>
|
||||
<refname>sd_journal_test_cursor</refname>
|
||||
<refpurpose>Get cursor string for or test cursor string against the current journal entry</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_cursor</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>char **<parameter>cursor</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_cursor</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>char **<parameter>cursor</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_test_cursor</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>cursor</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_test_cursor</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>cursor</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_get_cursor()</function>
|
||||
returns a cursor string for the current journal
|
||||
entry. A cursor is a serialization of the current
|
||||
journal position formatted as text. The string only
|
||||
contains printable characters and can be passed around
|
||||
in text form. The cursor identifies a journal entry
|
||||
globally and in a stable way and may be used to later
|
||||
seek to it via
|
||||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>. The
|
||||
cursor string should be considered opaque and not be
|
||||
parsed by clients. Seeking to a cursor position
|
||||
without the specific entry being available locally
|
||||
will seek to the next closest (in terms of time)
|
||||
available entry. The call takes two arguments: a
|
||||
journal context object and a pointer to a string
|
||||
pointer where the cursor string will be placed. The
|
||||
string is allocated via libc
|
||||
<citerefentry><refentrytitle>malloc</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and should be freed after use with
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
<para><function>sd_journal_get_cursor()</function> returns a
|
||||
cursor string for the current journal entry. A cursor is a
|
||||
serialization of the current journal position formatted as text.
|
||||
The string only contains printable characters and can be passed
|
||||
around in text form. The cursor identifies a journal entry
|
||||
globally and in a stable way and may be used to later seek to it
|
||||
via
|
||||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
The cursor string should be considered opaque and not be parsed by
|
||||
clients. Seeking to a cursor position without the specific entry
|
||||
being available locally will seek to the next closest (in terms of
|
||||
time) available entry. The call takes two arguments: a journal
|
||||
context object and a pointer to a string pointer where the cursor
|
||||
string will be placed. The string is allocated via libc
|
||||
<citerefentry><refentrytitle>malloc</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and should be freed after use with
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para>Note that
|
||||
<function>sd_journal_get_cursor()</function> will not
|
||||
work before
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
(or related call) has been called at least once, in
|
||||
order to position the read pointer at a valid
|
||||
entry.</para>
|
||||
<para>Note that <function>sd_journal_get_cursor()</function> will
|
||||
not work before
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
(or related call) has been called at least once, in order to
|
||||
position the read pointer at a valid entry.</para>
|
||||
|
||||
<para><function>sd_journal_test_cursor()</function>
|
||||
may be used to check whether the current position in
|
||||
the journal matches the specified cursor. This is
|
||||
useful since cursor strings do not uniquely identify
|
||||
an entry: the same entry might be referred to by
|
||||
multiple different cursor strings, and hence string
|
||||
comparing cursors is not possible. Use this call to
|
||||
verify after an invocation of
|
||||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
whether the entry being sought to was actually found
|
||||
in the journal or the next closest entry was used
|
||||
instead.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_test_cursor()</function>
|
||||
may be used to check whether the current position in
|
||||
the journal matches the specified cursor. This is
|
||||
useful since cursor strings do not uniquely identify
|
||||
an entry: the same entry might be referred to by
|
||||
multiple different cursor strings, and hence string
|
||||
comparing cursors is not possible. Use this call to
|
||||
verify after an invocation of
|
||||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
whether the entry being sought to was actually found
|
||||
in the journal or the next closest entry was used
|
||||
instead.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para><function>sd_journal_get_cursor()</function>
|
||||
returns 0 on success or a negative errno-style error
|
||||
code. <function>sd_journal_test_cursor()</function>
|
||||
returns positive if the current entry matches the
|
||||
specified cursor, 0 if it does not match the specified
|
||||
cursor or a negative errno-style error code on
|
||||
failure.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_get_cursor()</function> returns 0 on
|
||||
success or a negative errno-style error code.
|
||||
<function>sd_journal_test_cursor()</function> returns positive if
|
||||
the current entry matches the specified cursor, 0 if it does not
|
||||
match the specified cursor or a negative errno-style error code on
|
||||
failure.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_get_cursor()</function>
|
||||
and <function>sd_journal_test_cursor()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_get_cursor()</function> and
|
||||
<function>sd_journal_test_cursor()</function> interfaces are
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,132 +23,123 @@
|
||||
|
||||
<refentry id="sd_journal_get_cutoff_realtime_usec">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_cutoff_realtime_usec</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_cutoff_realtime_usec</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_cutoff_realtime_usec</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_cutoff_realtime_usec</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_cutoff_realtime_usec</refname>
|
||||
<refname>sd_journal_get_cutoff_monotonic_usec</refname>
|
||||
<refpurpose>Read cut-off timestamps from the current journal entry</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_cutoff_realtime_usec</refname>
|
||||
<refname>sd_journal_get_cutoff_monotonic_usec</refname>
|
||||
<refpurpose>Read cut-off timestamps from the current journal entry</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_cutoff_realtime_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>from</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>to</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_cutoff_realtime_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>from</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>to</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_cutoff_monotonic_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>sd_id128_t <parameter>boot_id</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>from</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>to</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_cutoff_monotonic_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>sd_id128_t <parameter>boot_id</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>from</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>to</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_get_cutoff_realtime_usec()</function>
|
||||
retrieves the realtime (wallclock) timestamps of the
|
||||
first and last entries accessible in the journal. It
|
||||
takes three arguments: the journal context object
|
||||
<parameter>j</parameter> and two pointers
|
||||
<parameter>from</parameter> and
|
||||
<parameter>to</parameter> pointing at 64-bit unsigned
|
||||
integers to store the timestamps in. The timestamps
|
||||
are in microseconds since the epoch,
|
||||
i.e. <constant>CLOCK_REALTIME</constant>. Either one
|
||||
of the two timestamp arguments may be passed as
|
||||
<constant>NULL</constant> in case the timestamp is not
|
||||
needed, but not both.</para>
|
||||
<para><function>sd_journal_get_cutoff_realtime_usec()</function>
|
||||
retrieves the realtime (wallclock) timestamps of the first and
|
||||
last entries accessible in the journal. It takes three arguments:
|
||||
the journal context object <parameter>j</parameter> and two
|
||||
pointers <parameter>from</parameter> and <parameter>to</parameter>
|
||||
pointing at 64-bit unsigned integers to store the timestamps in.
|
||||
The timestamps are in microseconds since the epoch, i.e.
|
||||
<constant>CLOCK_REALTIME</constant>. Either one of the two
|
||||
timestamp arguments may be passed as <constant>NULL</constant> in
|
||||
case the timestamp is not needed, but not both.</para>
|
||||
|
||||
<para><function>sd_journal_get_cutoff_monotonic_usec()</function>
|
||||
retrieves the monotonic timestamps of the first and
|
||||
last entries accessible in the journal. It takes three
|
||||
arguments: the journal context object
|
||||
<parameter>j</parameter>, a 128-bit identifier for the
|
||||
boot <parameter>boot_id</parameter>, and two pointers
|
||||
to 64-bit unsigned integers to store the timestamps,
|
||||
<parameter>from</parameter> and
|
||||
<parameter>to</parameter>. The timestamps are in
|
||||
microseconds since boot-up of the specific boot,
|
||||
i.e. <constant>CLOCK_MONOTONIC</constant>. Since the
|
||||
monotonic clock begins new with every reboot it only
|
||||
defines a well-defined point in time when used
|
||||
together with an identifier identifying the boot, see
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information. The function will return the
|
||||
timestamps for the boot identified by the passed boot
|
||||
ID. Either one of the two timestamp arguments may be
|
||||
passed as <constant>NULL</constant> in case the
|
||||
timestamp is not needed, but not both.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_get_cutoff_monotonic_usec()</function>
|
||||
retrieves the monotonic timestamps of the first and last entries
|
||||
accessible in the journal. It takes three arguments: the journal
|
||||
context object <parameter>j</parameter>, a 128-bit identifier for
|
||||
the boot <parameter>boot_id</parameter>, and two pointers to
|
||||
64-bit unsigned integers to store the timestamps,
|
||||
<parameter>from</parameter> and <parameter>to</parameter>. The
|
||||
timestamps are in microseconds since boot-up of the specific boot,
|
||||
i.e. <constant>CLOCK_MONOTONIC</constant>. Since the monotonic
|
||||
clock begins new with every reboot it only defines a well-defined
|
||||
point in time when used together with an identifier identifying
|
||||
the boot, see
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information. The function will return the timestamps for
|
||||
the boot identified by the passed boot ID. Either one of the two
|
||||
timestamp arguments may be passed as <constant>NULL</constant> in
|
||||
case the timestamp is not needed, but not both.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para><function>sd_journal_get_cutoff_realtime_usec()</function>
|
||||
and
|
||||
<function>sd_journal_get_cutoff_monotonic_usec()</function>
|
||||
return 1 on success, 0 if not suitable entries are in
|
||||
the journal or a negative errno-style error code.</para>
|
||||
<para><function>sd_journal_get_cutoff_realtime_usec()</function>
|
||||
and <function>sd_journal_get_cutoff_monotonic_usec()</function>
|
||||
return 1 on success, 0 if not suitable entries are in the journal
|
||||
or a negative errno-style error code.</para>
|
||||
|
||||
<para>Locations pointed to by parameters
|
||||
<parameter>from</parameter> and
|
||||
<parameter>to</parameter> will be set only if the
|
||||
return value is positive, and obviously, the
|
||||
parameters are non-null.</para>
|
||||
</refsect1>
|
||||
<para>Locations pointed to by parameters
|
||||
<parameter>from</parameter> and <parameter>to</parameter> will be
|
||||
set only if the return value is positive, and obviously, the
|
||||
parameters are non-null.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The
|
||||
<function>sd_journal_get_cutoff_realtime_usec()</function>
|
||||
and
|
||||
<function>sd_journal_get_cutoff_monotonic_usec()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The
|
||||
<function>sd_journal_get_cutoff_realtime_usec()</function> and
|
||||
<function>sd_journal_get_cutoff_monotonic_usec()</function>
|
||||
interfaces are available as a shared library, which can be
|
||||
compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,228 +23,213 @@
|
||||
|
||||
<refentry id="sd_journal_get_data">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_data</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_data</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_data</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_data</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_data</refname>
|
||||
<refname>sd_journal_enumerate_data</refname>
|
||||
<refname>sd_journal_restart_data</refname>
|
||||
<refname>SD_JOURNAL_FOREACH_DATA</refname>
|
||||
<refname>sd_journal_set_data_threshold</refname>
|
||||
<refname>sd_journal_get_data_threshold</refname>
|
||||
<refpurpose>Read data fields from the current journal entry</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_data</refname>
|
||||
<refname>sd_journal_enumerate_data</refname>
|
||||
<refname>sd_journal_restart_data</refname>
|
||||
<refname>SD_JOURNAL_FOREACH_DATA</refname>
|
||||
<refname>sd_journal_set_data_threshold</refname>
|
||||
<refname>sd_journal_get_data_threshold</refname>
|
||||
<refpurpose>Read data fields from the current journal entry</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_data</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>field</parameter></paramdef>
|
||||
<paramdef>const void **<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t *<parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_data</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>field</parameter></paramdef>
|
||||
<paramdef>const void **<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t *<parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_enumerate_data</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const void **<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t *<parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_enumerate_data</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const void **<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t *<parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>void <function>sd_journal_restart_data</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>void <function>sd_journal_restart_data</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef><function>SD_JOURNAL_FOREACH_DATA</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const void *<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t <parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef><function>SD_JOURNAL_FOREACH_DATA</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const void *<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t <parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_set_data_threshold</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>size_t <parameter>sz</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_set_data_threshold</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>size_t <parameter>sz</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_data_threshold</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>size_t *<parameter>sz</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_data_threshold</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>size_t *<parameter>sz</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_get_data()</function> gets
|
||||
the data object associated with a specific field from
|
||||
the current journal entry. It takes four arguments:
|
||||
the journal context object, a string with the field
|
||||
name to request, plus a pair of pointers to
|
||||
pointer/size variables where the data object and its
|
||||
size shall be stored in. The field name should be an
|
||||
entry field name. Well-known field names are listed in
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>. The
|
||||
returned data is in a read-only memory map and is only
|
||||
valid until the next invocation of
|
||||
<function>sd_journal_get_data()</function> or
|
||||
<function>sd_journal_enumerate_data()</function>, or
|
||||
the read pointer is altered. Note that the data
|
||||
returned will be prefixed with the field name and
|
||||
'='. Also note that by default data fields larger than
|
||||
64K might get truncated to 64K. This threshold may be
|
||||
changed and turned off with
|
||||
<function>sd_journal_set_data_threshold()</function> (see
|
||||
below).</para>
|
||||
<para><function>sd_journal_get_data()</function> gets the data
|
||||
object associated with a specific field from the current journal
|
||||
entry. It takes four arguments: the journal context object, a
|
||||
string with the field name to request, plus a pair of pointers to
|
||||
pointer/size variables where the data object and its size shall be
|
||||
stored in. The field name should be an entry field name.
|
||||
Well-known field names are listed in
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
|
||||
The returned data is in a read-only memory map and is only valid
|
||||
until the next invocation of
|
||||
<function>sd_journal_get_data()</function> or
|
||||
<function>sd_journal_enumerate_data()</function>, or the read
|
||||
pointer is altered. Note that the data returned will be prefixed
|
||||
with the field name and '='. Also note that by default data fields
|
||||
larger than 64K might get truncated to 64K. This threshold may be
|
||||
changed and turned off with
|
||||
<function>sd_journal_set_data_threshold()</function> (see
|
||||
below).</para>
|
||||
|
||||
<para><function>sd_journal_enumerate_data()</function>
|
||||
may be used to iterate through all fields of the
|
||||
current entry. On each invocation the data for the
|
||||
next field is returned. The order of these fields is
|
||||
not defined. The data returned is in the same format
|
||||
as with <function>sd_journal_get_data()</function> and
|
||||
also follows the same life-time semantics.</para>
|
||||
<para><function>sd_journal_enumerate_data()</function> may be used
|
||||
to iterate through all fields of the current entry. On each
|
||||
invocation the data for the next field is returned. The order of
|
||||
these fields is not defined. The data returned is in the same
|
||||
format as with <function>sd_journal_get_data()</function> and also
|
||||
follows the same life-time semantics.</para>
|
||||
|
||||
<para><function>sd_journal_restart_data()</function>
|
||||
resets the data enumeration index to the beginning of
|
||||
the entry. The next invocation of
|
||||
<function>sd_journal_enumerate_data()</function> will return the first
|
||||
field of the entry again.</para>
|
||||
<para><function>sd_journal_restart_data()</function> resets the
|
||||
data enumeration index to the beginning of the entry. The next
|
||||
invocation of <function>sd_journal_enumerate_data()</function>
|
||||
will return the first field of the entry again.</para>
|
||||
|
||||
<para>Note that the
|
||||
<function>SD_JOURNAL_FOREACH_DATA()</function> macro
|
||||
may be used as a handy wrapper around
|
||||
<function>sd_journal_restart_data()</function> and
|
||||
<function>sd_journal_enumerate_data()</function>.</para>
|
||||
<para>Note that the <function>SD_JOURNAL_FOREACH_DATA()</function>
|
||||
macro may be used as a handy wrapper around
|
||||
<function>sd_journal_restart_data()</function> and
|
||||
<function>sd_journal_enumerate_data()</function>.</para>
|
||||
|
||||
<para>Note that these functions will not work before
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
(or related call) has been called at least
|
||||
once, in order to position the read pointer at a valid entry.</para>
|
||||
<para>Note that these functions will not work before
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
(or related call) has been called at least once, in order to
|
||||
position the read pointer at a valid entry.</para>
|
||||
|
||||
<para><function>sd_journal_set_data_threshold()</function>
|
||||
may be used to change the data field size threshold
|
||||
for data returned by
|
||||
<function>sd_journal_get_data()</function>,
|
||||
<function>sd_journal_enumerate_data()</function> and
|
||||
<function>sd_journal_enumerate_unique()</function>. This
|
||||
threshold is a hint only: it indicates that the client
|
||||
program is interested only in the initial parts of the
|
||||
data fields, up to the threshold in size -- but the
|
||||
library might still return larger data objects. That
|
||||
means applications should not rely exclusively on this
|
||||
setting to limit the size of the data fields returned,
|
||||
but need to apply a explicit size limit on the
|
||||
returned data as well. This threshold defaults to 64K
|
||||
by default. To retrieve the complete data fields this
|
||||
threshold should be turned off by setting it to 0, so
|
||||
that the library always returns the complete data
|
||||
objects. It is recommended to set this threshold as
|
||||
low as possible since this relieves the library from
|
||||
having to decompress large compressed data objects in
|
||||
full.</para>
|
||||
<para><function>sd_journal_set_data_threshold()</function> may be
|
||||
used to change the data field size threshold for data returned by
|
||||
<function>sd_journal_get_data()</function>,
|
||||
<function>sd_journal_enumerate_data()</function> and
|
||||
<function>sd_journal_enumerate_unique()</function>. This threshold
|
||||
is a hint only: it indicates that the client program is interested
|
||||
only in the initial parts of the data fields, up to the threshold
|
||||
in size -- but the library might still return larger data objects.
|
||||
That means applications should not rely exclusively on this
|
||||
setting to limit the size of the data fields returned, but need to
|
||||
apply a explicit size limit on the returned data as well. This
|
||||
threshold defaults to 64K by default. To retrieve the complete
|
||||
data fields this threshold should be turned off by setting it to
|
||||
0, so that the library always returns the complete data objects.
|
||||
It is recommended to set this threshold as low as possible since
|
||||
this relieves the library from having to decompress large
|
||||
compressed data objects in full.</para>
|
||||
|
||||
<para><function>sd_journal_get_data_threshold()</function>
|
||||
returns the currently configured data field size
|
||||
threshold.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_get_data_threshold()</function> returns
|
||||
the currently configured data field size threshold.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para><function>sd_journal_get_data()</function>
|
||||
returns 0 on success or a negative errno-style error
|
||||
code. If the current entry does not include the
|
||||
specified field, -ENOENT is returned. If
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
has not been called at least once, -EADDRNOTAVAIL is
|
||||
returned. <function>sd_journal_enumerate_data()</function>
|
||||
returns a positive integer if the next field has been
|
||||
read, 0 when no more fields are known, or a negative
|
||||
errno-style error
|
||||
code. <function>sd_journal_restart_data()</function>
|
||||
returns
|
||||
nothing. <function>sd_journal_set_data_threshold()</function>
|
||||
and <function>sd_journal_get_threshold()</function>
|
||||
return 0 on success or a negative errno-style error
|
||||
code.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_get_data()</function> returns 0 on
|
||||
success or a negative errno-style error code. If the current entry
|
||||
does not include the specified field, -ENOENT is returned. If
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
has not been called at least once, -EADDRNOTAVAIL is returned.
|
||||
<function>sd_journal_enumerate_data()</function> returns a
|
||||
positive integer if the next field has been read, 0 when no more
|
||||
fields are known, or a negative errno-style error code.
|
||||
<function>sd_journal_restart_data()</function> returns nothing.
|
||||
<function>sd_journal_set_data_threshold()</function> and
|
||||
<function>sd_journal_get_threshold()</function> return 0 on
|
||||
success or a negative errno-style error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_get_data()</function>,
|
||||
<function>sd_journal_enumerate_data()</function>,
|
||||
<function>sd_journal_restart_data()</function>,
|
||||
<function>sd_journal_set_data_threshold()</function>
|
||||
and
|
||||
<function>sd_journal_get_data_threshold()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_get_data()</function>,
|
||||
<function>sd_journal_enumerate_data()</function>,
|
||||
<function>sd_journal_restart_data()</function>,
|
||||
<function>sd_journal_set_data_threshold()</function> and
|
||||
<function>sd_journal_get_data_threshold()</function> interfaces
|
||||
are available as a shared library, which can be compiled and
|
||||
linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for a complete example how to use
|
||||
<function>sd_journal_get_data()</function>.</para>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for a complete example how to use
|
||||
<function>sd_journal_get_data()</function>.</para>
|
||||
|
||||
<para>Use the
|
||||
<function>SD_JOURNAL_FOREACH_DATA</function> macro to
|
||||
iterate through all fields of the current journal
|
||||
entry:</para>
|
||||
<para>Use the
|
||||
<function>SD_JOURNAL_FOREACH_DATA</function> macro to
|
||||
iterate through all fields of the current journal
|
||||
entry:</para>
|
||||
|
||||
<programlisting>...
|
||||
<programlisting>...
|
||||
int print_fields(sd_journal *j) {
|
||||
const void *data;
|
||||
size_t length;
|
||||
SD_JOURNAL_FOREACH_DATA(j, data, length)
|
||||
printf("%.*s\n", (int) length, data);
|
||||
const void *data;
|
||||
size_t length;
|
||||
SD_JOURNAL_FOREACH_DATA(j, data, length)
|
||||
printf("%.*s\n", (int) length, data);
|
||||
}
|
||||
...</programlisting>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_query_unique</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_query_unique</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,327 +23,310 @@
|
||||
|
||||
<refentry id="sd_journal_get_fd">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_fd</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_fd</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_fd</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_fd</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_fd</refname>
|
||||
<refname>sd_journal_get_events</refname>
|
||||
<refname>sd_journal_get_timeout</refname>
|
||||
<refname>sd_journal_process</refname>
|
||||
<refname>sd_journal_wait</refname>
|
||||
<refname>sd_journal_reliable_fd</refname>
|
||||
<refname>SD_JOURNAL_NOP</refname>
|
||||
<refname>SD_JOURNAL_APPEND</refname>
|
||||
<refname>SD_JOURNAL_INVALIDATE</refname>
|
||||
<refpurpose>Journal change notification
|
||||
interface</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_fd</refname>
|
||||
<refname>sd_journal_get_events</refname>
|
||||
<refname>sd_journal_get_timeout</refname>
|
||||
<refname>sd_journal_process</refname>
|
||||
<refname>sd_journal_wait</refname>
|
||||
<refname>sd_journal_reliable_fd</refname>
|
||||
<refname>SD_JOURNAL_NOP</refname>
|
||||
<refname>SD_JOURNAL_APPEND</refname>
|
||||
<refname>SD_JOURNAL_INVALIDATE</refname>
|
||||
<refpurpose>Journal change notification
|
||||
interface</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_fd</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_fd</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_events</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_events</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_timeout</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>timeout_usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_timeout</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>timeout_usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_process</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_process</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_wait</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>timeout_usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_wait</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>timeout_usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_reliable_fd</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_reliable_fd</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_get_fd()</function> returns
|
||||
a file descriptor that may be asynchronously polled in
|
||||
an external event loop and is signaled as soon as the
|
||||
journal changes, because new entries or files were
|
||||
added, rotation took place, or files have been
|
||||
deleted, and similar. The file descriptor is suitable
|
||||
for usage in
|
||||
<citerefentry><refentrytitle>poll</refentrytitle><manvolnum>2</manvolnum></citerefentry>. Use
|
||||
<function>sd_journal_get_events()</function> for an
|
||||
events mask to watch for. The call takes one argument:
|
||||
the journal context object. Note that not all file
|
||||
systems are capable of generating the necessary events
|
||||
for wakeups from this file descriptor for changes to
|
||||
be noticed immediately. In particular network files
|
||||
systems do not generate suitable file change events in
|
||||
all cases. Cases like this can be detected with
|
||||
<function>sd_journal_reliable_fd()</function>,
|
||||
below. <function>sd_journal_get_timeout()</function>
|
||||
will ensure in these cases that wake-ups happen
|
||||
frequently enough for changes to be noticed, although
|
||||
with a certain latency.</para>
|
||||
<para><function>sd_journal_get_fd()</function> returns a file
|
||||
descriptor that may be asynchronously polled in an external event
|
||||
loop and is signaled as soon as the journal changes, because new
|
||||
entries or files were added, rotation took place, or files have
|
||||
been deleted, and similar. The file descriptor is suitable for
|
||||
usage in
|
||||
<citerefentry><refentrytitle>poll</refentrytitle><manvolnum>2</manvolnum></citerefentry>.
|
||||
Use <function>sd_journal_get_events()</function> for an events
|
||||
mask to watch for. The call takes one argument: the journal
|
||||
context object. Note that not all file systems are capable of
|
||||
generating the necessary events for wakeups from this file
|
||||
descriptor for changes to be noticed immediately. In particular
|
||||
network files systems do not generate suitable file change events
|
||||
in all cases. Cases like this can be detected with
|
||||
<function>sd_journal_reliable_fd()</function>, below.
|
||||
<function>sd_journal_get_timeout()</function> will ensure in these
|
||||
cases that wake-ups happen frequently enough for changes to be
|
||||
noticed, although with a certain latency.</para>
|
||||
|
||||
<para><function>sd_journal_get_events()</function>
|
||||
will return the <function>poll()</function> mask to
|
||||
wait for. This function will return a combination of
|
||||
<constant>POLLIN</constant> and
|
||||
<constant>POLLOUT</constant> and similar to fill into
|
||||
the <literal>.events</literal> field of
|
||||
<varname>struct pollfd</varname>.</para>
|
||||
<para><function>sd_journal_get_events()</function> will return the
|
||||
<function>poll()</function> mask to wait for. This function will
|
||||
return a combination of <constant>POLLIN</constant> and
|
||||
<constant>POLLOUT</constant> and similar to fill into the
|
||||
<literal>.events</literal> field of <varname>struct
|
||||
pollfd</varname>.</para>
|
||||
|
||||
<para><function>sd_journal_get_timeout()</function>
|
||||
will return a timeout value for usage in
|
||||
<function>poll()</function>. This returns a value in
|
||||
microseconds since the epoch of
|
||||
<constant>CLOCK_MONOTONIC</constant> for timing out
|
||||
<function>poll()</function> in
|
||||
<varname>timeout_usec</varname>. See
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
for details about
|
||||
<constant>CLOCK_MONOTONIC</constant>. If there is no
|
||||
timeout to wait for, this will fill in
|
||||
<constant>(uint64_t) -1</constant> instead. Note that
|
||||
<function>poll()</function> takes a relative timeout
|
||||
in milliseconds rather than an absolute timeout in
|
||||
microseconds. To convert the absolute 'us' timeout
|
||||
into relative 'ms', use code like the
|
||||
following:</para>
|
||||
<para><function>sd_journal_get_timeout()</function> will return a
|
||||
timeout value for usage in <function>poll()</function>. This
|
||||
returns a value in microseconds since the epoch of
|
||||
<constant>CLOCK_MONOTONIC</constant> for timing out
|
||||
<function>poll()</function> in <varname>timeout_usec</varname>.
|
||||
See
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
for details about <constant>CLOCK_MONOTONIC</constant>. If there
|
||||
is no timeout to wait for, this will fill in <constant>(uint64_t)
|
||||
-1</constant> instead. Note that <function>poll()</function> takes
|
||||
a relative timeout in milliseconds rather than an absolute timeout
|
||||
in microseconds. To convert the absolute 'us' timeout into
|
||||
relative 'ms', use code like the following:</para>
|
||||
|
||||
<programlisting>uint64_t t;
|
||||
<programlisting>uint64_t t;
|
||||
int msec;
|
||||
sd_journal_get_timeout(m, &t);
|
||||
if (t == (uint64_t) -1)
|
||||
msec = -1;
|
||||
msec = -1;
|
||||
else {
|
||||
struct timespec ts;
|
||||
uint64_t n;
|
||||
clock_getttime(CLOCK_MONOTONIC, &ts);
|
||||
n = (uint64_t) ts.tv_sec * 1000000 + ts.tv_nsec / 1000;
|
||||
msec = t > n ? (int) ((t - n + 999) / 1000) : 0;
|
||||
struct timespec ts;
|
||||
uint64_t n;
|
||||
clock_getttime(CLOCK_MONOTONIC, &ts);
|
||||
n = (uint64_t) ts.tv_sec * 1000000 + ts.tv_nsec / 1000;
|
||||
msec = t > n ? (int) ((t - n + 999) / 1000) : 0;
|
||||
}</programlisting>
|
||||
|
||||
<para>The code above does not do any error checking
|
||||
for brevity's sake. The calculated <varname>msec</varname>
|
||||
integer can be passed directly as
|
||||
<function>poll()</function>'s timeout
|
||||
parameter.</para>
|
||||
<para>The code above does not do any error checking for brevity's
|
||||
sake. The calculated <varname>msec</varname> integer can be passed
|
||||
directly as <function>poll()</function>'s timeout
|
||||
parameter.</para>
|
||||
|
||||
<para>After each <function>poll()</function> wake-up
|
||||
<function>sd_journal_process()</function> needs to be
|
||||
called to process events. This call will also indicate
|
||||
what kind of change has been detected (see below; note
|
||||
that spurious wake-ups are possible).</para>
|
||||
<para>After each <function>poll()</function> wake-up
|
||||
<function>sd_journal_process()</function> needs to be called to
|
||||
process events. This call will also indicate what kind of change
|
||||
has been detected (see below; note that spurious wake-ups are
|
||||
possible).</para>
|
||||
|
||||
<para>A synchronous alternative for using
|
||||
<function>sd_journal_get_fd()</function>,
|
||||
<function>sd_journal_get_events()</function>,
|
||||
<function>sd_journal_get_timeout()</function> and
|
||||
<function>sd_journal_process()</function> is
|
||||
<function>sd_journal_wait()</function>. It will
|
||||
synchronously wait until the journal gets changed. The
|
||||
maximum time this call sleeps may be controlled with
|
||||
the <parameter>timeout_usec</parameter>
|
||||
parameter. Pass <constant>(uint64_t) -1</constant> to
|
||||
wait indefinitely. Internally this call simply
|
||||
combines <function>sd_journal_get_fd()</function>,
|
||||
<function>sd_journal_get_events()</function>,
|
||||
<function>sd_journal_get_timeout()</function>,
|
||||
<function>poll()</function> and
|
||||
<function>sd_journal_process()</function> into
|
||||
one.</para>
|
||||
<para>A synchronous alternative for using
|
||||
<function>sd_journal_get_fd()</function>,
|
||||
<function>sd_journal_get_events()</function>,
|
||||
<function>sd_journal_get_timeout()</function> and
|
||||
<function>sd_journal_process()</function> is
|
||||
<function>sd_journal_wait()</function>. It will synchronously wait
|
||||
until the journal gets changed. The maximum time this call sleeps
|
||||
may be controlled with the <parameter>timeout_usec</parameter>
|
||||
parameter. Pass <constant>(uint64_t) -1</constant> to wait
|
||||
indefinitely. Internally this call simply combines
|
||||
<function>sd_journal_get_fd()</function>,
|
||||
<function>sd_journal_get_events()</function>,
|
||||
<function>sd_journal_get_timeout()</function>,
|
||||
<function>poll()</function> and
|
||||
<function>sd_journal_process()</function> into one.</para>
|
||||
|
||||
<para><function>sd_journal_reliable_fd()</function>
|
||||
may be used to check whether the wakeup events from
|
||||
the file descriptor returned by
|
||||
<function>sd_journal_get_fd()</function> are known to
|
||||
be immediately triggered. On certain file systems
|
||||
where file change events from the OS are not available
|
||||
(such as NFS) changes need to be polled for
|
||||
repeatedly, and hence are detected only with a certain
|
||||
latency. This call will return a positive value if the
|
||||
journal changes are detected immediately and zero when
|
||||
they need to be polled for and hence might be noticed
|
||||
only with a certain latency. Note that there's usually
|
||||
no need to invoke this function directly as
|
||||
<function>sd_journal_get_timeout()</function> on these
|
||||
file systems will ask for timeouts explicitly
|
||||
anyway.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_reliable_fd()</function> may be used to
|
||||
check whether the wakeup events from the file descriptor returned
|
||||
by <function>sd_journal_get_fd()</function> are known to be
|
||||
immediately triggered. On certain file systems where file change
|
||||
events from the OS are not available (such as NFS) changes need to
|
||||
be polled for repeatedly, and hence are detected only with a
|
||||
certain latency. This call will return a positive value if the
|
||||
journal changes are detected immediately and zero when they need
|
||||
to be polled for and hence might be noticed only with a certain
|
||||
latency. Note that there's usually no need to invoke this function
|
||||
directly as <function>sd_journal_get_timeout()</function> on these
|
||||
file systems will ask for timeouts explicitly anyway.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para><function>sd_journal_get_fd()</function> returns
|
||||
a valid file descriptor on success or a negative
|
||||
errno-style error code.</para>
|
||||
<para><function>sd_journal_get_fd()</function> returns a valid
|
||||
file descriptor on success or a negative errno-style error
|
||||
code.</para>
|
||||
|
||||
<para><function>sd_journal_get_events()</function>
|
||||
returns a combination of <constant>POLLIN</constant>,
|
||||
<constant>POLLOUT</constant> and suchlike on success or
|
||||
a negative errno-style error code.</para>
|
||||
<para><function>sd_journal_get_events()</function> returns a
|
||||
combination of <constant>POLLIN</constant>,
|
||||
<constant>POLLOUT</constant> and suchlike on success or a negative
|
||||
errno-style error code.</para>
|
||||
|
||||
<para><function>sd_journal_reliable_fd()</function>
|
||||
returns a positive integer if the file descriptor
|
||||
returned by <function>sd_journal_get_fd()</function>
|
||||
will generate wake-ups immediately for all journal
|
||||
changes. Returns 0 if there might be a latency
|
||||
involved.</para>
|
||||
<para><function>sd_journal_reliable_fd()</function> returns a
|
||||
positive integer if the file descriptor returned by
|
||||
<function>sd_journal_get_fd()</function> will generate wake-ups
|
||||
immediately for all journal changes. Returns 0 if there might be a
|
||||
latency involved.</para>
|
||||
|
||||
<para><function>sd_journal_process()</function> and
|
||||
<function>sd_journal_wait()</function> return one of
|
||||
<constant>SD_JOURNAL_NOP</constant>,
|
||||
<constant>SD_JOURNAL_APPEND</constant> or
|
||||
<constant>SD_JOURNAL_INVALIDATE</constant> on success or
|
||||
a negative errno-style error code. If
|
||||
<constant>SD_JOURNAL_NOP</constant> is returned, the
|
||||
journal did not change since the last invocation. If
|
||||
<constant>SD_JOURNAL_APPEND</constant> is returned, new
|
||||
entries have been appended to the end of the
|
||||
journal. If <constant>SD_JOURNAL_INVALIDATE</constant>,
|
||||
journal files were added or removed (possibly due to
|
||||
rotation). In the latter event, live-view UIs should
|
||||
probably refresh their entire display, while in the
|
||||
case of <constant>SD_JOURNAL_APPEND</constant>, it is
|
||||
sufficient to simply continue reading at the previous
|
||||
end of the journal.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_process()</function> and
|
||||
<function>sd_journal_wait()</function> return one of
|
||||
<constant>SD_JOURNAL_NOP</constant>,
|
||||
<constant>SD_JOURNAL_APPEND</constant> or
|
||||
<constant>SD_JOURNAL_INVALIDATE</constant> on success or a
|
||||
negative errno-style error code. If
|
||||
<constant>SD_JOURNAL_NOP</constant> is returned, the journal did
|
||||
not change since the last invocation. If
|
||||
<constant>SD_JOURNAL_APPEND</constant> is returned, new entries
|
||||
have been appended to the end of the journal. If
|
||||
<constant>SD_JOURNAL_INVALIDATE</constant>, journal files were
|
||||
added or removed (possibly due to rotation). In the latter event,
|
||||
live-view UIs should probably refresh their entire display, while
|
||||
in the case of <constant>SD_JOURNAL_APPEND</constant>, it is
|
||||
sufficient to simply continue reading at the previous end of the
|
||||
journal.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_get_fd()</function>,
|
||||
<function>sd_journal_get_events()</function>,
|
||||
<function>sd_journal_reliable_fd()</function>,
|
||||
<function>sd_journal_process()</function> and
|
||||
<function>sd_journal_wait()</function> interfaces are
|
||||
available as a shared library, which can be compiled and
|
||||
linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_get_fd()</function>,
|
||||
<function>sd_journal_get_events()</function>,
|
||||
<function>sd_journal_reliable_fd()</function>,
|
||||
<function>sd_journal_process()</function> and
|
||||
<function>sd_journal_wait()</function> interfaces are available as
|
||||
a shared library, which can be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<para>Iterating through the journal, in a live view tracking all changes:</para>
|
||||
<para>Iterating through the journal, in a live view tracking all
|
||||
changes:</para>
|
||||
|
||||
<programlisting>#include <stdio.h>
|
||||
<programlisting>#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <systemd/sd-journal.h>
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
int r;
|
||||
sd_journal *j;
|
||||
r = sd_journal_open(&j, SD_JOURNAL_LOCAL_ONLY);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to open journal: %s\n", strerror(-r));
|
||||
return 1;
|
||||
}
|
||||
for (;;) {
|
||||
const void *d;
|
||||
size_t l;
|
||||
r = sd_journal_next(j);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to iterate to next entry: %s\n", strerror(-r));
|
||||
break;
|
||||
}
|
||||
if (r == 0) {
|
||||
/* Reached the end, let's wait for changes, and try again */
|
||||
r = sd_journal_wait(j, (uint64_t) -1);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to wait for changes: %s\n", strerror(-r));
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
r = sd_journal_get_data(j, "MESSAGE", &d, &l);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
|
||||
continue;
|
||||
}
|
||||
printf("%.*s\n", (int) l, (const char*) d);
|
||||
}
|
||||
sd_journal_close(j);
|
||||
return 0;
|
||||
int r;
|
||||
sd_journal *j;
|
||||
r = sd_journal_open(&j, SD_JOURNAL_LOCAL_ONLY);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to open journal: %s\n", strerror(-r));
|
||||
return 1;
|
||||
}
|
||||
for (;;) {
|
||||
const void *d;
|
||||
size_t l;
|
||||
r = sd_journal_next(j);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to iterate to next entry: %s\n", strerror(-r));
|
||||
break;
|
||||
}
|
||||
if (r == 0) {
|
||||
/* Reached the end, let's wait for changes, and try again */
|
||||
r = sd_journal_wait(j, (uint64_t) -1);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to wait for changes: %s\n", strerror(-r));
|
||||
break;
|
||||
}
|
||||
continue;
|
||||
}
|
||||
r = sd_journal_get_data(j, "MESSAGE", &d, &l);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
|
||||
continue;
|
||||
}
|
||||
printf("%.*s\n", (int) l, (const char*) d);
|
||||
}
|
||||
sd_journal_close(j);
|
||||
return 0;
|
||||
}</programlisting>
|
||||
|
||||
<para>Waiting with <function>poll()</function> (this
|
||||
example lacks all error checking for the sake of
|
||||
simplicity):</para>
|
||||
<para>Waiting with <function>poll()</function> (this
|
||||
example lacks all error checking for the sake of
|
||||
simplicity):</para>
|
||||
|
||||
<programlisting>#include <sys/poll.h>
|
||||
<programlisting>#include <sys/poll.h>
|
||||
#include <systemd/sd-journal.h>
|
||||
|
||||
int wait_for_changes(sd_journal *j) {
|
||||
struct pollfd pollfd;
|
||||
int msec;
|
||||
struct pollfd pollfd;
|
||||
int msec;
|
||||
|
||||
sd_journal_get_timeout(m, &t);
|
||||
if (t == (uint64_t) -1)
|
||||
msec = -1;
|
||||
else {
|
||||
struct timespec ts;
|
||||
uint64_t n;
|
||||
clock_getttime(CLOCK_MONOTONIC, &ts);
|
||||
n = (uint64_t) ts.tv_sec * 1000000 + ts.tv_nsec / 1000;
|
||||
msec = t > n ? (int) ((t - n + 999) / 1000) : 0;
|
||||
}
|
||||
sd_journal_get_timeout(m, &t);
|
||||
if (t == (uint64_t) -1)
|
||||
msec = -1;
|
||||
else {
|
||||
struct timespec ts;
|
||||
uint64_t n;
|
||||
clock_getttime(CLOCK_MONOTONIC, &ts);
|
||||
n = (uint64_t) ts.tv_sec * 1000000 + ts.tv_nsec / 1000;
|
||||
msec = t > n ? (int) ((t - n + 999) / 1000) : 0;
|
||||
}
|
||||
|
||||
pollfd.fd = sd_journal_get_fd(j);
|
||||
pollfd.events = sd_journal_get_events(j);
|
||||
poll(&pollfd, 1, msec);
|
||||
return sd_journal_process(j);
|
||||
pollfd.fd = sd_journal_get_fd(j);
|
||||
pollfd.events = sd_journal_get_events(j);
|
||||
poll(&pollfd, 1, msec);
|
||||
return sd_journal_process(j);
|
||||
}</programlisting>
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>poll</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>poll</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,124 +23,119 @@
|
||||
|
||||
<refentry id="sd_journal_get_realtime_usec">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_realtime_usec</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_realtime_usec</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_realtime_usec</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_realtime_usec</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_realtime_usec</refname>
|
||||
<refname>sd_journal_get_monotonic_usec</refname>
|
||||
<refpurpose>Read timestamps from the current journal entry</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_realtime_usec</refname>
|
||||
<refname>sd_journal_get_monotonic_usec</refname>
|
||||
<refpurpose>Read timestamps from the current journal entry</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_realtime_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_realtime_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_monotonic_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>usec</parameter></paramdef>
|
||||
<paramdef>sd_id128_t *<parameter>boot_id</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_monotonic_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>usec</parameter></paramdef>
|
||||
<paramdef>sd_id128_t *<parameter>boot_id</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_get_realtime_usec()</function>
|
||||
gets the realtime (wallclock) timestamp of the
|
||||
current journal entry. It takes two arguments: the
|
||||
journal context object and a pointer to a 64-bit
|
||||
unsigned integer to store the timestamp in. The
|
||||
timestamp is in microseconds since the epoch,
|
||||
i.e. <constant>CLOCK_REALTIME</constant>.</para>
|
||||
<para><function>sd_journal_get_realtime_usec()</function> gets the
|
||||
realtime (wallclock) timestamp of the current journal entry. It
|
||||
takes two arguments: the journal context object and a pointer to a
|
||||
64-bit unsigned integer to store the timestamp in. The timestamp
|
||||
is in microseconds since the epoch, i.e.
|
||||
<constant>CLOCK_REALTIME</constant>.</para>
|
||||
|
||||
<para><function>sd_journal_get_monotonic_usec()</function>
|
||||
gets the monotonic timestamp of the current journal
|
||||
entry. It takes three arguments: the journal context
|
||||
object, a pointer to a 64-bit unsigned integer to
|
||||
store the timestamp in, as well as a 128-bit ID buffer
|
||||
to store the boot ID of the monotonic timestamp.
|
||||
The timestamp is in microseconds since boot-up of
|
||||
the specific boot,
|
||||
i.e. <constant>CLOCK_MONOTONIC</constant>. Since the
|
||||
monotonic clock begins new with every reboot, it only
|
||||
defines a well-defined point in time when used
|
||||
together with an identifier identifying the boot. See
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information. If the boot ID parameter is
|
||||
passed <constant>NULL</constant>, the function will
|
||||
fail if the monotonic timestamp of the current entry
|
||||
is not of the current system boot.</para>
|
||||
<para><function>sd_journal_get_monotonic_usec()</function> gets
|
||||
the monotonic timestamp of the current journal entry. It takes
|
||||
three arguments: the journal context object, a pointer to a 64-bit
|
||||
unsigned integer to store the timestamp in, as well as a 128-bit
|
||||
ID buffer to store the boot ID of the monotonic timestamp. The
|
||||
timestamp is in microseconds since boot-up of the specific boot,
|
||||
i.e. <constant>CLOCK_MONOTONIC</constant>. Since the monotonic
|
||||
clock begins new with every reboot, it only defines a well-defined
|
||||
point in time when used together with an identifier identifying
|
||||
the boot. See
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information. If the boot ID parameter is passed
|
||||
<constant>NULL</constant>, the function will fail if the monotonic
|
||||
timestamp of the current entry is not of the current system
|
||||
boot.</para>
|
||||
|
||||
<para>Note that these functions will not work before
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
(or related call) has been called at least
|
||||
once, in order to position the read pointer at a valid entry.</para>
|
||||
</refsect1>
|
||||
<para>Note that these functions will not work before
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
(or related call) has been called at least
|
||||
once, in order to position the read pointer at a valid entry.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para><function>sd_journal_get_realtime_usec()</function>
|
||||
and
|
||||
<function>sd_journal_get_monotonic_usec()</function>
|
||||
returns 0 on success or a negative errno-style error
|
||||
code. If the boot ID parameter was passed <constant>NULL</constant> and the
|
||||
monotonic timestamp of the current journal entry is
|
||||
not of the current system boot, -ESTALE is returned by <function>sd_journal_get_monotonic_usec()</function>.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_get_realtime_usec()</function> and
|
||||
<function>sd_journal_get_monotonic_usec()</function> returns 0 on
|
||||
success or a negative errno-style error code. If the boot ID
|
||||
parameter was passed <constant>NULL</constant> and the monotonic
|
||||
timestamp of the current journal entry is not of the current
|
||||
system boot, <constant>-ESTALE</constant> is returned by
|
||||
<function>sd_journal_get_monotonic_usec()</function>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The
|
||||
<function>sd_journal_get_realtime_usec()</function>
|
||||
and
|
||||
<function>sd_journal_get_monotonic_usec()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_get_realtime_usec()</function> and
|
||||
<function>sd_journal_get_monotonic_usec()</function> interfaces
|
||||
are available as a shared library, which can be compiled and
|
||||
linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cutoff_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_id128_get_boot</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cutoff_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,81 +23,78 @@
|
||||
|
||||
<refentry id="sd_journal_get_usage">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_usage</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_get_usage</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_usage</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_get_usage</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_usage</refname>
|
||||
<refpurpose>Journal disk usage</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_get_usage</refname>
|
||||
<refpurpose>Journal disk usage</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_usage</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>bytes</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_get_usage</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>bytes</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_get_usage()</function>
|
||||
determines the total disk space currently used by
|
||||
journal files (in bytes). If
|
||||
<constant>SD_JOURNAL_LOCAL_ONLY</constant> was passed
|
||||
when opening the journal, this value will only reflect
|
||||
the size of journal files of the local host, otherwise
|
||||
of all hosts.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_get_usage()</function> determines the
|
||||
total disk space currently used by journal files (in bytes). If
|
||||
<constant>SD_JOURNAL_LOCAL_ONLY</constant> was passed when opening
|
||||
the journal, this value will only reflect the size of journal
|
||||
files of the local host, otherwise of all hosts.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para><function>sd_journal_get_usage()</function>
|
||||
returns 0 on success or a negative errno-style error
|
||||
code.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_get_usage()</function> returns 0 on
|
||||
success or a negative errno-style error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_get_usage()</function>
|
||||
interface is available as a shared library, which can be
|
||||
compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_get_usage()</function> interface is
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,191 +23,185 @@
|
||||
|
||||
<refentry id="sd_journal_next">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_next</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_next</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_next</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_next</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_next</refname>
|
||||
<refname>sd_journal_previous</refname>
|
||||
<refname>sd_journal_next_skip</refname>
|
||||
<refname>sd_journal_previous_skip</refname>
|
||||
<refname>SD_JOURNAL_FOREACH</refname>
|
||||
<refname>SD_JOURNAL_FOREACH_BACKWARDS</refname>
|
||||
<refpurpose>Advance or set back the read pointer in the journal</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_next</refname>
|
||||
<refname>sd_journal_previous</refname>
|
||||
<refname>sd_journal_next_skip</refname>
|
||||
<refname>sd_journal_previous_skip</refname>
|
||||
<refname>SD_JOURNAL_FOREACH</refname>
|
||||
<refname>SD_JOURNAL_FOREACH_BACKWARDS</refname>
|
||||
<refpurpose>Advance or set back the read pointer in the journal</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_next</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_next</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_previous</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_previous</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_next_skip</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>skip</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_next_skip</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>skip</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_previous_skip</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>skip</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_previous_skip</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>skip</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef><function>SD_JOURNAL_FOREACH</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef><function>SD_JOURNAL_FOREACH</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef><function>SD_JOURNAL_FOREACH_BACKWARDS</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef><function>SD_JOURNAL_FOREACH_BACKWARDS</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_next()</function> advances
|
||||
the read pointer into the journal by one entry. The
|
||||
only argument taken is a journal context object as
|
||||
allocated via
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>. After
|
||||
successful invocation the entry may be read with
|
||||
functions such as
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
<para><function>sd_journal_next()</function> advances the read
|
||||
pointer into the journal by one entry. The only argument taken is
|
||||
a journal context object as allocated via
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
After successful invocation the entry may be read with functions
|
||||
such as
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para>Similarly, <function>sd_journal_previous()</function> sets
|
||||
the read pointer back one entry.</para>
|
||||
<para>Similarly, <function>sd_journal_previous()</function> sets
|
||||
the read pointer back one entry.</para>
|
||||
|
||||
<para><function>sd_journal_next_skip()</function> and
|
||||
<function>sd_journal_previous_skip()</function>
|
||||
advance/set back the read pointer by multiple entries
|
||||
at once, as specified in the <varname>skip</varname>
|
||||
parameter.</para>
|
||||
<para><function>sd_journal_next_skip()</function> and
|
||||
<function>sd_journal_previous_skip()</function> advance/set back
|
||||
the read pointer by multiple entries at once, as specified in the
|
||||
<varname>skip</varname> parameter.</para>
|
||||
|
||||
<para>The journal is strictly ordered by reception
|
||||
time, and hence advancing to the next entry guarantees
|
||||
that the entry then pointing to is later in time than
|
||||
then previous one, or has the same timestamp.</para>
|
||||
<para>The journal is strictly ordered by reception time, and hence
|
||||
advancing to the next entry guarantees that the entry then
|
||||
pointing to is later in time than then previous one, or has the
|
||||
same timestamp.</para>
|
||||
|
||||
<para>Note that
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and related calls will fail unless
|
||||
<function>sd_journal_next()</function> has been
|
||||
invoked at least once in order to position the read
|
||||
pointer on a journal entry.</para>
|
||||
<para>Note that
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and related calls will fail unless
|
||||
<function>sd_journal_next()</function> has been invoked at least
|
||||
once in order to position the read pointer on a journal
|
||||
entry.</para>
|
||||
|
||||
<para>Note that the
|
||||
<function>SD_JOURNAL_FOREACH()</function> macro may be used
|
||||
as a wrapper around
|
||||
<citerefentry><refentrytitle>sd_journal_seek_head</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and <function>sd_journal_next()</function> in order to
|
||||
make iterating through the journal easier. See below
|
||||
for an example. Similarly,
|
||||
<function>SD_JOURNAL_FOREACH_BACKWARDS()</function>
|
||||
may be used for iterating the journal in reverse
|
||||
order.</para>
|
||||
</refsect1>
|
||||
<para>Note that the <function>SD_JOURNAL_FOREACH()</function>
|
||||
macro may be used as a wrapper around
|
||||
<citerefentry><refentrytitle>sd_journal_seek_head</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and <function>sd_journal_next()</function> in order to make
|
||||
iterating through the journal easier. See below for an example.
|
||||
Similarly, <function>SD_JOURNAL_FOREACH_BACKWARDS()</function> may
|
||||
be used for iterating the journal in reverse order.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>The four calls return the number of entries
|
||||
advanced/set back on success or a negative errno-style
|
||||
error code. When the end or beginning of the journal
|
||||
is reached, a number smaller than requested is
|
||||
returned. More specifically, if
|
||||
<function>sd_journal_next()</function> or
|
||||
<function>sd_journal_previous()</function> reach the
|
||||
end/beginning of the journal they will return 0,
|
||||
instead of 1 when they are successful. This should be
|
||||
considered an EOF marker.</para>
|
||||
</refsect1>
|
||||
<para>The four calls return the number of entries advanced/set
|
||||
back on success or a negative errno-style error code. When the end
|
||||
or beginning of the journal is reached, a number smaller than
|
||||
requested is returned. More specifically, if
|
||||
<function>sd_journal_next()</function> or
|
||||
<function>sd_journal_previous()</function> reach the end/beginning
|
||||
of the journal they will return 0, instead of 1 when they are
|
||||
successful. This should be considered an EOF marker.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_next()</function>, <function>sd_journal_previous()</function>,
|
||||
<function>sd_journal_next_skip()</function> and
|
||||
<function>sd_journal_previous_skip()</function> interfaces are
|
||||
available as a shared library, which can be compiled and
|
||||
linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_next()</function>,
|
||||
<function>sd_journal_previous()</function>,
|
||||
<function>sd_journal_next_skip()</function> and
|
||||
<function>sd_journal_previous_skip()</function> interfaces are
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<para>Iterating through the journal:</para>
|
||||
<para>Iterating through the journal:</para>
|
||||
|
||||
<programlisting>#include <stdio.h>
|
||||
<programlisting>#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <systemd/sd-journal.h>
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
int r;
|
||||
sd_journal *j;
|
||||
r = sd_journal_open(&j, SD_JOURNAL_LOCAL_ONLY);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to open journal: %s\n", strerror(-r));
|
||||
return 1;
|
||||
}
|
||||
SD_JOURNAL_FOREACH(j) {
|
||||
const char *d;
|
||||
size_t l;
|
||||
int r;
|
||||
sd_journal *j;
|
||||
r = sd_journal_open(&j, SD_JOURNAL_LOCAL_ONLY);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to open journal: %s\n", strerror(-r));
|
||||
return 1;
|
||||
}
|
||||
SD_JOURNAL_FOREACH(j) {
|
||||
const char *d;
|
||||
size_t l;
|
||||
|
||||
r = sd_journal_get_data(j, "MESSAGE", (const void **)&d, &l);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
|
||||
continue;
|
||||
}
|
||||
r = sd_journal_get_data(j, "MESSAGE", (const void **)&d, &l);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to read message field: %s\n", strerror(-r));
|
||||
continue;
|
||||
}
|
||||
|
||||
printf("%.*s\n", (int) l, d);
|
||||
}
|
||||
sd_journal_close(j);
|
||||
return 0;
|
||||
printf("%.*s\n", (int) l, d);
|
||||
}
|
||||
sd_journal_close(j);
|
||||
return 0;
|
||||
}</programlisting>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,231 +23,217 @@
|
||||
|
||||
<refentry id="sd_journal_open">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_open</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_open</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_open</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_open</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_open</refname>
|
||||
<refname>sd_journal_open_directory</refname>
|
||||
<refname>sd_journal_open_files</refname>
|
||||
<refname>sd_journal_open_container</refname>
|
||||
<refname>sd_journal_close</refname>
|
||||
<refname>sd_journal</refname>
|
||||
<refname>SD_JOURNAL_LOCAL_ONLY</refname>
|
||||
<refname>SD_JOURNAL_RUNTIME_ONLY</refname>
|
||||
<refname>SD_JOURNAL_SYSTEM</refname>
|
||||
<refname>SD_JOURNAL_CURRENT_USER</refname>
|
||||
<refpurpose>Open the system journal for reading</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_open</refname>
|
||||
<refname>sd_journal_open_directory</refname>
|
||||
<refname>sd_journal_open_files</refname>
|
||||
<refname>sd_journal_open_container</refname>
|
||||
<refname>sd_journal_close</refname>
|
||||
<refname>sd_journal</refname>
|
||||
<refname>SD_JOURNAL_LOCAL_ONLY</refname>
|
||||
<refname>SD_JOURNAL_RUNTIME_ONLY</refname>
|
||||
<refname>SD_JOURNAL_SYSTEM</refname>
|
||||
<refname>SD_JOURNAL_CURRENT_USER</refname>
|
||||
<refpurpose>Open the system journal for reading</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_open</function></funcdef>
|
||||
<paramdef>sd_journal **<parameter>ret</parameter></paramdef>
|
||||
<paramdef>int <parameter>flags</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_open</function></funcdef>
|
||||
<paramdef>sd_journal **<parameter>ret</parameter></paramdef>
|
||||
<paramdef>int <parameter>flags</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_open_directory</function></funcdef>
|
||||
<paramdef>sd_journal **<parameter>ret</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>path</parameter></paramdef>
|
||||
<paramdef>int <parameter>flags</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_open_directory</function></funcdef>
|
||||
<paramdef>sd_journal **<parameter>ret</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>path</parameter></paramdef>
|
||||
<paramdef>int <parameter>flags</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_open_files</function></funcdef>
|
||||
<paramdef>sd_journal **<parameter>ret</parameter></paramdef>
|
||||
<paramdef>const char **<parameter>paths</parameter></paramdef>
|
||||
<paramdef>int <parameter>flags</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_open_files</function></funcdef>
|
||||
<paramdef>sd_journal **<parameter>ret</parameter></paramdef>
|
||||
<paramdef>const char **<parameter>paths</parameter></paramdef>
|
||||
<paramdef>int <parameter>flags</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_open_container</function></funcdef>
|
||||
<paramdef>sd_journal **<parameter>ret</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>machine</parameter></paramdef>
|
||||
<paramdef>int <parameter>flags</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_open_container</function></funcdef>
|
||||
<paramdef>sd_journal **<parameter>ret</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>machine</parameter></paramdef>
|
||||
<paramdef>int <parameter>flags</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>void <function>sd_journal_close</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>void <function>sd_journal_close</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_open()</function> opens
|
||||
the log journal for reading. It will find all journal
|
||||
files automatically and interleave them automatically
|
||||
when reading. As first argument it takes a pointer to
|
||||
a <varname>sd_journal</varname> pointer, which on
|
||||
success will contain a journal context object. The
|
||||
second argument is a flags field, which may consist of
|
||||
the following flags ORed together:
|
||||
<constant>SD_JOURNAL_LOCAL_ONLY</constant> makes sure
|
||||
only journal files generated on the local machine will
|
||||
be opened. <constant>SD_JOURNAL_RUNTIME_ONLY</constant>
|
||||
makes sure only volatile journal files will be opened,
|
||||
excluding those which are stored on persistent
|
||||
storage. <constant>SD_JOURNAL_SYSTEM</constant>
|
||||
will cause journal files of system services and the
|
||||
kernel (in opposition to user session processes) to
|
||||
be opened. <constant>SD_JOURNAL_CURRENT_USER</constant>
|
||||
will cause journal files of the current user to be
|
||||
opened. If neither <constant>SD_JOURNAL_SYSTEM</constant>
|
||||
nor <constant>SD_JOURNAL_CURRENT_USER</constant> are
|
||||
specified, all journal file types will be opened.</para>
|
||||
<para><function>sd_journal_open()</function> opens the log journal
|
||||
for reading. It will find all journal files automatically and
|
||||
interleave them automatically when reading. As first argument it
|
||||
takes a pointer to a <varname>sd_journal</varname> pointer, which
|
||||
on success will contain a journal context object. The second
|
||||
argument is a flags field, which may consist of the following
|
||||
flags ORed together: <constant>SD_JOURNAL_LOCAL_ONLY</constant>
|
||||
makes sure only journal files generated on the local machine will
|
||||
be opened. <constant>SD_JOURNAL_RUNTIME_ONLY</constant> makes sure
|
||||
only volatile journal files will be opened, excluding those which
|
||||
are stored on persistent storage.
|
||||
<constant>SD_JOURNAL_SYSTEM</constant> will cause journal files of
|
||||
system services and the kernel (in opposition to user session
|
||||
processes) to be opened.
|
||||
<constant>SD_JOURNAL_CURRENT_USER</constant> will cause journal
|
||||
files of the current user to be opened. If neither
|
||||
<constant>SD_JOURNAL_SYSTEM</constant> nor
|
||||
<constant>SD_JOURNAL_CURRENT_USER</constant> are specified, all
|
||||
journal file types will be opened.</para>
|
||||
|
||||
<para><function>sd_journal_open_directory()</function>
|
||||
is similar to <function>sd_journal_open()</function>
|
||||
but takes an absolute directory path as argument. All
|
||||
journal files in this directory will be opened and
|
||||
interleaved automatically. This call also takes a
|
||||
flags argument, but it must be passed as 0 as no flags
|
||||
are currently understood for this call.</para>
|
||||
<para><function>sd_journal_open_directory()</function> is similar
|
||||
to <function>sd_journal_open()</function> but takes an absolute
|
||||
directory path as argument. All journal files in this directory
|
||||
will be opened and interleaved automatically. This call also takes
|
||||
a flags argument, but it must be passed as 0 as no flags are
|
||||
currently understood for this call.</para>
|
||||
|
||||
<para><function>sd_journal_open_files()</function>
|
||||
is similar to <function>sd_journal_open()</function>
|
||||
but takes a <constant>NULL</constant>-terminated list
|
||||
of file paths to open. All files will be opened and
|
||||
interleaved automatically. This call also takes a
|
||||
flags argument, but it must be passed as 0 as no flags
|
||||
are currently understood for this call. Please note
|
||||
that in the case of a live journal, this function is only
|
||||
useful for debugging, because individual journal files
|
||||
can be rotated at any moment, and the opening of
|
||||
specific files is inherently racy.</para>
|
||||
<para><function>sd_journal_open_files()</function> is similar to
|
||||
<function>sd_journal_open()</function> but takes a
|
||||
<constant>NULL</constant>-terminated list of file paths to open.
|
||||
All files will be opened and interleaved automatically. This call
|
||||
also takes a flags argument, but it must be passed as 0 as no
|
||||
flags are currently understood for this call. Please note that in
|
||||
the case of a live journal, this function is only useful for
|
||||
debugging, because individual journal files can be rotated at any
|
||||
moment, and the opening of specific files is inherently
|
||||
racy.</para>
|
||||
|
||||
<para><function>sd_journal_open_container()</function>
|
||||
is similar to <function>sd_journal_open()</function>
|
||||
but opens the journal files of a running
|
||||
OS container. The specified machine name refers to a
|
||||
container that is registered with
|
||||
<citerefentry><refentrytitle>systemd-machined</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
<para><function>sd_journal_open_container()</function> is similar
|
||||
to <function>sd_journal_open()</function> but opens the journal
|
||||
files of a running OS container. The specified machine name refers
|
||||
to a container that is registered with
|
||||
<citerefentry><refentrytitle>systemd-machined</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para><varname>sd_journal</varname> objects cannot be
|
||||
used in the child after a fork. Functions which take a
|
||||
journal object as an argument
|
||||
(<function>sd_journal_next()</function> and others)
|
||||
will return <constant>-ECHILD</constant> after a fork.
|
||||
</para>
|
||||
<para><varname>sd_journal</varname> objects cannot be used in the
|
||||
child after a fork. Functions which take a journal object as an
|
||||
argument (<function>sd_journal_next()</function> and others) will
|
||||
return <constant>-ECHILD</constant> after a fork.
|
||||
</para>
|
||||
|
||||
<para><function>sd_journal_close()</function> will
|
||||
close the journal context allocated with
|
||||
<function>sd_journal_open()</function> or
|
||||
<function>sd_journal_open_directory()</function> and
|
||||
free its resources.</para>
|
||||
<para><function>sd_journal_close()</function> will close the
|
||||
journal context allocated with
|
||||
<function>sd_journal_open()</function> or
|
||||
<function>sd_journal_open_directory()</function> and free its
|
||||
resources.</para>
|
||||
|
||||
<para>When opening the journal only journal files
|
||||
accessible to the calling user will be opened. If
|
||||
journal files are not accessible to the caller, this
|
||||
will be silently ignored.</para>
|
||||
<para>When opening the journal only journal files accessible to
|
||||
the calling user will be opened. If journal files are not
|
||||
accessible to the caller, this will be silently ignored.</para>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for an example of how to iterate through the journal
|
||||
after opening it with
|
||||
<function>sd_journal_open()</function>.</para>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for an example of how to iterate through the journal after opening
|
||||
it with <function>sd_journal_open()</function>.</para>
|
||||
|
||||
<para>A journal context object returned by
|
||||
<function>sd_journal_open()</function> references a
|
||||
specific journal entry as <emphasis>current</emphasis> entry,
|
||||
similar to a file seek index in a classic file system
|
||||
file, but without absolute positions. It may be
|
||||
altered with
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>sd_journal_seek_head</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and related calls. The current entry position may be
|
||||
exported in <emphasis>cursor</emphasis> strings, as accessible
|
||||
via
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>. Cursor
|
||||
strings may be used to globally identify a specific
|
||||
journal entry in a stable way and then later to seek
|
||||
to it (or if the specific entry is not available
|
||||
locally, to its closest entry in time)
|
||||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
<para>A journal context object returned by
|
||||
<function>sd_journal_open()</function> references a specific
|
||||
journal entry as <emphasis>current</emphasis> entry, similar to a
|
||||
file seek index in a classic file system file, but without
|
||||
absolute positions. It may be altered with
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>sd_journal_seek_head</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and related calls. The current entry position may be exported in
|
||||
<emphasis>cursor</emphasis> strings, as accessible via
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
Cursor strings may be used to globally identify a specific journal
|
||||
entry in a stable way and then later to seek to it (or if the
|
||||
specific entry is not available locally, to its closest entry in
|
||||
time)
|
||||
<citerefentry><refentrytitle>sd_journal_seek_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para>Notification of journal changes is available via
|
||||
<function>sd_journal_get_fd()</function> and related
|
||||
calls.</para>
|
||||
</refsect1>
|
||||
<para>Notification of journal changes is available via
|
||||
<function>sd_journal_get_fd()</function> and related calls.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>The <function>sd_journal_open()</function>,
|
||||
<function>sd_journal_open_directory()</function>, and
|
||||
<function>sd_journal_open_files()</function> calls
|
||||
return 0 on success or a negative errno-style error
|
||||
code. <function>sd_journal_close()</function> returns
|
||||
nothing.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_open()</function>,
|
||||
<function>sd_journal_open_directory()</function>, and
|
||||
<function>sd_journal_open_files()</function> calls return 0 on
|
||||
success or a negative errno-style error code.
|
||||
<function>sd_journal_close()</function> returns nothing.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_open()</function>,
|
||||
<function>sd_journal_open_directory()</function> and
|
||||
<function>sd_journal_close()</function> interfaces are
|
||||
available as a shared library, which can be compiled and
|
||||
linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_open()</function>,
|
||||
<function>sd_journal_open_directory()</function> and
|
||||
<function>sd_journal_close()</function> interfaces are available
|
||||
as a shared library, which can be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
|
||||
<para><function>sd_journal_open()</function>,
|
||||
<function>sd_journal_close()</function>,
|
||||
<constant>SD_JOURNAL_LOCAL_ONLY</constant>,
|
||||
<constant>SD_JOURNAL_RUNTIME_ONLY</constant>,
|
||||
<constant>SD_JOURNAL_SYSTEM_ONLY</constant> were added
|
||||
in systemd-38.</para>
|
||||
<para><function>sd_journal_open()</function>,
|
||||
<function>sd_journal_close()</function>,
|
||||
<constant>SD_JOURNAL_LOCAL_ONLY</constant>,
|
||||
<constant>SD_JOURNAL_RUNTIME_ONLY</constant>,
|
||||
<constant>SD_JOURNAL_SYSTEM_ONLY</constant> were added in
|
||||
systemd-38.</para>
|
||||
|
||||
<para><function>sd_journal_open_directory()</function>
|
||||
was added in systemd-187.</para>
|
||||
<para><function>sd_journal_open_directory()</function> was added
|
||||
in systemd-187.</para>
|
||||
|
||||
<para><constant>SD_JOURNAL_SYSTEM</constant>,
|
||||
<constant>SD_JOURNAL_CURRENT_USER</constant>,
|
||||
and <function>sd_journal_open_files()</function>
|
||||
were added in systemd-205.
|
||||
<constant>SD_JOURNAL_SYSTEM_ONLY</constant>
|
||||
was deprecated.</para>
|
||||
</refsect1>
|
||||
<para><constant>SD_JOURNAL_SYSTEM</constant>,
|
||||
<constant>SD_JOURNAL_CURRENT_USER</constant>, and
|
||||
<function>sd_journal_open_files()</function> were added in
|
||||
systemd-205. <constant>SD_JOURNAL_SYSTEM_ONLY</constant> was
|
||||
deprecated.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machined</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machined</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,248 +23,238 @@
|
||||
|
||||
<refentry id="sd_journal_print">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_print</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_print</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_print</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_print</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_print</refname>
|
||||
<refname>sd_journal_printv</refname>
|
||||
<refname>sd_journal_send</refname>
|
||||
<refname>sd_journal_sendv</refname>
|
||||
<refname>sd_journal_perror</refname>
|
||||
<refname>SD_JOURNAL_SUPPRESS_LOCATION</refname>
|
||||
<refpurpose>Submit log entries to the journal</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_print</refname>
|
||||
<refname>sd_journal_printv</refname>
|
||||
<refname>sd_journal_send</refname>
|
||||
<refname>sd_journal_sendv</refname>
|
||||
<refname>sd_journal_perror</refname>
|
||||
<refname>SD_JOURNAL_SUPPRESS_LOCATION</refname>
|
||||
<refpurpose>Submit log entries to the journal</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_print</function></funcdef>
|
||||
<paramdef>int <parameter>priority</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>format</parameter></paramdef>
|
||||
<paramdef>...</paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_print</function></funcdef>
|
||||
<paramdef>int <parameter>priority</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>format</parameter></paramdef>
|
||||
<paramdef>...</paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_printv</function></funcdef>
|
||||
<paramdef>int <parameter>priority</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>format</parameter></paramdef>
|
||||
<paramdef>va_list <parameter>ap</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_printv</function></funcdef>
|
||||
<paramdef>int <parameter>priority</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>format</parameter></paramdef>
|
||||
<paramdef>va_list <parameter>ap</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_send</function></funcdef>
|
||||
<paramdef>const char *<parameter>format</parameter></paramdef>
|
||||
<paramdef>...</paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_send</function></funcdef>
|
||||
<paramdef>const char *<parameter>format</parameter></paramdef>
|
||||
<paramdef>...</paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_sendv</function></funcdef>
|
||||
<paramdef>const struct iovec *<parameter>iov</parameter></paramdef>
|
||||
<paramdef>int <parameter>n</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_sendv</function></funcdef>
|
||||
<paramdef>const struct iovec *<parameter>iov</parameter></paramdef>
|
||||
<paramdef>int <parameter>n</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_perror</function></funcdef>
|
||||
<paramdef>const char *<parameter>message</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_perror</function></funcdef>
|
||||
<paramdef>const char *<parameter>message</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_print()</function> may be
|
||||
used to submit simple, plain text log entries to the
|
||||
system journal. The first argument is a priority
|
||||
value. This is followed by a format string and its
|
||||
parameters, similar to
|
||||
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
or
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>. The
|
||||
priority value is one of
|
||||
<constant>LOG_EMERG</constant>,
|
||||
<constant>LOG_ALERT</constant>,
|
||||
<constant>LOG_CRIT</constant>,
|
||||
<constant>LOG_ERR</constant>,
|
||||
<constant>LOG_WARNING</constant>,
|
||||
<constant>LOG_NOTICE</constant>,
|
||||
<constant>LOG_INFO</constant>,
|
||||
<constant>LOG_DEBUG</constant>, as defined in
|
||||
<filename>syslog.h</filename>, see
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for details. It is recommended to use this call to
|
||||
submit log messages in the application locale or system
|
||||
locale and in UTF-8 format, but no such restrictions
|
||||
are enforced.</para>
|
||||
<para><function>sd_journal_print()</function> may be used to
|
||||
submit simple, plain text log entries to the system journal. The
|
||||
first argument is a priority value. This is followed by a format
|
||||
string and its parameters, similar to
|
||||
<citerefentry project='man-pages'><refentrytitle>printf</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
or
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
The priority value is one of
|
||||
<constant>LOG_EMERG</constant>,
|
||||
<constant>LOG_ALERT</constant>,
|
||||
<constant>LOG_CRIT</constant>,
|
||||
<constant>LOG_ERR</constant>,
|
||||
<constant>LOG_WARNING</constant>,
|
||||
<constant>LOG_NOTICE</constant>,
|
||||
<constant>LOG_INFO</constant>,
|
||||
<constant>LOG_DEBUG</constant>, as defined in
|
||||
<filename>syslog.h</filename>, see
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for details. It is recommended to use this call to submit log
|
||||
messages in the application locale or system locale and in UTF-8
|
||||
format, but no such restrictions are enforced.</para>
|
||||
|
||||
<para><function>sd_journal_printv()</function> is
|
||||
similar to <function>sd_journal_print()</function> but
|
||||
takes a variable argument list encapsulated in an
|
||||
object of type <varname>va_list</varname> (see
|
||||
<citerefentry><refentrytitle>stdarg</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information) instead of the format string. It
|
||||
is otherwise equivalent in behavior.</para>
|
||||
<para><function>sd_journal_printv()</function> is similar to
|
||||
<function>sd_journal_print()</function> but takes a variable
|
||||
argument list encapsulated in an object of type
|
||||
<varname>va_list</varname> (see
|
||||
<citerefentry><refentrytitle>stdarg</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information) instead of the format string. It is
|
||||
otherwise equivalent in behavior.</para>
|
||||
|
||||
<para><function>sd_journal_send()</function> may be
|
||||
used to submit structured log entries to the system
|
||||
journal. It takes a series of format strings, each
|
||||
immediately followed by their associated parameters,
|
||||
terminated by <constant>NULL</constant>. The strings passed should be of
|
||||
the format <literal>VARIABLE=value</literal>. The
|
||||
variable name must be in uppercase and consist only of
|
||||
characters, numbers and underscores, and may not begin
|
||||
with an underscore. (All assignments that do not
|
||||
follow this syntax will be ignored.) The value can be
|
||||
of any size and format. It is highly recommended to
|
||||
submit text strings formatted in the UTF-8 character
|
||||
encoding only, and submit binary fields only when
|
||||
formatting in UTF-8 strings is not sensible. A number
|
||||
of well known fields are defined, see
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
for details, but additional application defined fields
|
||||
may be used. A variable may be assigned more than one
|
||||
value per entry.</para>
|
||||
<para><function>sd_journal_send()</function> may be used to submit
|
||||
structured log entries to the system journal. It takes a series of
|
||||
format strings, each immediately followed by their associated
|
||||
parameters, terminated by <constant>NULL</constant>. The strings
|
||||
passed should be of the format <literal>VARIABLE=value</literal>.
|
||||
The variable name must be in uppercase and consist only of
|
||||
characters, numbers and underscores, and may not begin with an
|
||||
underscore. (All assignments that do not follow this syntax will
|
||||
be ignored.) The value can be of any size and format. It is highly
|
||||
recommended to submit text strings formatted in the UTF-8
|
||||
character encoding only, and submit binary fields only when
|
||||
formatting in UTF-8 strings is not sensible. A number of well
|
||||
known fields are defined, see
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
for details, but additional application defined fields may be
|
||||
used. A variable may be assigned more than one value per
|
||||
entry.</para>
|
||||
|
||||
<para><function>sd_journal_sendv()</function> is
|
||||
similar to <function>sd_journal_send()</function> but
|
||||
takes an array of <varname>struct iovec</varname> (as
|
||||
defined in <filename>uio.h</filename>, see
|
||||
<citerefentry><refentrytitle>readv</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for details) instead of the format string. Each
|
||||
structure should reference one field of the entry to
|
||||
submit. The second argument specifies the number of
|
||||
structures in the array.
|
||||
<function>sd_journal_sendv()</function> is
|
||||
particularly useful to submit binary objects to the
|
||||
journal where that is necessary.</para>
|
||||
<para><function>sd_journal_sendv()</function> is similar to
|
||||
<function>sd_journal_send()</function> but takes an array of
|
||||
<varname>struct iovec</varname> (as defined in
|
||||
<filename>uio.h</filename>, see
|
||||
<citerefentry><refentrytitle>readv</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for details) instead of the format string. Each structure should
|
||||
reference one field of the entry to submit. The second argument
|
||||
specifies the number of structures in the array.
|
||||
<function>sd_journal_sendv()</function> is particularly useful to
|
||||
submit binary objects to the journal where that is
|
||||
necessary.</para>
|
||||
|
||||
<para><function>sd_journal_perror()</function> is a
|
||||
similar to
|
||||
<citerefentry><refentrytitle>perror</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and writes a message to the journal that consists of
|
||||
the passed string, suffixed with ": " and a human
|
||||
readable representation of the current error code
|
||||
stored in
|
||||
<citerefentry project='man-pages'><refentrytitle>errno</refentrytitle><manvolnum>3</manvolnum></citerefentry>. If
|
||||
the message string is passed as <constant>NULL</constant> or empty string,
|
||||
only the error string representation will be written,
|
||||
prefixed with nothing. An additional journal field
|
||||
ERRNO= is included in the entry containing the numeric
|
||||
error code formatted as decimal string. The log
|
||||
priority used is <constant>LOG_ERR</constant> (3).</para>
|
||||
<para><function>sd_journal_perror()</function> is a similar to
|
||||
<citerefentry><refentrytitle>perror</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and writes a message to the journal that consists of the passed
|
||||
string, suffixed with ": " and a human readable representation of
|
||||
the current error code stored in
|
||||
<citerefentry project='man-pages'><refentrytitle>errno</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
If the message string is passed as <constant>NULL</constant> or
|
||||
empty string, only the error string representation will be
|
||||
written, prefixed with nothing. An additional journal field ERRNO=
|
||||
is included in the entry containing the numeric error code
|
||||
formatted as decimal string. The log priority used is
|
||||
<constant>LOG_ERR</constant> (3).</para>
|
||||
|
||||
<para>Note that <function>sd_journal_send()</function>
|
||||
is a wrapper around
|
||||
<function>sd_journal_sendv()</function> to make it
|
||||
easier to use when only text strings shall be
|
||||
submitted. Also, the following two calls are
|
||||
mostly equivalent:</para>
|
||||
<para>Note that <function>sd_journal_send()</function> is a
|
||||
wrapper around <function>sd_journal_sendv()</function> to make it
|
||||
easier to use when only text strings shall be submitted. Also, the
|
||||
following two calls are mostly equivalent:</para>
|
||||
|
||||
<programlisting>sd_journal_print(LOG_INFO, "Hello World, this is PID %lu!", (unsigned long) getpid());
|
||||
<programlisting>sd_journal_print(LOG_INFO, "Hello World, this is PID %lu!", (unsigned long) getpid());
|
||||
|
||||
sd_journal_send("MESSAGE=Hello World, this is PID %lu!", (unsigned long) getpid(),
|
||||
"PRIORITY=%i", LOG_INFO,
|
||||
NULL);</programlisting>
|
||||
"PRIORITY=%i", LOG_INFO,
|
||||
NULL);</programlisting>
|
||||
|
||||
<para>Note that these calls implicitly add fields for
|
||||
the source file, function name and code line where
|
||||
invoked. This is implemented with macros. If this is
|
||||
not desired, it can be turned off by defining
|
||||
SD_JOURNAL_SUPPRESS_LOCATION before including
|
||||
<filename>sd-journal.h</filename>.</para>
|
||||
<para>Note that these calls implicitly add fields for the source
|
||||
file, function name and code line where invoked. This is
|
||||
implemented with macros. If this is not desired, it can be turned
|
||||
off by defining SD_JOURNAL_SUPPRESS_LOCATION before including
|
||||
<filename>sd-journal.h</filename>.</para>
|
||||
|
||||
<para><citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and <function>sd_journal_print()</function> may
|
||||
largely be used interchangeably
|
||||
functionality-wise. However, note that log messages
|
||||
logged via the former take a different path to the
|
||||
journal server than the later, and hence global
|
||||
chronological ordering between the two streams cannot
|
||||
be guaranteed. Using
|
||||
<function>sd_journal_print()</function> has the
|
||||
benefit of logging source code line, filenames, and
|
||||
functions as metadata along all entries, and
|
||||
guaranteeing chronological ordering with structured
|
||||
log entries that are generated via
|
||||
<function>sd_journal_send()</function>. Using
|
||||
<function>syslog()</function> has the benefit of being
|
||||
more portable.</para>
|
||||
</refsect1>
|
||||
<para><citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
and <function>sd_journal_print()</function> may
|
||||
largely be used interchangeably
|
||||
functionality-wise. However, note that log messages
|
||||
logged via the former take a different path to the
|
||||
journal server than the later, and hence global
|
||||
chronological ordering between the two streams cannot
|
||||
be guaranteed. Using
|
||||
<function>sd_journal_print()</function> has the
|
||||
benefit of logging source code line, filenames, and
|
||||
functions as metadata along all entries, and
|
||||
guaranteeing chronological ordering with structured
|
||||
log entries that are generated via
|
||||
<function>sd_journal_send()</function>. Using
|
||||
<function>syslog()</function> has the benefit of being
|
||||
more portable.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>The four calls return 0 on success or a negative
|
||||
errno-style error code. The
|
||||
<citerefentry project='man-pages'><refentrytitle>errno</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
variable itself is not altered.</para>
|
||||
<para>The four calls return 0 on success or a negative errno-style
|
||||
error code. The
|
||||
<citerefentry project='man-pages'><refentrytitle>errno</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
variable itself is not altered.</para>
|
||||
|
||||
<para>If
|
||||
<citerefentry><refentrytitle>systemd-journald</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
is not running (the socket is not present), those
|
||||
functions do nothing, and also return 0.</para>
|
||||
</refsect1>
|
||||
<para>If
|
||||
<citerefentry><refentrytitle>systemd-journald</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
is not running (the socket is not present), those functions do
|
||||
nothing, and also return 0.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Async signal safety</title>
|
||||
<para><function>sd_journal_sendv()</function> is "async signal
|
||||
safe" in the meaning of <citerefentry><refentrytitle>signal</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
|
||||
</para>
|
||||
<refsect1>
|
||||
<title>Async signal safety</title>
|
||||
<para><function>sd_journal_sendv()</function> is "async signal
|
||||
safe" in the meaning of
|
||||
<citerefentry><refentrytitle>signal</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
|
||||
</para>
|
||||
|
||||
<para><function>sd_journal_print</function>,
|
||||
<function>sd_journal_printv</function>,
|
||||
<function>sd_journal_send</function>, and
|
||||
<function>sd_journal_perror</function> are
|
||||
not async signal safe.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_print</function>,
|
||||
<function>sd_journal_printv</function>,
|
||||
<function>sd_journal_send</function>, and
|
||||
<function>sd_journal_perror</function> are
|
||||
not async signal safe.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_print()</function>,
|
||||
<function>sd_journal_printv()</function>,
|
||||
<function>sd_journal_send()</function> and
|
||||
<function>sd_journal_sendv()</function> interfaces
|
||||
are available as a shared library, which can be compiled
|
||||
and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_print()</function>,
|
||||
<function>sd_journal_printv()</function>,
|
||||
<function>sd_journal_send()</function> and
|
||||
<function>sd_journal_sendv()</function> interfaces are available
|
||||
as a shared library, which can be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_stream_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>perror</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>errno</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>signal</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>socket</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_stream_fd</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>perror</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>errno</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>signal</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>socket</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,193 +23,184 @@
|
||||
|
||||
<refentry id="sd_journal_query_unique">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_query_unique</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_query_unique</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_query_unique</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_query_unique</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_query_unique</refname>
|
||||
<refname>sd_journal_enumerate_unique</refname>
|
||||
<refname>sd_journal_restart_unique</refname>
|
||||
<refname>SD_JOURNAL_FOREACH_UNIQUE</refname>
|
||||
<refpurpose>Read unique data fields from the journal</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_query_unique</refname>
|
||||
<refname>sd_journal_enumerate_unique</refname>
|
||||
<refname>sd_journal_restart_unique</refname>
|
||||
<refname>SD_JOURNAL_FOREACH_UNIQUE</refname>
|
||||
<refpurpose>Read unique data fields from the journal</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_query_unique</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>field</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_query_unique</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>field</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_enumerate_unique</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const void **<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t *<parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_enumerate_unique</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const void **<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t *<parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>void <function>sd_journal_restart_unique</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>void <function>sd_journal_restart_unique</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef><function>SD_JOURNAL_FOREACH_UNIQUE</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const void *<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t <parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef><function>SD_JOURNAL_FOREACH_UNIQUE</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const void *<parameter>data</parameter></paramdef>
|
||||
<paramdef>size_t <parameter>length</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_query_unique()</function>
|
||||
queries the journal for all unique values the
|
||||
specified field can take. It takes two arguments: the
|
||||
journal to query and the field name to look
|
||||
for. Well-known field names are listed on
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>. Field
|
||||
names must be specified without a trailing '='. After
|
||||
this function has been executed successfully the field
|
||||
values may be queried using
|
||||
<function>sd_journal_enumerate_unique()</function>. Invoking
|
||||
this call a second time will change the field name
|
||||
being queried and reset the enumeration index to the
|
||||
first field value that matches.</para>
|
||||
<para><function>sd_journal_query_unique()</function> queries the
|
||||
journal for all unique values the specified field can take. It
|
||||
takes two arguments: the journal to query and the field name to
|
||||
look for. Well-known field names are listed on
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>.
|
||||
Field names must be specified without a trailing '='. After this
|
||||
function has been executed successfully the field values may be
|
||||
queried using <function>sd_journal_enumerate_unique()</function>.
|
||||
Invoking this call a second time will change the field name being
|
||||
queried and reset the enumeration index to the first field value
|
||||
that matches.</para>
|
||||
|
||||
<para><function>sd_journal_enumerate_unique()</function>
|
||||
may be used to iterate through all data fields which
|
||||
match the previously selected field name as set with
|
||||
<function>sd_journal_query_unique()</function>. On
|
||||
each invocation the next field data matching the field
|
||||
name is returned. The order of the returned data
|
||||
fields is not defined. It takes three arguments: the
|
||||
journal context object, plus a pair of pointers to
|
||||
pointer/size variables where the data object and its
|
||||
size shall be stored in. The returned data is in a
|
||||
read-only memory map and is only valid until the next
|
||||
invocation of
|
||||
<function>sd_journal_enumerate_unique()</function>. Note
|
||||
that the data returned will be prefixed with the field
|
||||
name and '='. Note that this call is subject to the
|
||||
data field size threshold as controlled by
|
||||
<function>sd_journal_set_data_threshold()</function>.</para>
|
||||
<para><function>sd_journal_enumerate_unique()</function> may be
|
||||
used to iterate through all data fields which match the previously
|
||||
selected field name as set with
|
||||
<function>sd_journal_query_unique()</function>. On each invocation
|
||||
the next field data matching the field name is returned. The order
|
||||
of the returned data fields is not defined. It takes three
|
||||
arguments: the journal context object, plus a pair of pointers to
|
||||
pointer/size variables where the data object and its size shall be
|
||||
stored in. The returned data is in a read-only memory map and is
|
||||
only valid until the next invocation of
|
||||
<function>sd_journal_enumerate_unique()</function>. Note that the
|
||||
data returned will be prefixed with the field name and '='. Note
|
||||
that this call is subject to the data field size threshold as
|
||||
controlled by
|
||||
<function>sd_journal_set_data_threshold()</function>.</para>
|
||||
|
||||
<para><function>sd_journal_restart_unique()</function>
|
||||
resets the data enumeration index to the beginning of
|
||||
the list. The next invocation of
|
||||
<function>sd_journal_enumerate_unique()</function>
|
||||
will return the first field data matching the field
|
||||
name again.</para>
|
||||
<para><function>sd_journal_restart_unique()</function> resets the
|
||||
data enumeration index to the beginning of the list. The next
|
||||
invocation of <function>sd_journal_enumerate_unique()</function>
|
||||
will return the first field data matching the field name
|
||||
again.</para>
|
||||
|
||||
<para>Note that the
|
||||
<function>SD_JOURNAL_FOREACH_UNIQUE()</function> macro
|
||||
may be used as a handy wrapper around
|
||||
<function>sd_journal_restart_unique()</function> and
|
||||
<function>sd_journal_enumerate_unique()</function>.</para>
|
||||
<para>Note that the
|
||||
<function>SD_JOURNAL_FOREACH_UNIQUE()</function> macro may be used
|
||||
as a handy wrapper around
|
||||
<function>sd_journal_restart_unique()</function> and
|
||||
<function>sd_journal_enumerate_unique()</function>.</para>
|
||||
|
||||
<para>Note that these functions currently are not
|
||||
influenced by matches set with
|
||||
<function>sd_journal_add_match()</function> but this
|
||||
might change in a later version of this
|
||||
software.</para>
|
||||
</refsect1>
|
||||
<para>Note that these functions currently are not influenced by
|
||||
matches set with <function>sd_journal_add_match()</function> but
|
||||
this might change in a later version of this software.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para><function>sd_journal_query_unique()</function>
|
||||
returns 0 on success or a negative errno-style error
|
||||
code. <function>sd_journal_enumerate_unique()</function>
|
||||
returns a positive integer if the next field data has
|
||||
been read, 0 when no more fields are known, or a
|
||||
negative errno-style error
|
||||
code. <function>sd_journal_restart_unique()</function>
|
||||
returns nothing.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_journal_query_unique()</function> returns 0 on
|
||||
success or a negative errno-style error code.
|
||||
<function>sd_journal_enumerate_unique()</function> returns a
|
||||
positive integer if the next field data has been read, 0 when no
|
||||
more fields are known, or a negative errno-style error code.
|
||||
<function>sd_journal_restart_unique()</function> returns
|
||||
nothing.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_query_unique()</function>,
|
||||
<function>sd_journal_enumerate_unique()</function> and
|
||||
<function>sd_journal_restart_unique()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_query_unique()</function>,
|
||||
<function>sd_journal_enumerate_unique()</function> and
|
||||
<function>sd_journal_restart_unique()</function> interfaces are
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<para>Use the
|
||||
<function>SD_JOURNAL_FOREACH_UNIQUE</function> macro
|
||||
to iterate through all values a field of the journal
|
||||
can take. The following example lists all unit names
|
||||
referenced in the journal:</para>
|
||||
<para>Use the <function>SD_JOURNAL_FOREACH_UNIQUE</function> macro
|
||||
to iterate through all values a field of the journal can take. The
|
||||
following example lists all unit names referenced in the
|
||||
journal:</para>
|
||||
|
||||
<programlisting>#include <stdio.h>
|
||||
<programlisting>#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <systemd/sd-journal.h>
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
sd_journal *j;
|
||||
const void *d;
|
||||
size_t l;
|
||||
int r;
|
||||
sd_journal *j;
|
||||
const void *d;
|
||||
size_t l;
|
||||
int r;
|
||||
|
||||
r = sd_journal_open(&j, SD_JOURNAL_LOCAL_ONLY);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to open journal: %s\n", strerror(-r));
|
||||
return 1;
|
||||
}
|
||||
r = sd_journal_query_unique(j, "_SYSTEMD_UNIT");
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to query journal: %s\n", strerror(-r));
|
||||
return 1;
|
||||
}
|
||||
SD_JOURNAL_FOREACH_UNIQUE(j, d, l)
|
||||
printf("%.*s\n", (int) l, (const char*) d);
|
||||
sd_journal_close(j);
|
||||
return 0;
|
||||
r = sd_journal_open(&j, SD_JOURNAL_LOCAL_ONLY);
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to open journal: %s\n", strerror(-r));
|
||||
return 1;
|
||||
}
|
||||
r = sd_journal_query_unique(j, "_SYSTEMD_UNIT");
|
||||
if (r < 0) {
|
||||
fprintf(stderr, "Failed to query journal: %s\n", strerror(-r));
|
||||
return 1;
|
||||
}
|
||||
SD_JOURNAL_FOREACH_UNIQUE(j, d, l)
|
||||
printf("%.*s\n", (int) l, (const char*) d);
|
||||
sd_journal_close(j);
|
||||
return 0;
|
||||
}</programlisting>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_add_match</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_add_match</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,157 +23,150 @@
|
||||
|
||||
<refentry id="sd_journal_seek_head">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_seek_head</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_seek_head</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_seek_head</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_seek_head</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_seek_head</refname>
|
||||
<refname>sd_journal_seek_tail</refname>
|
||||
<refname>sd_journal_seek_monotonic_usec</refname>
|
||||
<refname>sd_journal_seek_realtime_usec</refname>
|
||||
<refname>sd_journal_seek_cursor</refname>
|
||||
<refpurpose>Seek to a position in the
|
||||
journal</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_seek_head</refname>
|
||||
<refname>sd_journal_seek_tail</refname>
|
||||
<refname>sd_journal_seek_monotonic_usec</refname>
|
||||
<refname>sd_journal_seek_realtime_usec</refname>
|
||||
<refname>sd_journal_seek_cursor</refname>
|
||||
<refpurpose>Seek to a position in the
|
||||
journal</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_seek_head</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_seek_head</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_seek_tail</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_seek_tail</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_seek_monotonic_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>sd_id128_t <parameter>boot_id</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_seek_monotonic_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>sd_id128_t <parameter>boot_id</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_seek_realtime_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_seek_realtime_usec</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>uint64_t <parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_seek_cursor</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>cursor</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_seek_cursor</function></funcdef>
|
||||
<paramdef>sd_journal *<parameter>j</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>cursor</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_seek_head()</function>
|
||||
seeks to the beginning of the journal, i.e. the oldest
|
||||
available entry.</para>
|
||||
<para><function>sd_journal_seek_head()</function> seeks to the
|
||||
beginning of the journal, i.e. the oldest available entry.</para>
|
||||
|
||||
<para>Similarly,
|
||||
<function>sd_journal_seek_tail()</function> may be
|
||||
used to seek to the end of the journal, i.e. the most
|
||||
recent available entry.</para>
|
||||
<para>Similarly, <function>sd_journal_seek_tail()</function> may
|
||||
be used to seek to the end of the journal, i.e. the most recent
|
||||
available entry.</para>
|
||||
|
||||
<para><function>sd_journal_seek_monotonic_usec()</function>
|
||||
seeks to the entry with the specified monotonic
|
||||
timestamp,
|
||||
i.e. <constant>CLOCK_MONOTONIC</constant>. Since
|
||||
monotonic time restarts on every reboot a boot ID
|
||||
needs to be specified as well.</para>
|
||||
<para><function>sd_journal_seek_monotonic_usec()</function> seeks
|
||||
to the entry with the specified monotonic timestamp, i.e.
|
||||
<constant>CLOCK_MONOTONIC</constant>. Since monotonic time
|
||||
restarts on every reboot a boot ID needs to be specified as
|
||||
well.</para>
|
||||
|
||||
<para><function>sd_journal_seek_realtime_usec()</function>
|
||||
seeks to the entry with the specified realtime
|
||||
(wallclock) timestamp,
|
||||
i.e. <constant>CLOCK_REALTIME</constant>. Note that
|
||||
the realtime clock is not necessarily monotonic. If a
|
||||
realtime timestamp is ambiguous, it is not defined
|
||||
which position is sought to.</para>
|
||||
<para><function>sd_journal_seek_realtime_usec()</function> seeks
|
||||
to the entry with the specified realtime (wallclock) timestamp,
|
||||
i.e. <constant>CLOCK_REALTIME</constant>. Note that the realtime
|
||||
clock is not necessarily monotonic. If a realtime timestamp is
|
||||
ambiguous, it is not defined which position is sought to.</para>
|
||||
|
||||
<para><function>sd_journal_seek_cursor()</function>
|
||||
seeks to the entry located at the specified cursor
|
||||
string. For details on cursors, see
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>. If
|
||||
no entry matching the specified cursor is found the
|
||||
call will seek to the next closest entry (in terms of
|
||||
time) instead. To verify whether the newly selected
|
||||
entry actually matches the cursor, use
|
||||
<citerefentry><refentrytitle>sd_journal_test_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
<para><function>sd_journal_seek_cursor()</function> seeks to the
|
||||
entry located at the specified cursor string. For details on
|
||||
cursors, see
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
If no entry matching the specified cursor is found the call will
|
||||
seek to the next closest entry (in terms of time) instead. To
|
||||
verify whether the newly selected entry actually matches the
|
||||
cursor, use
|
||||
<citerefentry><refentrytitle>sd_journal_test_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
|
||||
|
||||
<para>Note that these calls do not actually make any
|
||||
entry the new current entry, this needs to be done in
|
||||
a separate step with a subsequent
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
invocation (or a similar call). Only then, entry data
|
||||
may be retrieved via
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>. If
|
||||
no entry exists that matches exactly the specified
|
||||
seek address, the next closest is sought to. If
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
is used, the closest following entry will be sought to,
|
||||
if
|
||||
<citerefentry><refentrytitle>sd_journal_previous</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
is used the closest preceding entry is sought
|
||||
to.</para>
|
||||
</refsect1>
|
||||
<para>Note that these calls do not actually make any entry the new
|
||||
current entry, this needs to be done in a separate step with a
|
||||
subsequent
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
invocation (or a similar call). Only then, entry data may be
|
||||
retrieved via
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
If no entry exists that matches exactly the specified seek
|
||||
address, the next closest is sought to. If
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
is used, the closest following entry will be sought to, if
|
||||
<citerefentry><refentrytitle>sd_journal_previous</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
is used the closest preceding entry is sought to.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>The functions return 0 on success or a negative
|
||||
errno-style error code.</para>
|
||||
</refsect1>
|
||||
<para>The functions return 0 on success or a negative errno-style
|
||||
error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_journal_seek_head()</function>,
|
||||
<function>sd_journal_seek_tail()</function>,
|
||||
<function>sd_journal_seek_monotonic_usec()</function>,
|
||||
<function>sd_journal_seek_realtime_usec()</function>,
|
||||
and <function>sd_journal_seek_cursor()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_journal_seek_head()</function>,
|
||||
<function>sd_journal_seek_tail()</function>,
|
||||
<function>sd_journal_seek_monotonic_usec()</function>,
|
||||
<function>sd_journal_seek_realtime_usec()</function>,
|
||||
and <function>sd_journal_seek_cursor()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_open</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_next</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_data</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_cursor</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_get_realtime_usec</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,108 +23,101 @@
|
||||
|
||||
<refentry id="sd_journal_stream_fd">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_journal_stream_fd</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_journal_stream_fd</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_stream_fd</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_journal_stream_fd</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_journal_stream_fd</refname>
|
||||
<refpurpose>Create log stream file descriptor to the journal</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_journal_stream_fd</refname>
|
||||
<refpurpose>Create log stream file descriptor to the journal</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-journal.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_stream_fd</function></funcdef>
|
||||
<paramdef>const char *<parameter>identifier</parameter></paramdef>
|
||||
<paramdef>int <parameter>priority</parameter></paramdef>
|
||||
<paramdef>int <parameter>level_prefix</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_journal_stream_fd</function></funcdef>
|
||||
<paramdef>const char *<parameter>identifier</parameter></paramdef>
|
||||
<paramdef>int <parameter>priority</parameter></paramdef>
|
||||
<paramdef>int <parameter>level_prefix</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_journal_stream_fd()</function> may
|
||||
be used to create a log stream file descriptor. Log
|
||||
messages written to this file descriptor as simple
|
||||
newline-separated text strings are written to the
|
||||
journal. This file descriptor can be used internally
|
||||
by applications or be made standard output or standard
|
||||
error of other processes executed.</para>
|
||||
<para><function>sd_journal_stream_fd()</function> may be used to
|
||||
create a log stream file descriptor. Log messages written to this
|
||||
file descriptor as simple newline-separated text strings are
|
||||
written to the journal. This file descriptor can be used
|
||||
internally by applications or be made standard output or standard
|
||||
error of other processes executed.</para>
|
||||
|
||||
<para><function>sd_journal_stream_fd()</function>
|
||||
takes a short program identifier string as first
|
||||
argument, which will be written to the journal as
|
||||
_SYSLOG_IDENTIFIER= field for each log entry (see
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
for more information). The second argument shall be
|
||||
the default priority level for all messages. The
|
||||
priority level is one of <constant>LOG_EMERG</constant>,
|
||||
<constant>LOG_ALERT</constant>,
|
||||
<constant>LOG_CRIT</constant>,
|
||||
<constant>LOG_ERR</constant>,
|
||||
<constant>LOG_WARNING</constant>,
|
||||
<constant>LOG_NOTICE</constant>,
|
||||
<constant>LOG_INFO</constant>,
|
||||
<constant>LOG_DEBUG</constant>, as defined in
|
||||
<filename>syslog.h</filename>, see
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for details. The third argument is a boolean: if true
|
||||
kernel-style log level prefixes (such as
|
||||
<constant>SD_WARNING</constant>) are interpreted, see
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information.</para>
|
||||
<para><function>sd_journal_stream_fd()</function> takes a short
|
||||
program identifier string as first argument, which will be written
|
||||
to the journal as _SYSLOG_IDENTIFIER= field for each log entry
|
||||
(see
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
for more information). The second argument shall be the default
|
||||
priority level for all messages. The priority level is one of
|
||||
<constant>LOG_EMERG</constant>, <constant>LOG_ALERT</constant>,
|
||||
<constant>LOG_CRIT</constant>, <constant>LOG_ERR</constant>,
|
||||
<constant>LOG_WARNING</constant>, <constant>LOG_NOTICE</constant>,
|
||||
<constant>LOG_INFO</constant>, <constant>LOG_DEBUG</constant>, as
|
||||
defined in <filename>syslog.h</filename>, see
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for details. The third argument is a boolean: if true kernel-style
|
||||
log level prefixes (such as <constant>SD_WARNING</constant>) are
|
||||
interpreted, see
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for more information.</para>
|
||||
|
||||
<para>It is recommended that applications log UTF-8
|
||||
messages only with this API, but this is not
|
||||
enforced.</para>
|
||||
<para>It is recommended that applications log UTF-8 messages only
|
||||
with this API, but this is not enforced.</para>
|
||||
</refsect1>
|
||||
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<para>The call returns a valid write-only file descriptor on
|
||||
success or a negative errno-style error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<para>The call returns a valid write-only file descriptor on success or a
|
||||
negative errno-style error code.</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<para>The <function>sd_journal_stream_fd()</function> interface is
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<para>The <function>sd_journal_stream_fd()</function>
|
||||
interface is available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<para>Creating a log stream suitable for
|
||||
<citerefentry project='man-pages'><refentrytitle>fprintf</refentrytitle><manvolnum>3</manvolnum></citerefentry>:</para>
|
||||
|
||||
<para>Creating a log stream suitable for
|
||||
<citerefentry project='man-pages'><refentrytitle>fprintf</refentrytitle><manvolnum>3</manvolnum></citerefentry>:</para>
|
||||
|
||||
<programlisting>#include <syslog.h>
|
||||
<programlisting>#include <syslog.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
@@ -132,39 +125,39 @@
|
||||
#include <systemd/sd-daemon.h>
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
int fd;
|
||||
FILE *log;
|
||||
fd = sd_journal_stream_fd("test", LOG_INFO, 1);
|
||||
if (fd < 0) {
|
||||
fprintf(stderr, "Failed to create stream fd: %s\n", strerror(-fd));
|
||||
return 1;
|
||||
}
|
||||
log = fdopen(fd, "w");
|
||||
if (!log) {
|
||||
fprintf(stderr, "Failed to create file object: %m\n");
|
||||
close(fd);
|
||||
return 1;
|
||||
}
|
||||
fprintf(log, "Hello World!\n");
|
||||
fprintf(log, SD_WARNING "This is a warning!\n");
|
||||
fclose(log);
|
||||
return 0;
|
||||
int fd;
|
||||
FILE *log;
|
||||
fd = sd_journal_stream_fd("test", LOG_INFO, 1);
|
||||
if (fd < 0) {
|
||||
fprintf(stderr, "Failed to create stream fd: %s\n", strerror(-fd));
|
||||
return 1;
|
||||
}
|
||||
log = fdopen(fd, "w");
|
||||
if (!log) {
|
||||
fprintf(stderr, "Failed to create file object: %m\n");
|
||||
close(fd);
|
||||
return 1;
|
||||
}
|
||||
fprintf(log, "Hello World!\n");
|
||||
fprintf(log, SD_WARNING "This is a warning!\n");
|
||||
fclose(log);
|
||||
return 0;
|
||||
}</programlisting>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>fprintf</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>fprintf</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,164 +22,155 @@
|
||||
-->
|
||||
|
||||
<refentry id="sd_listen_fds"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_listen_fds</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_listen_fds</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_listen_fds</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_listen_fds</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_listen_fds</refname>
|
||||
<refname>SD_LISTEN_FDS_START</refname>
|
||||
<refpurpose>Check for file descriptors passed by the system manager</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_listen_fds</refname>
|
||||
<refname>SD_LISTEN_FDS_START</refname>
|
||||
<refpurpose>Check for file descriptors passed by the system manager</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
|
||||
<funcsynopsisinfo>#define SD_LISTEN_FDS_START 3</funcsynopsisinfo>
|
||||
<funcsynopsisinfo>#define SD_LISTEN_FDS_START 3</funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_listen_fds</function></funcdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_listen_fds</function></funcdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_listen_fds()</function> shall be
|
||||
called by a daemon to check for file descriptors
|
||||
passed by the init system as part of the socket-based
|
||||
activation logic.</para>
|
||||
<para><function>sd_listen_fds()</function> shall be called by a
|
||||
daemon to check for file descriptors passed by the init system as
|
||||
part of the socket-based activation logic.</para>
|
||||
|
||||
<para>If the <parameter>unset_environment</parameter>
|
||||
parameter is non-zero,
|
||||
<function>sd_listen_fds()</function> will unset the
|
||||
<varname>$LISTEN_FDS</varname> and <varname>$LISTEN_PID</varname>
|
||||
environment variables before returning (regardless of
|
||||
whether the function call itself succeeded or
|
||||
not). Further calls to
|
||||
<function>sd_listen_fds()</function> will then fail,
|
||||
but the variables are no longer inherited by child
|
||||
processes.</para>
|
||||
<para>If the <parameter>unset_environment</parameter> parameter is
|
||||
non-zero, <function>sd_listen_fds()</function> will unset the
|
||||
<varname>$LISTEN_FDS</varname> and <varname>$LISTEN_PID</varname>
|
||||
environment variables before returning (regardless of whether the
|
||||
function call itself succeeded or not). Further calls to
|
||||
<function>sd_listen_fds()</function> will then fail, but the
|
||||
variables are no longer inherited by child processes.</para>
|
||||
|
||||
<para>If a daemon receives more than one file
|
||||
descriptor, they will be passed in the same order as
|
||||
configured in the systemd socket unit file (see
|
||||
<citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details). Nonetheless, it is recommended to verify
|
||||
the correct socket types before using them. To
|
||||
simplify this checking, the functions
|
||||
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket_inet</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket_unix</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
are provided. In order to maximize flexibility, it is
|
||||
recommended to make these checks as loose as possible
|
||||
without allowing incorrect setups. i.e. often, the
|
||||
actual port number a socket is bound to matters little
|
||||
for the service to work, hence it should not be
|
||||
verified. On the other hand, whether a socket is a
|
||||
datagram or stream socket matters a lot for the most
|
||||
common program logics and should be checked.</para>
|
||||
<para>If a daemon receives more than one file descriptor, they
|
||||
will be passed in the same order as configured in the systemd
|
||||
socket unit file (see
|
||||
<citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details). Nonetheless, it is recommended to verify the correct
|
||||
socket types before using them. To simplify this checking, the
|
||||
functions
|
||||
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket_inet</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket_unix</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
are provided. In order to maximize flexibility, it is recommended
|
||||
to make these checks as loose as possible without allowing
|
||||
incorrect setups. i.e. often, the actual port number a socket is
|
||||
bound to matters little for the service to work, hence it should
|
||||
not be verified. On the other hand, whether a socket is a datagram
|
||||
or stream socket matters a lot for the most common program logics
|
||||
and should be checked.</para>
|
||||
|
||||
<para>This function call will set the FD_CLOEXEC flag
|
||||
for all passed file descriptors to avoid further
|
||||
inheritance to children of the calling process.</para>
|
||||
<para>This function call will set the FD_CLOEXEC flag for all
|
||||
passed file descriptors to avoid further inheritance to children
|
||||
of the calling process.</para>
|
||||
|
||||
<para>If multiple socket units activate the same
|
||||
service the order of the file descriptors passed to
|
||||
its main process is undefined. If additional file
|
||||
descriptors have been passed to the service manager
|
||||
using
|
||||
<citerefentry><refentrytitle>sd_pid_notify_with_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>'s
|
||||
<literal>FDSTORE=1</literal> messages, these file
|
||||
descriptors are passed last, in arbitrary order, and
|
||||
with duplicates removed.</para>
|
||||
</refsect1>
|
||||
<para>If multiple socket units activate the same service the order
|
||||
of the file descriptors passed to its main process is undefined.
|
||||
If additional file descriptors have been passed to the service
|
||||
manager using
|
||||
<citerefentry><refentrytitle>sd_pid_notify_with_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>'s
|
||||
<literal>FDSTORE=1</literal> messages, these file descriptors are
|
||||
passed last, in arbitrary order, and with duplicates
|
||||
removed.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On failure, this call returns a negative
|
||||
errno-style error code. If
|
||||
<varname>$LISTEN_FDS</varname>/<varname>$LISTEN_PID</varname>
|
||||
was not set or was not correctly set for this daemon and
|
||||
hence no file descriptors were received, 0 is
|
||||
returned. Otherwise, the number of file descriptors
|
||||
passed is returned. The application may find them
|
||||
starting with file descriptor SD_LISTEN_FDS_START,
|
||||
i.e. file descriptor 3.</para>
|
||||
</refsect1>
|
||||
<para>On failure, this call returns a negative errno-style error
|
||||
code. If
|
||||
<varname>$LISTEN_FDS</varname>/<varname>$LISTEN_PID</varname> was
|
||||
not set or was not correctly set for this daemon and hence no file
|
||||
descriptors were received, 0 is returned. Otherwise, the number of
|
||||
file descriptors passed is returned. The application may find them
|
||||
starting with file descriptor SD_LISTEN_FDS_START, i.e. file
|
||||
descriptor 3.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
|
||||
<xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
|
||||
|
||||
<para>Internally, this function checks whether the
|
||||
<varname>$LISTEN_PID</varname> environment variable
|
||||
equals the daemon PID. If not, it returns
|
||||
immediately. Otherwise, it parses the number passed in
|
||||
the <varname>$LISTEN_FDS</varname> environment
|
||||
variable, then sets the FD_CLOEXEC flag for the parsed
|
||||
number of file descriptors starting from
|
||||
SD_LISTEN_FDS_START. Finally, it returns the parsed
|
||||
number.</para>
|
||||
</refsect1>
|
||||
<para>Internally, this function checks whether the
|
||||
<varname>$LISTEN_PID</varname> environment variable equals the
|
||||
daemon PID. If not, it returns immediately. Otherwise, it parses
|
||||
the number passed in the <varname>$LISTEN_FDS</varname>
|
||||
environment variable, then sets the FD_CLOEXEC flag for the parsed
|
||||
number of file descriptors starting from SD_LISTEN_FDS_START.
|
||||
Finally, it returns the parsed number.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Environment</title>
|
||||
<refsect1>
|
||||
<title>Environment</title>
|
||||
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$LISTEN_PID</varname></term>
|
||||
<term><varname>$LISTEN_FDS</varname></term>
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$LISTEN_PID</varname></term>
|
||||
<term><varname>$LISTEN_FDS</varname></term>
|
||||
|
||||
<listitem><para>Set by the init system
|
||||
for supervised processes that use
|
||||
socket-based activation. This
|
||||
environment variable specifies the
|
||||
data
|
||||
<function>sd_listen_fds()</function>
|
||||
parses. See above for
|
||||
details.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>Set by the init system
|
||||
for supervised processes that use
|
||||
socket-based activation. This
|
||||
environment variable specifies the
|
||||
data
|
||||
<function>sd_listen_fds()</function>
|
||||
parses. See above for
|
||||
details.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket_inet</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket_unix</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket_inet</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_is_socket_unix</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,223 +23,211 @@
|
||||
|
||||
<refentry id="sd_login_monitor_new" conditional='HAVE_PAM'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_login_monitor_new</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_login_monitor_new</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_login_monitor_new</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_login_monitor_new</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_login_monitor_new</refname>
|
||||
<refname>sd_login_monitor_unref</refname>
|
||||
<refname>sd_login_monitor_flush</refname>
|
||||
<refname>sd_login_monitor_get_fd</refname>
|
||||
<refname>sd_login_monitor_get_events</refname>
|
||||
<refname>sd_login_monitor_get_timeout</refname>
|
||||
<refname>sd_login_monitor</refname>
|
||||
<refpurpose>Monitor login sessions, seats, users and virtual machines/containers</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_login_monitor_new</refname>
|
||||
<refname>sd_login_monitor_unref</refname>
|
||||
<refname>sd_login_monitor_flush</refname>
|
||||
<refname>sd_login_monitor_get_fd</refname>
|
||||
<refname>sd_login_monitor_get_events</refname>
|
||||
<refname>sd_login_monitor_get_timeout</refname>
|
||||
<refname>sd_login_monitor</refname>
|
||||
<refpurpose>Monitor login sessions, seats, users and virtual machines/containers</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_login_monitor_new</function></funcdef>
|
||||
<paramdef>const char *<parameter>category</parameter></paramdef>
|
||||
<paramdef>sd_login_monitor **<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_login_monitor_new</function></funcdef>
|
||||
<paramdef>const char *<parameter>category</parameter></paramdef>
|
||||
<paramdef>sd_login_monitor **<parameter>ret</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>sd_login_monitor *<function>sd_login_monitor_unref</function></funcdef>
|
||||
<paramdef>sd_login_monitor *<parameter>m</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>sd_login_monitor *<function>sd_login_monitor_unref</function></funcdef>
|
||||
<paramdef>sd_login_monitor *<parameter>m</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_login_monitor_flush</function></funcdef>
|
||||
<paramdef>sd_login_monitor *<parameter>m</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_login_monitor_flush</function></funcdef>
|
||||
<paramdef>sd_login_monitor *<parameter>m</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_login_monitor_get_fd</function></funcdef>
|
||||
<paramdef>sd_login_monitor *<parameter>m</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_login_monitor_get_fd</function></funcdef>
|
||||
<paramdef>sd_login_monitor *<parameter>m</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_login_monitor_get_events</function></funcdef>
|
||||
<paramdef>sd_login_monitor *<parameter>m</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_login_monitor_get_events</function></funcdef>
|
||||
<paramdef>sd_login_monitor *<parameter>m</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_login_monitor_get_timeout</function></funcdef>
|
||||
<paramdef>sd_login_monitor *<parameter>m</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>timeout_usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_login_monitor_get_timeout</function></funcdef>
|
||||
<paramdef>sd_login_monitor *<parameter>m</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>timeout_usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_login_monitor_new()</function> may
|
||||
be used to monitor login sessions, users, seats, and
|
||||
virtual machines/containers. Via a monitor object a
|
||||
file descriptor can be integrated into an application
|
||||
defined event loop which is woken up each time a user
|
||||
logs in, logs out or a seat is added or removed, or a
|
||||
session, user, seat or virtual machine/container
|
||||
changes state otherwise. The first parameter takes a
|
||||
string which can be <literal>seat</literal> (to get
|
||||
only notifications about seats being added, removed or
|
||||
changed), <literal>session</literal> (to get only
|
||||
notifications about sessions being created or removed
|
||||
or changed), <literal>uid</literal> (to get only
|
||||
notifications when a user changes state in respect to
|
||||
logins) or <literal>machine</literal> (to get only
|
||||
notifications when a virtual machine or container is
|
||||
started or stopped). If notifications shall be
|
||||
generated in all these conditions, <constant>NULL</constant> may be
|
||||
passed. Note that in the future additional categories
|
||||
may be defined. The second parameter returns a monitor
|
||||
object and needs to be freed with the
|
||||
<function>sd_login_monitor_unref()</function> call
|
||||
after use.</para>
|
||||
<para><function>sd_login_monitor_new()</function> may be used to
|
||||
monitor login sessions, users, seats, and virtual
|
||||
machines/containers. Via a monitor object a file descriptor can be
|
||||
integrated into an application defined event loop which is woken
|
||||
up each time a user logs in, logs out or a seat is added or
|
||||
removed, or a session, user, seat or virtual machine/container
|
||||
changes state otherwise. The first parameter takes a string which
|
||||
can be <literal>seat</literal> (to get only notifications about
|
||||
seats being added, removed or changed), <literal>session</literal>
|
||||
(to get only notifications about sessions being created or removed
|
||||
or changed), <literal>uid</literal> (to get only notifications
|
||||
when a user changes state in respect to logins) or
|
||||
<literal>machine</literal> (to get only notifications when a
|
||||
virtual machine or container is started or stopped). If
|
||||
notifications shall be generated in all these conditions,
|
||||
<constant>NULL</constant> may be passed. Note that in the future
|
||||
additional categories may be defined. The second parameter returns
|
||||
a monitor object and needs to be freed with the
|
||||
<function>sd_login_monitor_unref()</function> call after
|
||||
use.</para>
|
||||
|
||||
<para><function>sd_login_monitor_unref()</function>
|
||||
may be used to destroy a monitor object. Note that
|
||||
this will invalidate any file descriptor returned by
|
||||
<function>sd_login_monitor_get_fd()</function>.</para>
|
||||
<para><function>sd_login_monitor_unref()</function> may be used to
|
||||
destroy a monitor object. Note that this will invalidate any file
|
||||
descriptor returned by
|
||||
<function>sd_login_monitor_get_fd()</function>.</para>
|
||||
|
||||
<para><function>sd_login_monitor_flush()</function>
|
||||
may be used to reset the wakeup state of the monitor
|
||||
object. Whenever an event causes the monitor to wake
|
||||
up the event loop via the file descriptor this
|
||||
function needs to be called to reset the wake-up
|
||||
state. If this call is not invoked, the file descriptor
|
||||
will immediately wake up the event loop again.</para>
|
||||
<para><function>sd_login_monitor_flush()</function> may be used to
|
||||
reset the wakeup state of the monitor object. Whenever an event
|
||||
causes the monitor to wake up the event loop via the file
|
||||
descriptor this function needs to be called to reset the wake-up
|
||||
state. If this call is not invoked, the file descriptor will
|
||||
immediately wake up the event loop again.</para>
|
||||
|
||||
<para><function>sd_login_monitor_get_fd()</function>
|
||||
may be used to retrieve the file descriptor of the
|
||||
monitor object that may be integrated in an
|
||||
application defined event loop, based around
|
||||
<citerefentry><refentrytitle>poll</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
or a similar interface. The application should include
|
||||
the returned file descriptor as wake-up source for the
|
||||
events mask returned by
|
||||
<function>sd_login_monitor_get_events()</function>. It
|
||||
should pass a timeout value as returned by
|
||||
<function>sd_login_monitor_get_timeout()</function>. Whenever
|
||||
a wake-up is triggered the file descriptor needs to be
|
||||
reset via
|
||||
<function>sd_login_monitor_flush()</function>. An
|
||||
application needs to reread the login state with a
|
||||
function like
|
||||
<citerefentry><refentrytitle>sd_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
or similar to determine what changed.</para>
|
||||
<para><function>sd_login_monitor_get_fd()</function> may be used
|
||||
to retrieve the file descriptor of the monitor object that may be
|
||||
integrated in an application defined event loop, based around
|
||||
<citerefentry><refentrytitle>poll</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
or a similar interface. The application should include the
|
||||
returned file descriptor as wake-up source for the events mask
|
||||
returned by <function>sd_login_monitor_get_events()</function>. It
|
||||
should pass a timeout value as returned by
|
||||
<function>sd_login_monitor_get_timeout()</function>. Whenever a
|
||||
wake-up is triggered the file descriptor needs to be reset via
|
||||
<function>sd_login_monitor_flush()</function>. An application
|
||||
needs to reread the login state with a function like
|
||||
<citerefentry><refentrytitle>sd_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
or similar to determine what changed.</para>
|
||||
|
||||
<para><function>sd_login_monitor_get_events()</function>
|
||||
will return the <function>poll()</function> mask to
|
||||
wait for. This function will return a combination of
|
||||
<constant>POLLIN</constant>, <constant>POLLOUT</constant>
|
||||
and similar to fill into the
|
||||
<literal>.events</literal> field of <varname>struct
|
||||
pollfd</varname>.</para>
|
||||
<para><function>sd_login_monitor_get_events()</function> will
|
||||
return the <function>poll()</function> mask to wait for. This
|
||||
function will return a combination of <constant>POLLIN</constant>,
|
||||
<constant>POLLOUT</constant> and similar to fill into the
|
||||
<literal>.events</literal> field of <varname>struct
|
||||
pollfd</varname>.</para>
|
||||
|
||||
<para><function>sd_login_monitor_get_timeout()</function>
|
||||
will return a timeout value for usage in
|
||||
<function>poll()</function>. This returns a value in
|
||||
microseconds since the epoch of <constant>CLOCK_MONOTONIC</constant>
|
||||
for timing out <function>poll()</function> in
|
||||
<varname>timeout_usec</varname>. See
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
for details about
|
||||
<constant>CLOCK_MONOTONIC</constant>. If there is no
|
||||
timeout to wait for this will fill in
|
||||
<constant>(uint64_t) -1</constant> instead. Note that
|
||||
<function>poll()</function> takes a relative timeout
|
||||
in milliseconds rather than an absolute timeout in
|
||||
microseconds. To convert the absolute 'us' timeout into
|
||||
relative 'ms', use code like the following:</para>
|
||||
<para><function>sd_login_monitor_get_timeout()</function> will
|
||||
return a timeout value for usage in <function>poll()</function>.
|
||||
This returns a value in microseconds since the epoch of
|
||||
<constant>CLOCK_MONOTONIC</constant> for timing out
|
||||
<function>poll()</function> in <varname>timeout_usec</varname>.
|
||||
See
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
for details about <constant>CLOCK_MONOTONIC</constant>. If there
|
||||
is no timeout to wait for this will fill in <constant>(uint64_t)
|
||||
-1</constant> instead. Note that <function>poll()</function> takes
|
||||
a relative timeout in milliseconds rather than an absolute timeout
|
||||
in microseconds. To convert the absolute 'us' timeout into
|
||||
relative 'ms', use code like the following:</para>
|
||||
|
||||
<programlisting>uint64_t t;
|
||||
<programlisting>uint64_t t;
|
||||
int msec;
|
||||
sd_login_monitor_get_timeout(m, &t);
|
||||
if (t == (uint64_t) -1)
|
||||
msec = -1;
|
||||
msec = -1;
|
||||
else {
|
||||
struct timespec ts;
|
||||
uint64_t n;
|
||||
clock_getttime(CLOCK_MONOTONIC, &ts);
|
||||
n = (uint64_t) ts.tv_sec * 1000000 + ts.tv_nsec / 1000;
|
||||
msec = t > n ? (int) ((t - n + 999) / 1000) : 0;
|
||||
struct timespec ts;
|
||||
uint64_t n;
|
||||
clock_getttime(CLOCK_MONOTONIC, &ts);
|
||||
n = (uint64_t) ts.tv_sec * 1000000 + ts.tv_nsec / 1000;
|
||||
msec = t > n ? (int) ((t - n + 999) / 1000) : 0;
|
||||
}</programlisting>
|
||||
|
||||
<para>The code above does not do any error checking
|
||||
for brevity's sake. The calculated <varname>msec</varname>
|
||||
integer can be passed directly as
|
||||
<function>poll()</function>'s timeout
|
||||
parameter.</para>
|
||||
</refsect1>
|
||||
<para>The code above does not do any error checking for brevity's
|
||||
sake. The calculated <varname>msec</varname> integer can be passed
|
||||
directly as <function>poll()</function>'s timeout
|
||||
parameter.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On success,
|
||||
<function>sd_login_monitor_new()</function>,
|
||||
<function>sd_login_monitor_flush()</function> and
|
||||
<function>sd_login_monitor_get_timeout()</function>
|
||||
return 0 or a positive integer. On success,
|
||||
<function>sd_login_monitor_get_fd()</function> returns
|
||||
a Unix file descriptor. On success,
|
||||
<function>sd_login_monitor_get_events()</function>
|
||||
returns a combination of <constant>POLLIN</constant>,
|
||||
<constant>POLLOUT</constant> and suchlike. On failure,
|
||||
these calls return a negative errno-style error
|
||||
code.</para>
|
||||
<para>On success,
|
||||
<function>sd_login_monitor_new()</function>,
|
||||
<function>sd_login_monitor_flush()</function> and
|
||||
<function>sd_login_monitor_get_timeout()</function>
|
||||
return 0 or a positive integer. On success,
|
||||
<function>sd_login_monitor_get_fd()</function> returns
|
||||
a Unix file descriptor. On success,
|
||||
<function>sd_login_monitor_get_events()</function>
|
||||
returns a combination of <constant>POLLIN</constant>,
|
||||
<constant>POLLOUT</constant> and suchlike. On failure,
|
||||
these calls return a negative errno-style error
|
||||
code.</para>
|
||||
|
||||
<para><function>sd_login_monitor_unref()</function>
|
||||
always returns <constant>NULL</constant>.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_login_monitor_unref()</function>
|
||||
always returns <constant>NULL</constant>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_login_monitor_new()</function>,
|
||||
<function>sd_login_monitor_unref()</function>,
|
||||
<function>sd_login_monitor_flush()</function>,
|
||||
<function>sd_login_monitor_get_fd()</function>,
|
||||
<function>sd_login_monitor_get_events()</function> and
|
||||
<function>sd_login_monitor_get_timeout()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_login_monitor_new()</function>,
|
||||
<function>sd_login_monitor_unref()</function>,
|
||||
<function>sd_login_monitor_flush()</function>,
|
||||
<function>sd_login_monitor_get_fd()</function>,
|
||||
<function>sd_login_monitor_get_events()</function> and
|
||||
<function>sd_login_monitor_get_timeout()</function>
|
||||
interfaces are available as a shared library, which can be
|
||||
compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>poll</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_get_seats</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>poll</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>clock_gettime</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,104 +23,101 @@
|
||||
|
||||
<refentry id="sd_machine_get_class">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_machine_get_class</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_machine_get_class</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_machine_get_class</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_machine_get_class</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_machine_get_class</refname>
|
||||
<refname>sd_machine_get_ifindices</refname>
|
||||
<refpurpose>Determine the class and network interface
|
||||
indices of a locally running virtual machine or
|
||||
container.</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_machine_get_class</refname>
|
||||
<refname>sd_machine_get_ifindices</refname>
|
||||
<refpurpose>Determine the class and network interface indices of a
|
||||
locally running virtual machine or container.</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_machine_get_class</function></funcdef>
|
||||
<paramdef>const char* <parameter>machine</parameter></paramdef>
|
||||
<paramdef>char *<parameter>class</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_machine_get_class</function></funcdef>
|
||||
<paramdef>const char* <parameter>machine</parameter></paramdef>
|
||||
<paramdef>char *<parameter>class</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_machine_get_ifindices</function></funcdef>
|
||||
<paramdef>const char* <parameter>machine</parameter></paramdef>
|
||||
<paramdef>int **<parameter>ifindices</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_machine_get_ifindices</function></funcdef>
|
||||
<paramdef>const char* <parameter>machine</parameter></paramdef>
|
||||
<paramdef>int **<parameter>ifindices</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_machine_get_class()</function> may
|
||||
be used to determine the class of a locally running
|
||||
virtual machine or container that is registered with
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>. The
|
||||
string returned is either <literal>vm</literal> or
|
||||
<literal>container</literal>. The returned string
|
||||
needs to be freed with the libc <citerefentry
|
||||
project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_machine_get_class()</function> may be used to
|
||||
determine the class of a locally running virtual machine or
|
||||
container that is registered with
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
|
||||
The string returned is either <literal>vm</literal> or
|
||||
<literal>container</literal>. The returned string needs to be
|
||||
freed with the libc <citerefentry
|
||||
project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_machine_get_ifindices()</function>
|
||||
may be used to determine the numeric indices of the
|
||||
network interfaces on the host that are pointing
|
||||
towards the specified locally running virtual machine
|
||||
or container that is registered with
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>. The
|
||||
returned array needs to be freed with the libc
|
||||
<citerefentry
|
||||
project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_machine_get_ifindices()</function> may be used
|
||||
to determine the numeric indices of the network interfaces on the
|
||||
host that are pointing towards the specified locally running
|
||||
virtual machine or container that is registered with
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
|
||||
The returned array needs to be freed with the libc <citerefentry
|
||||
project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On success, these calls return 0 or a positive
|
||||
integer. On failure, these calls return a negative
|
||||
errno-style error code.</para>
|
||||
</refsect1>
|
||||
<para>On success, these calls return 0 or a positive integer. On
|
||||
failure, these calls return a negative errno-style error
|
||||
code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_machine_get_class()</function> and
|
||||
<function>sd_machine_get_ifindices()</function> interfaces are
|
||||
available as a shared library, which can be compiled
|
||||
and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_machine_get_class()</function> and
|
||||
<function>sd_machine_get_ifindices()</function> interfaces are
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_pid_get_machine_name</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_pid_get_machine_name</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,407 +22,355 @@
|
||||
-->
|
||||
|
||||
<refentry id="sd_notify"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_notify</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_notify</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_notify</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_notify</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_notify</refname>
|
||||
<refname>sd_notifyf</refname>
|
||||
<refname>sd_pid_notify</refname>
|
||||
<refname>sd_pid_notifyf</refname>
|
||||
<refname>sd_pid_notify_with_fds</refname>
|
||||
<refpurpose>Notify service manager about start-up completion and other service status changes</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_notify</refname>
|
||||
<refname>sd_notifyf</refname>
|
||||
<refname>sd_pid_notify</refname>
|
||||
<refname>sd_pid_notifyf</refname>
|
||||
<refname>sd_pid_notify_with_fds</refname>
|
||||
<refpurpose>Notify service manager about start-up completion and other service status changes</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_notify</function></funcdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>state</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_notify</function></funcdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>state</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_notifyf</function></funcdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>format</parameter></paramdef>
|
||||
<paramdef>...</paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_notifyf</function></funcdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>format</parameter></paramdef>
|
||||
<paramdef>...</paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_notify</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>state</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_notify</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>state</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_notifyf</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>format</parameter></paramdef>
|
||||
<paramdef>...</paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_notifyf</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>format</parameter></paramdef>
|
||||
<paramdef>...</paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_notify_with_fds</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>state</parameter></paramdef>
|
||||
<paramdef>const int *<parameter>fds</parameter></paramdef>
|
||||
<paramdef>unsigned <parameter>n_fds</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_notify_with_fds</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>state</parameter></paramdef>
|
||||
<paramdef>const int *<parameter>fds</parameter></paramdef>
|
||||
<paramdef>unsigned <parameter>n_fds</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<para><function>sd_notify()</function> may be called
|
||||
by a service to notify the service manager about
|
||||
state changes. It can be used to send arbitrary
|
||||
information, encoded in an environment-block-like
|
||||
string. Most importantly it can be used for start-up
|
||||
completion notification.</para>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<para><function>sd_notify()</function> may be called by a service
|
||||
to notify the service manager about state changes. It can be used
|
||||
to send arbitrary information, encoded in an
|
||||
environment-block-like string. Most importantly it can be used for
|
||||
start-up completion notification.</para>
|
||||
|
||||
<para>If the <parameter>unset_environment</parameter>
|
||||
parameter is non-zero, <function>sd_notify()</function>
|
||||
will unset the <varname>$NOTIFY_SOCKET</varname>
|
||||
environment variable before returning (regardless of
|
||||
whether the function call itself succeeded or
|
||||
not). Further calls to
|
||||
<function>sd_notify()</function> will then fail, but
|
||||
the variable is no longer inherited by child
|
||||
processes.</para>
|
||||
<para>If the <parameter>unset_environment</parameter> parameter is
|
||||
non-zero, <function>sd_notify()</function> will unset the
|
||||
<varname>$NOTIFY_SOCKET</varname> environment variable before
|
||||
returning (regardless of whether the function call itself
|
||||
succeeded or not). Further calls to
|
||||
<function>sd_notify()</function> will then fail, but the variable
|
||||
is no longer inherited by child processes.</para>
|
||||
|
||||
<para>The <parameter>state</parameter> parameter
|
||||
should contain a newline-separated list of variable
|
||||
assignments, similar in style to an environment
|
||||
block. A trailing newline is implied if none is
|
||||
specified. The string may contain any kind of variable
|
||||
assignments, but the following shall be considered
|
||||
well-known:</para>
|
||||
<para>The <parameter>state</parameter> parameter should contain a
|
||||
newline-separated list of variable assignments, similar in style
|
||||
to an environment block. A trailing newline is implied if none is
|
||||
specified. The string may contain any kind of variable
|
||||
assignments, but the following shall be considered
|
||||
well-known:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>READY=1</term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>READY=1</term>
|
||||
|
||||
<listitem><para>Tells the service
|
||||
manager that service startup is
|
||||
finished. This is only used by systemd
|
||||
if the service definition file has
|
||||
Type=notify set. Since there is little
|
||||
value in signaling non-readiness, the
|
||||
only value services should send is
|
||||
<literal>READY=1</literal>
|
||||
(i.e. <literal>READY=0</literal> is
|
||||
not defined).</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Tells the service manager that service startup
|
||||
is finished. This is only used by systemd if the service
|
||||
definition file has Type=notify set. Since there is little
|
||||
value in signaling non-readiness, the only value services
|
||||
should send is <literal>READY=1</literal> (i.e.
|
||||
<literal>READY=0</literal> is not defined).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>RELOADING=1</term>
|
||||
<varlistentry>
|
||||
<term>RELOADING=1</term>
|
||||
|
||||
<listitem><para>Tells the service manager
|
||||
that the service is reloading its
|
||||
configuration. This is useful to allow
|
||||
the service manager to track the service's
|
||||
internal state, and present it to the
|
||||
user. Note that a service that sends
|
||||
this notification must also send a
|
||||
<literal>READY=1</literal>
|
||||
notification when it completed
|
||||
reloading its
|
||||
configuration.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Tells the service manager that the service is
|
||||
reloading its configuration. This is useful to allow the
|
||||
service manager to track the service's internal state, and
|
||||
present it to the user. Note that a service that sends this
|
||||
notification must also send a <literal>READY=1</literal>
|
||||
notification when it completed reloading its
|
||||
configuration.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>STOPPING=1</term>
|
||||
<varlistentry>
|
||||
<term>STOPPING=1</term>
|
||||
|
||||
<listitem><para>Tells the service manager
|
||||
that the service is beginning its
|
||||
shutdown. This is useful to allow the
|
||||
service manager to track the service's
|
||||
internal state, and present it to the
|
||||
user.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Tells the service manager that the service is
|
||||
beginning its shutdown. This is useful to allow the service
|
||||
manager to track the service's internal state, and present it
|
||||
to the user.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>STATUS=...</term>
|
||||
<varlistentry>
|
||||
<term>STATUS=...</term>
|
||||
|
||||
<listitem><para>Passes a single-line
|
||||
UTF-8 status string back to the service manager
|
||||
that describes the service state. This
|
||||
is free-form and can be used for
|
||||
various purposes: general state
|
||||
feedback, fsck-like programs could
|
||||
pass completion percentages and
|
||||
failing programs could pass a human
|
||||
readable error message. Example:
|
||||
<literal>STATUS=Completed 66% of file
|
||||
system
|
||||
check...</literal></para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Passes a single-line UTF-8 status string back
|
||||
to the service manager that describes the service state. This
|
||||
is free-form and can be used for various purposes: general
|
||||
state feedback, fsck-like programs could pass completion
|
||||
percentages and failing programs could pass a human readable
|
||||
error message. Example: <literal>STATUS=Completed 66% of file
|
||||
system check...</literal></para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>ERRNO=...</term>
|
||||
<varlistentry>
|
||||
<term>ERRNO=...</term>
|
||||
|
||||
<listitem><para>If a service fails, the
|
||||
errno-style error code, formatted as
|
||||
string. Example: <literal>ERRNO=2</literal> for
|
||||
ENOENT.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>If a service fails, the errno-style error
|
||||
code, formatted as string. Example: <literal>ERRNO=2</literal>
|
||||
for ENOENT.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>BUSERROR=...</term>
|
||||
<varlistentry>
|
||||
<term>BUSERROR=...</term>
|
||||
|
||||
<listitem><para>If a service fails, the
|
||||
D-Bus error-style error code. Example:
|
||||
<literal>BUSERROR=org.freedesktop.DBus.Error.TimedOut</literal></para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>If a service fails, the D-Bus error-style
|
||||
error code. Example:
|
||||
<literal>BUSERROR=org.freedesktop.DBus.Error.TimedOut</literal></para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>MAINPID=...</term>
|
||||
<varlistentry>
|
||||
<term>MAINPID=...</term>
|
||||
|
||||
<listitem><para>The main process ID (PID) of the
|
||||
service, in case the service manager did
|
||||
not fork off the process
|
||||
itself. Example:
|
||||
<literal>MAINPID=4711</literal></para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>The main process ID (PID) of the service, in
|
||||
case the service manager did not fork off the process itself.
|
||||
Example: <literal>MAINPID=4711</literal></para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>WATCHDOG=1</term>
|
||||
<varlistentry>
|
||||
<term>WATCHDOG=1</term>
|
||||
|
||||
<listitem><para>Tells the service manager to
|
||||
update the watchdog timestamp. This is
|
||||
the keep-alive ping that services need
|
||||
to issue in regular intervals if
|
||||
<varname>WatchdogSec=</varname> is
|
||||
enabled for it. See
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for information how to enable this
|
||||
functionality and
|
||||
<citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for the details of how the service can
|
||||
check if the the watchdog is enabled.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Tells the service manager to update the
|
||||
watchdog timestamp. This is the keep-alive ping that services
|
||||
need to issue in regular intervals if
|
||||
<varname>WatchdogSec=</varname> is enabled for it. See
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for information how to enable this functionality and
|
||||
<citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
for the details of how the service can check if the the
|
||||
watchdog is enabled. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>FDSTORE=1</term>
|
||||
<varlistentry>
|
||||
<term>FDSTORE=1</term>
|
||||
|
||||
<listitem><para>Stores additional file
|
||||
descriptors in the service
|
||||
manager. File descriptors sent this
|
||||
way will be maintained per-service by
|
||||
the service manager and be passed
|
||||
again using the usual file descriptor
|
||||
passing logic on the next invocation
|
||||
of the service (see
|
||||
<citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>). This
|
||||
is useful for implementing service
|
||||
restart schemes where services
|
||||
serialize their state to
|
||||
<filename>/run</filename>, push their
|
||||
file descriptors to the system
|
||||
manager, and are then restarted,
|
||||
retrieving their state again via
|
||||
socket passing and
|
||||
<filename>/run</filename>. Note that
|
||||
the service manager will accept
|
||||
messages for a service only if
|
||||
<varname>FileDescriptorStoreMax=</varname>
|
||||
is set to non-zero for it (defaults to
|
||||
zero). See
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details. Multiple arrays of file
|
||||
descriptors may be sent in separate
|
||||
messages, in which case the arrays are
|
||||
combined. Note that the service
|
||||
manager removes duplicate file
|
||||
descriptors before passing them to the
|
||||
service. Use
|
||||
<function>sd_pid_notify_with_fds()</function>
|
||||
to send messages with
|
||||
<literal>FDSTORE=1</literal>, see
|
||||
below.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Stores additional file descriptors in the
|
||||
service manager. File descriptors sent this way will be
|
||||
maintained per-service by the service manager and be passed
|
||||
again using the usual file descriptor passing logic on the
|
||||
next invocation of the service (see
|
||||
<citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>).
|
||||
This is useful for implementing service restart schemes where
|
||||
services serialize their state to <filename>/run</filename>,
|
||||
push their file descriptors to the system manager, and are
|
||||
then restarted, retrieving their state again via socket
|
||||
passing and <filename>/run</filename>. Note that the service
|
||||
manager will accept messages for a service only if
|
||||
<varname>FileDescriptorStoreMax=</varname> is set to non-zero
|
||||
for it (defaults to zero). See
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details. Multiple arrays of file descriptors may be sent
|
||||
in separate messages, in which case the arrays are combined.
|
||||
Note that the service manager removes duplicate file
|
||||
descriptors before passing them to the service. Use
|
||||
<function>sd_pid_notify_with_fds()</function> to send messages
|
||||
with <literal>FDSTORE=1</literal>, see
|
||||
below.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</variablelist>
|
||||
|
||||
<para>It is recommended to prefix variable names that
|
||||
are not listed above with <varname>X_</varname> to
|
||||
avoid namespace clashes.</para>
|
||||
<para>It is recommended to prefix variable names that are not
|
||||
listed above with <varname>X_</varname> to avoid namespace
|
||||
clashes.</para>
|
||||
|
||||
<para>Note that systemd will accept status data sent
|
||||
from a service only if the
|
||||
<varname>NotifyAccess=</varname> option is correctly
|
||||
set in the service definition file. See
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details.</para>
|
||||
<para>Note that systemd will accept status data sent from a
|
||||
service only if the <varname>NotifyAccess=</varname> option is
|
||||
correctly set in the service definition file. See
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details.</para>
|
||||
|
||||
<para><function>sd_notifyf()</function> is similar to
|
||||
<function>sd_notify()</function> but takes a
|
||||
<function>printf()</function>-like format string plus
|
||||
arguments.</para>
|
||||
<para><function>sd_notifyf()</function> is similar to
|
||||
<function>sd_notify()</function> but takes a
|
||||
<function>printf()</function>-like format string plus
|
||||
arguments.</para>
|
||||
|
||||
<para><function>sd_pid_notify()</function> and
|
||||
<function>sd_pid_notifyf()</function> are similar to
|
||||
<function>sd_notify()</function> and
|
||||
<function>sd_notifyf()</function> but take a process
|
||||
ID (PID) to use as originating PID for the message as
|
||||
first argument. This is useful to send notification
|
||||
messages on behalf of other processes, provided the
|
||||
appropriate privileges are available. If the PID
|
||||
argument is specified as 0 the process ID of the
|
||||
calling process is used, in which case the calls are
|
||||
fully equivalent to <function>sd_notify()</function>
|
||||
and <function>sd_notifyf()</function>.</para>
|
||||
<para><function>sd_pid_notify()</function> and
|
||||
<function>sd_pid_notifyf()</function> are similar to
|
||||
<function>sd_notify()</function> and
|
||||
<function>sd_notifyf()</function> but take a process ID (PID) to
|
||||
use as originating PID for the message as first argument. This is
|
||||
useful to send notification messages on behalf of other processes,
|
||||
provided the appropriate privileges are available. If the PID
|
||||
argument is specified as 0 the process ID of the calling process
|
||||
is used, in which case the calls are fully equivalent to
|
||||
<function>sd_notify()</function> and
|
||||
<function>sd_notifyf()</function>.</para>
|
||||
|
||||
<para><function>sd_pid_notify_with_fds()</function> is
|
||||
similar to <function>sd_pid_notify()</function> but
|
||||
takes an additional array of file descriptors. These
|
||||
file descriptors are sent along the notification
|
||||
message to the service manager. This is particularly
|
||||
useful for sending <literal>FDSTORE=1</literal>
|
||||
messages, as described above. The additional arguments
|
||||
are a pointer to the file descriptor array plus the
|
||||
number of file descriptors in the array. If the number
|
||||
of file descriptors is passed as 0, the call is fully
|
||||
equivalent to <function>sd_pid_notify()</function>,
|
||||
i.e. no file descriptors are passed. Note that sending
|
||||
file descriptors to the service manager on messages
|
||||
that do not expect them (i.e. without
|
||||
<literal>FDSTORE=1</literal>) they are immediately
|
||||
closed on reception.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_pid_notify_with_fds()</function> is similar to
|
||||
<function>sd_pid_notify()</function> but takes an additional array
|
||||
of file descriptors. These file descriptors are sent along the
|
||||
notification message to the service manager. This is particularly
|
||||
useful for sending <literal>FDSTORE=1</literal> messages, as
|
||||
described above. The additional arguments are a pointer to the
|
||||
file descriptor array plus the number of file descriptors in the
|
||||
array. If the number of file descriptors is passed as 0, the call
|
||||
is fully equivalent to <function>sd_pid_notify()</function>, i.e.
|
||||
no file descriptors are passed. Note that sending file descriptors
|
||||
to the service manager on messages that do not expect them (i.e.
|
||||
without <literal>FDSTORE=1</literal>) they are immediately closed
|
||||
on reception.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On failure, these calls return a negative
|
||||
errno-style error code. If
|
||||
<varname>$NOTIFY_SOCKET</varname> was not set and
|
||||
hence no status data could be sent, 0 is returned. If
|
||||
the status was sent, these functions return with a
|
||||
positive return value. In order to support both, init
|
||||
systems that implement this scheme and those which
|
||||
do not, it is generally recommended to ignore the return
|
||||
value of this call.</para>
|
||||
</refsect1>
|
||||
<para>On failure, these calls return a negative errno-style error
|
||||
code. If <varname>$NOTIFY_SOCKET</varname> was not set and hence
|
||||
no status data could be sent, 0 is returned. If the status was
|
||||
sent, these functions return with a positive return value. In
|
||||
order to support both, init systems that implement this scheme and
|
||||
those which do not, it is generally recommended to ignore the
|
||||
return value of this call.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
|
||||
<xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
|
||||
|
||||
<para>Internally, these functions send a single
|
||||
datagram with the state string as payload to the
|
||||
<constant>AF_UNIX</constant> socket referenced in the
|
||||
<varname>$NOTIFY_SOCKET</varname> environment
|
||||
variable. If the first character of
|
||||
<varname>$NOTIFY_SOCKET</varname> is <literal>@</literal>, the string is
|
||||
understood as Linux abstract namespace socket. The
|
||||
datagram is accompanied by the process credentials of
|
||||
the sending service, using SCM_CREDENTIALS.</para>
|
||||
</refsect1>
|
||||
<para>Internally, these functions send a single datagram with the
|
||||
state string as payload to the <constant>AF_UNIX</constant> socket
|
||||
referenced in the <varname>$NOTIFY_SOCKET</varname> environment
|
||||
variable. If the first character of
|
||||
<varname>$NOTIFY_SOCKET</varname> is <literal>@</literal>, the
|
||||
string is understood as Linux abstract namespace socket. The
|
||||
datagram is accompanied by the process credentials of the sending
|
||||
service, using SCM_CREDENTIALS.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Environment</title>
|
||||
<refsect1>
|
||||
<title>Environment</title>
|
||||
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$NOTIFY_SOCKET</varname></term>
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$NOTIFY_SOCKET</varname></term>
|
||||
|
||||
<listitem><para>Set by the service manager
|
||||
for supervised processes for status
|
||||
and start-up completion
|
||||
notification. This environment variable
|
||||
specifies the socket
|
||||
<function>sd_notify()</function> talks
|
||||
to. See above for details.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>Set by the service manager for supervised
|
||||
processes for status and start-up completion notification.
|
||||
This environment variable specifies the socket
|
||||
<function>sd_notify()</function> talks to. See above for
|
||||
details.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<example>
|
||||
<title>Start-up Notification</title>
|
||||
<example>
|
||||
<title>Start-up Notification</title>
|
||||
|
||||
<para>When a service finished starting up, it
|
||||
might issue the following call to notify
|
||||
the service manager:</para>
|
||||
<para>When a service finished starting up, it might issue the
|
||||
following call to notify the service manager:</para>
|
||||
|
||||
<programlisting>sd_notify(0, "READY=1");</programlisting>
|
||||
</example>
|
||||
<programlisting>sd_notify(0, "READY=1");</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Extended Start-up Notification</title>
|
||||
<example>
|
||||
<title>Extended Start-up Notification</title>
|
||||
|
||||
<para>A service could send the following after
|
||||
completing initialization:</para>
|
||||
<para>A service could send the following after completing
|
||||
initialization:</para>
|
||||
|
||||
<programlisting>sd_notifyf(0, "READY=1\n"
|
||||
"STATUS=Processing requests...\n"
|
||||
"MAINPID=%lu",
|
||||
(unsigned long) getpid());</programlisting>
|
||||
</example>
|
||||
<programlisting>sd_notifyf(0, "READY=1\n"
|
||||
"STATUS=Processing requests...\n"
|
||||
"MAINPID=%lu",
|
||||
(unsigned long) getpid());</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Error Cause Notification</title>
|
||||
<example>
|
||||
<title>Error Cause Notification</title>
|
||||
|
||||
<para>A service could send the following shortly before exiting, on failure:</para>
|
||||
<para>A service could send the following shortly before exiting, on failure:</para>
|
||||
|
||||
<programlisting>sd_notifyf(0, "STATUS=Failed to start up: %s\n"
|
||||
"ERRNO=%i",
|
||||
strerror(errno),
|
||||
errno);</programlisting>
|
||||
</example>
|
||||
<programlisting>sd_notifyf(0, "STATUS=Failed to start up: %s\n"
|
||||
"ERRNO=%i",
|
||||
strerror(errno),
|
||||
errno);</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Store a File Descriptor in the Service Manager</title>
|
||||
<example>
|
||||
<title>Store a File Descriptor in the Service Manager</title>
|
||||
|
||||
<para>To store an open file descriptor in the
|
||||
service manager, in order to continue
|
||||
operation after a service restart without
|
||||
losing state use
|
||||
<literal>FDSTORE=1</literal>:</para>
|
||||
<para>To store an open file descriptor in the service manager,
|
||||
in order to continue operation after a service restart without
|
||||
losing state use <literal>FDSTORE=1</literal>:</para>
|
||||
|
||||
<programlisting>sd_pid_notify_with_fds(0, 0, "FDSTORE=1", &fd, 1);</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
<programlisting>sd_pid_notify_with_fds(0, 0, "FDSTORE=1", &fd, 1);</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,250 +23,239 @@
|
||||
|
||||
<refentry id="sd_pid_get_session" conditional='HAVE_PAM'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_pid_get_session</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_pid_get_session</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_pid_get_session</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_pid_get_session</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_pid_get_session</refname>
|
||||
<refname>sd_pid_get_unit</refname>
|
||||
<refname>sd_pid_get_user_unit</refname>
|
||||
<refname>sd_pid_get_owner_uid</refname>
|
||||
<refname>sd_pid_get_machine_name</refname>
|
||||
<refname>sd_pid_get_slice</refname>
|
||||
<refname>sd_peer_get_session</refname>
|
||||
<refname>sd_peer_get_unit</refname>
|
||||
<refname>sd_peer_get_user_unit</refname>
|
||||
<refname>sd_peer_get_owner_uid</refname>
|
||||
<refname>sd_peer_get_machine_name</refname>
|
||||
<refname>sd_peer_get_slice</refname>
|
||||
<refpurpose>Determine session, service, owner of a
|
||||
session, container/VM or slice of a specific
|
||||
PID or socket peer</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_pid_get_session</refname>
|
||||
<refname>sd_pid_get_unit</refname>
|
||||
<refname>sd_pid_get_user_unit</refname>
|
||||
<refname>sd_pid_get_owner_uid</refname>
|
||||
<refname>sd_pid_get_machine_name</refname>
|
||||
<refname>sd_pid_get_slice</refname>
|
||||
<refname>sd_peer_get_session</refname>
|
||||
<refname>sd_peer_get_unit</refname>
|
||||
<refname>sd_peer_get_user_unit</refname>
|
||||
<refname>sd_peer_get_owner_uid</refname>
|
||||
<refname>sd_peer_get_machine_name</refname>
|
||||
<refname>sd_peer_get_slice</refname>
|
||||
<refpurpose>Determine session, service, owner of a
|
||||
session, container/VM or slice of a specific
|
||||
PID or socket peer</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_session</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>session</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_session</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>session</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_unit</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>unit</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_unit</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>unit</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_user_unit</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>unit</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_user_unit</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>unit</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_owner_uid</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>uid_t *<parameter>uid</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_owner_uid</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>uid_t *<parameter>uid</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_machine_name</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>name</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_machine_name</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>name</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_slice</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>slice</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_pid_get_slice</function></funcdef>
|
||||
<paramdef>pid_t <parameter>pid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>slice</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_session</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>char **<parameter>session</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_session</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>char **<parameter>session</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_unit</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>char **<parameter>unit</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_unit</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>char **<parameter>unit</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_user_unit</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>char **<parameter>unit</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_user_unit</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>char **<parameter>unit</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_owner_uid</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>uid_t *<parameter>uid</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_owner_uid</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>uid_t *<parameter>uid</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_machine_name</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>char **<parameter>name</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_machine_name</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>char **<parameter>name</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_slice</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>char **<parameter>slice</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_peer_get_slice</function></funcdef>
|
||||
<paramdef>int <parameter>fd</parameter></paramdef>
|
||||
<paramdef>char **<parameter>slice</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_pid_get_session()</function> may be
|
||||
used to determine the login session identifier of a
|
||||
process identified by the specified process
|
||||
identifier. The session identifier is a short string,
|
||||
suitable for usage in file system paths. Note that not
|
||||
all processes are part of a login session (e.g. system
|
||||
service processes, user processes that are shared
|
||||
between multiple sessions of the same user, or kernel
|
||||
threads). For processes not being part of a login
|
||||
session this function will fail. The returned string
|
||||
needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_pid_get_session()</function> may be used to
|
||||
determine the login session identifier of a process identified by
|
||||
the specified process identifier. The session identifier is a
|
||||
short string, suitable for usage in file system paths. Note that
|
||||
not all processes are part of a login session (e.g. system service
|
||||
processes, user processes that are shared between multiple
|
||||
sessions of the same user, or kernel threads). For processes not
|
||||
being part of a login session this function will fail. The
|
||||
returned string needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_pid_get_unit()</function> may be
|
||||
used to determine the systemd system unit (i.e. system
|
||||
service) identifier of a process identified by the
|
||||
specified PID. The unit name is a short string,
|
||||
suitable for usage in file system paths. Note that not
|
||||
all processes are part of a system unit/service
|
||||
(e.g. user processes, or kernel threads). For
|
||||
processes not being part of a systemd system unit this
|
||||
function will fail. (More specifically: this call will
|
||||
not work for processes that are part of user units,
|
||||
use <function>sd_pid_get_user_unit()</function> for
|
||||
that.) The returned string needs to be freed with the
|
||||
libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_pid_get_unit()</function> may be used to
|
||||
determine the systemd system unit (i.e. system service) identifier
|
||||
of a process identified by the specified PID. The unit name is a
|
||||
short string, suitable for usage in file system paths. Note that
|
||||
not all processes are part of a system unit/service (e.g. user
|
||||
processes, or kernel threads). For processes not being part of a
|
||||
systemd system unit this function will fail. (More specifically:
|
||||
this call will not work for processes that are part of user units,
|
||||
use <function>sd_pid_get_user_unit()</function> for that.) The
|
||||
returned string needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_pid_get_user_unit()</function> may
|
||||
be used to determine the systemd user unit (i.e. user
|
||||
service) identifier of a process identified by the
|
||||
specified PID. This is similar to
|
||||
<function>sd_pid_get_unit()</function> but applies to
|
||||
user units instead of system units.</para>
|
||||
<para><function>sd_pid_get_user_unit()</function> may be used to
|
||||
determine the systemd user unit (i.e. user service) identifier of
|
||||
a process identified by the specified PID. This is similar to
|
||||
<function>sd_pid_get_unit()</function> but applies to user units
|
||||
instead of system units.</para>
|
||||
|
||||
<para><function>sd_pid_get_owner_uid()</function> may
|
||||
be used to determine the Unix user identifier of the
|
||||
owner of the session of a process identified the
|
||||
specified PID. Note that this function will succeed
|
||||
for user processes which are shared between multiple
|
||||
login sessions of the same user, where
|
||||
<function>sd_pid_get_session()</function> will
|
||||
fail. For processes not being part of a login session
|
||||
and not being a shared process of a user this function
|
||||
will fail.</para>
|
||||
<para><function>sd_pid_get_owner_uid()</function> may be used to
|
||||
determine the Unix user identifier of the owner of the session of
|
||||
a process identified the specified PID. Note that this function
|
||||
will succeed for user processes which are shared between multiple
|
||||
login sessions of the same user, where
|
||||
<function>sd_pid_get_session()</function> will fail. For processes
|
||||
not being part of a login session and not being a shared process
|
||||
of a user this function will fail.</para>
|
||||
|
||||
<para><function>sd_pid_get_machine_name()</function>
|
||||
may be used to determine the name of the VM or
|
||||
container is a member of. The machine name is a short
|
||||
string, suitable for usage in file system paths. The
|
||||
returned string needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_pid_get_machine_name()</function> may be used
|
||||
to determine the name of the VM or container is a member of. The
|
||||
machine name is a short string, suitable for usage in file system
|
||||
paths. The returned string needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_pid_get_slice()</function> may be
|
||||
used to determine the slice unit the process is a
|
||||
member of. See
|
||||
<citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details about slices. The returned string needs to
|
||||
be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_pid_get_slice()</function> may be used to
|
||||
determine the slice unit the process is a member of. See
|
||||
<citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details about slices. The returned string needs to be freed
|
||||
with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para>If the <varname>pid</varname> parameter of any
|
||||
of these functions is passed as 0, the operation is
|
||||
executed for the calling process.</para>
|
||||
<para>If the <varname>pid</varname> parameter of any of these
|
||||
functions is passed as 0, the operation is executed for the
|
||||
calling process.</para>
|
||||
|
||||
<para>The <function>sd_peer_get_session()</function>,
|
||||
<function>sd_peer_get_unit()</function>,
|
||||
<function>sd_peer_get_user_unit()</function>,
|
||||
<function>sd_peer_get_owner_uid()</function>,
|
||||
<function>sd_peer_get_machine_name()</function> and
|
||||
<function>sd_peer_get_slice()</function> calls operate
|
||||
similar to their PID counterparts, but operate on a
|
||||
connected AF_UNIX socket and retrieve information
|
||||
about the connected peer process.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_peer_get_session()</function>,
|
||||
<function>sd_peer_get_unit()</function>,
|
||||
<function>sd_peer_get_user_unit()</function>,
|
||||
<function>sd_peer_get_owner_uid()</function>,
|
||||
<function>sd_peer_get_machine_name()</function> and
|
||||
<function>sd_peer_get_slice()</function> calls operate similar to
|
||||
their PID counterparts, but operate on a connected AF_UNIX socket
|
||||
and retrieve information about the connected peer process.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On success, these calls return 0 or a positive
|
||||
integer. On failure, these calls return a negative
|
||||
errno-style error code.</para>
|
||||
</refsect1>
|
||||
<para>On success, these calls return 0 or a positive integer. On
|
||||
failure, these calls return a negative errno-style error
|
||||
code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_pid_get_session()</function>,
|
||||
<function>sd_pid_get_unit()</function>,
|
||||
<function>sd_pid_get_user_unit()</function>,
|
||||
<function>sd_pid_get_owner_uid()</function>,
|
||||
<function>sd_pid_get_machine_name()</function>,
|
||||
<function>sd_pid_get_slice()</function>,
|
||||
<function>sd_peer_get_session()</function>,
|
||||
<function>sd_peer_get_unit()</function>,
|
||||
<function>sd_peer_get_user_unit()</function>,
|
||||
<function>sd_peer_get_owner_uid()</function>,
|
||||
<function>sd_peer_get_machine_name()</function> and
|
||||
<function>sd_peer_get_slice()</function> interfaces are
|
||||
available as a shared library, which can be compiled
|
||||
and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
<para>The <function>sd_pid_get_session()</function>,
|
||||
<function>sd_pid_get_unit()</function>,
|
||||
<function>sd_pid_get_user_unit()</function>,
|
||||
<function>sd_pid_get_owner_uid()</function>,
|
||||
<function>sd_pid_get_machine_name()</function>,
|
||||
<function>sd_pid_get_slice()</function>,
|
||||
<function>sd_peer_get_session()</function>,
|
||||
<function>sd_peer_get_unit()</function>,
|
||||
<function>sd_peer_get_user_unit()</function>,
|
||||
<function>sd_peer_get_owner_uid()</function>,
|
||||
<function>sd_peer_get_machine_name()</function> and
|
||||
<function>sd_peer_get_slice()</function> interfaces are
|
||||
available as a shared library, which can be compiled
|
||||
and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
|
||||
<para>Note that the login session identifier as
|
||||
returned by <function>sd_pid_get_session()</function>
|
||||
is completely unrelated to the process session
|
||||
identifier as returned by
|
||||
<citerefentry><refentrytitle>getsid</refentrytitle><manvolnum>2</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
<para>Note that the login session identifier as
|
||||
returned by <function>sd_pid_get_session()</function>
|
||||
is completely unrelated to the process session
|
||||
identifier as returned by
|
||||
<citerefentry><refentrytitle>getsid</refentrytitle><manvolnum>2</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_session_is_active</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>getsid</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_session_is_active</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>getsid</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.slice</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machined.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,161 +23,153 @@
|
||||
|
||||
<refentry id="sd_seat_get_active" conditional='HAVE_PAM'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_seat_get_active</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_seat_get_active</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_seat_get_active</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_seat_get_active</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_seat_get_active</refname>
|
||||
<refname>sd_seat_get_sessions</refname>
|
||||
<refname>sd_seat_can_multi_session</refname>
|
||||
<refname>sd_seat_can_tty</refname>
|
||||
<refname>sd_seat_can_graphical</refname>
|
||||
<refpurpose>Determine state of a specific seat</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_seat_get_active</refname>
|
||||
<refname>sd_seat_get_sessions</refname>
|
||||
<refname>sd_seat_can_multi_session</refname>
|
||||
<refname>sd_seat_can_tty</refname>
|
||||
<refname>sd_seat_can_graphical</refname>
|
||||
<refpurpose>Determine state of a specific seat</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_seat_get_active</function></funcdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
<paramdef>char **<parameter>session</parameter></paramdef>
|
||||
<paramdef>uid_t *<parameter>uid</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_seat_get_active</function></funcdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
<paramdef>char **<parameter>session</parameter></paramdef>
|
||||
<paramdef>uid_t *<parameter>uid</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_seat_get_sessions</function></funcdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
<paramdef>char ***<parameter>sessions</parameter></paramdef>
|
||||
<paramdef>uid_t **<parameter>uid</parameter></paramdef>
|
||||
<paramdef>unsigned int *<parameter>n_uids</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_seat_get_sessions</function></funcdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
<paramdef>char ***<parameter>sessions</parameter></paramdef>
|
||||
<paramdef>uid_t **<parameter>uid</parameter></paramdef>
|
||||
<paramdef>unsigned int *<parameter>n_uids</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_seat_can_multi_session</function></funcdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_seat_can_multi_session</function></funcdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_seat_can_tty</function></funcdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_seat_can_tty</function></funcdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_seat_can_graphical</function></funcdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_seat_can_graphical</function></funcdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_seat_get_active()</function> may be
|
||||
used to determine which session is currently active on
|
||||
a seat, if there is any. Returns the session
|
||||
identifier and the user identifier of the Unix user
|
||||
the session is belonging to. Either the session or the
|
||||
user identifier parameter can be passed
|
||||
<constant>NULL</constant>, in case only one of the
|
||||
parameters shall be queried. The returned string needs
|
||||
to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_seat_get_active()</function> may be used to
|
||||
determine which session is currently active on a seat, if there is
|
||||
any. Returns the session identifier and the user identifier of the
|
||||
Unix user the session is belonging to. Either the session or the
|
||||
user identifier parameter can be passed <constant>NULL</constant>,
|
||||
in case only one of the parameters shall be queried. The returned
|
||||
string needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_seat_get_sessions()</function> may
|
||||
be used to determine all sessions on the specified
|
||||
seat. Returns two arrays, one (<constant>NULL</constant> terminated) with
|
||||
the session identifiers of the sessions and one with
|
||||
the user identifiers of the Unix users the sessions
|
||||
belong to. An additional parameter may be used to
|
||||
return the number of entries in the latter array. The
|
||||
two arrays and the latter parameter may be passed as
|
||||
<constant>NULL</constant> in case these values need not to be
|
||||
determined. The arrays and the strings referenced by
|
||||
them need to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use. Note that instead of an empty array
|
||||
<constant>NULL</constant> may be returned and should be considered
|
||||
equivalent to an empty array.</para>
|
||||
<para><function>sd_seat_get_sessions()</function> may be used to
|
||||
determine all sessions on the specified seat. Returns two arrays,
|
||||
one (<constant>NULL</constant> terminated) with the session
|
||||
identifiers of the sessions and one with the user identifiers of
|
||||
the Unix users the sessions belong to. An additional parameter may
|
||||
be used to return the number of entries in the latter array. The
|
||||
two arrays and the latter parameter may be passed as
|
||||
<constant>NULL</constant> in case these values need not to be
|
||||
determined. The arrays and the strings referenced by them need to
|
||||
be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use. Note that instead of an empty array
|
||||
<constant>NULL</constant> may be returned and should be considered
|
||||
equivalent to an empty array.</para>
|
||||
|
||||
<para><function>sd_seat_can_multi_session()</function>
|
||||
may be used to determine whether a specific seat is
|
||||
capable of multi-session, i.e. allows multiple login
|
||||
sessions in parallel (with only one being active at a
|
||||
time).</para>
|
||||
<para><function>sd_seat_can_multi_session()</function> may be used
|
||||
to determine whether a specific seat is capable of multi-session,
|
||||
i.e. allows multiple login sessions in parallel (with only one
|
||||
being active at a time).</para>
|
||||
|
||||
<para><function>sd_seat_can_tty()</function> may be
|
||||
used to determine whether a specific seat provides TTY
|
||||
functionality, i.e. is useful as a text console.</para>
|
||||
<para><function>sd_seat_can_tty()</function> may be used to
|
||||
determine whether a specific seat provides TTY functionality, i.e.
|
||||
is useful as a text console.</para>
|
||||
|
||||
<para><function>sd_seat_can_graphical()</function> may
|
||||
be used to determine whether a specific seat provides
|
||||
graphics functionality, i.e. is useful as a graphics
|
||||
display.</para>
|
||||
<para><function>sd_seat_can_graphical()</function> may be used to
|
||||
determine whether a specific seat provides graphics functionality,
|
||||
i.e. is useful as a graphics display.</para>
|
||||
|
||||
<para>If the <varname>seat</varname> parameter of any
|
||||
of these functions is passed as
|
||||
<constant>NULL</constant>, the operation is executed
|
||||
for the seat of the session of the calling process, if
|
||||
there is any.</para>
|
||||
</refsect1>
|
||||
<para>If the <varname>seat</varname> parameter of any of these
|
||||
functions is passed as <constant>NULL</constant>, the operation is
|
||||
executed for the seat of the session of the calling process, if
|
||||
there is any.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para> On success,
|
||||
<function>sd_seat_get_active()</function>
|
||||
returns 0 or a positive integer. On success,
|
||||
<function>sd_seat_get_sessions()</function> returns
|
||||
the number of entries in the session identifier
|
||||
array. If the test succeeds,
|
||||
<function>sd_seat_can_multi_session</function>,
|
||||
<function>sd_seat_can_tty</function> and
|
||||
<function>sd_seat_can_graphical</function> return a
|
||||
positive integer, if it fails 0. On failure, these
|
||||
calls return a negative errno-style error code.</para>
|
||||
</refsect1>
|
||||
<para> On success, <function>sd_seat_get_active()</function>
|
||||
returns 0 or a positive integer. On success,
|
||||
<function>sd_seat_get_sessions()</function> returns the number of
|
||||
entries in the session identifier array. If the test succeeds,
|
||||
<function>sd_seat_can_multi_session</function>,
|
||||
<function>sd_seat_can_tty</function> and
|
||||
<function>sd_seat_can_graphical</function> return a positive
|
||||
integer, if it fails 0. On failure, these calls return a negative
|
||||
errno-style error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_seat_get_active()</function>,
|
||||
<function>sd_seat_get_sessions()</function>,
|
||||
<function>sd_seat_can_multi_session()</function>,
|
||||
<function>sd_seat_can_tty()</function> and
|
||||
<function>sd_seat_can_grapical()</function> interfaces
|
||||
are available as a shared library, which can be compiled
|
||||
and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_seat_get_active()</function>,
|
||||
<function>sd_seat_get_sessions()</function>,
|
||||
<function>sd_seat_can_multi_session()</function>,
|
||||
<function>sd_seat_can_tty()</function> and
|
||||
<function>sd_seat_can_grapical()</function> interfaces are
|
||||
available as a shared library, which can be compiled and linked to
|
||||
with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_session_get_seat</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_session_get_seat</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,319 +23,300 @@
|
||||
|
||||
<refentry id="sd_session_is_active" conditional='HAVE_PAM'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_session_is_active</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_session_is_active</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_session_is_active</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_session_is_active</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_session_is_active</refname>
|
||||
<refname>sd_session_is_remote</refname>
|
||||
<refname>sd_session_get_state</refname>
|
||||
<refname>sd_session_get_uid</refname>
|
||||
<refname>sd_session_get_seat</refname>
|
||||
<refname>sd_session_get_service</refname>
|
||||
<refname>sd_session_get_type</refname>
|
||||
<refname>sd_session_get_class</refname>
|
||||
<refname>sd_session_get_desktop</refname>
|
||||
<refname>sd_session_get_display</refname>
|
||||
<refname>sd_session_get_tty</refname>
|
||||
<refname>sd_session_get_vt</refname>
|
||||
<refname>sd_session_get_remote_host</refname>
|
||||
<refname>sd_session_get_remote_user</refname>
|
||||
<refpurpose>Determine state of a specific session</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_session_is_active</refname>
|
||||
<refname>sd_session_is_remote</refname>
|
||||
<refname>sd_session_get_state</refname>
|
||||
<refname>sd_session_get_uid</refname>
|
||||
<refname>sd_session_get_seat</refname>
|
||||
<refname>sd_session_get_service</refname>
|
||||
<refname>sd_session_get_type</refname>
|
||||
<refname>sd_session_get_class</refname>
|
||||
<refname>sd_session_get_desktop</refname>
|
||||
<refname>sd_session_get_display</refname>
|
||||
<refname>sd_session_get_tty</refname>
|
||||
<refname>sd_session_get_vt</refname>
|
||||
<refname>sd_session_get_remote_host</refname>
|
||||
<refname>sd_session_get_remote_user</refname>
|
||||
<refpurpose>Determine state of a specific session</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_is_active</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_is_active</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_is_remote</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_is_remote</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_state</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>state</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_state</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>state</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_uid</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>uid_t *<parameter>uid</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_uid</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>uid_t *<parameter>uid</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_seat</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>seat</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_seat</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>seat</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_service</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>service</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_service</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>service</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_type</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>type</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_type</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>type</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_class</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>class</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_class</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>class</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_desktop</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>desktop</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_desktop</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>desktop</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_display</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>display</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_display</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>display</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_remote_host</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>remote_host</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_remote_host</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>remote_host</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_remote_user</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>remote_user</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_remote_user</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>remote_user</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_tty</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>tty</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_tty</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>char **<parameter>tty</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_vt</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>unsigned int *<parameter>vt</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_session_get_vt</function></funcdef>
|
||||
<paramdef>const char *<parameter>session</parameter></paramdef>
|
||||
<paramdef>unsigned int *<parameter>vt</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_session_is_active()</function> may
|
||||
be used to determine whether the session identified by
|
||||
the specified session identifier is currently active
|
||||
(i.e. currently in the foreground and available for
|
||||
user input) or not.</para>
|
||||
<para><function>sd_session_is_active()</function> may be used to
|
||||
determine whether the session identified by the specified session
|
||||
identifier is currently active (i.e. currently in the foreground
|
||||
and available for user input) or not.</para>
|
||||
|
||||
<para><function>sd_session_is_remote()</function> may
|
||||
be used to determine whether the session identified by
|
||||
the specified session identifier is a remote session
|
||||
(i.e. its remote host is known) or not.</para>
|
||||
<para><function>sd_session_is_remote()</function> may be used to
|
||||
determine whether the session identified by the specified session
|
||||
identifier is a remote session (i.e. its remote host is known) or
|
||||
not.</para>
|
||||
|
||||
<para><function>sd_session_get_state()</function> may
|
||||
be used to determine the state of the session
|
||||
identified by the specified session identifier. The
|
||||
following states are currently known:
|
||||
<literal>online</literal> (session logged in, but
|
||||
session not active, i.e. not in the foreground),
|
||||
<literal>active</literal> (session logged in and
|
||||
active, i.e. in the foreground),
|
||||
<literal>closing</literal> (session nominally logged
|
||||
out, but some processes belonging to it are still
|
||||
around). In the future additional states might be
|
||||
defined, client code should be written to be robust in
|
||||
regards to additional state strings being
|
||||
returned. This function is a more generic version of
|
||||
<function>sd_session_is_active()</function>. The returned
|
||||
string needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_session_get_state()</function> may be used to
|
||||
determine the state of the session identified by the specified
|
||||
session identifier. The following states are currently known:
|
||||
<literal>online</literal> (session logged in, but session not
|
||||
active, i.e. not in the foreground), <literal>active</literal>
|
||||
(session logged in and active, i.e. in the foreground),
|
||||
<literal>closing</literal> (session nominally logged out, but some
|
||||
processes belonging to it are still around). In the future
|
||||
additional states might be defined, client code should be written
|
||||
to be robust in regards to additional state strings being
|
||||
returned. This function is a more generic version of
|
||||
<function>sd_session_is_active()</function>. The returned string
|
||||
needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_session_get_uid()</function> may be
|
||||
used to determine the user identifier of the Unix user the session
|
||||
identified by the specified session identifier belongs
|
||||
to.</para>
|
||||
<para><function>sd_session_get_uid()</function> may be used to
|
||||
determine the user identifier of the Unix user the session
|
||||
identified by the specified session identifier belongs to.</para>
|
||||
|
||||
<para><function>sd_session_get_seat()</function> may
|
||||
be used to determine the seat identifier of the seat
|
||||
the session identified by the specified session
|
||||
identifier belongs to. Note that not all sessions are
|
||||
attached to a seat, this call will fail for them. The
|
||||
returned string needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_session_get_seat()</function> may be used to
|
||||
determine the seat identifier of the seat the session identified
|
||||
by the specified session identifier belongs to. Note that not all
|
||||
sessions are attached to a seat, this call will fail for them. The
|
||||
returned string needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_session_get_service()</function>
|
||||
may be used to determine the name of the service (as
|
||||
passed during PAM session setup) that registered the
|
||||
session identified by the specified session
|
||||
identifier. The returned string needs to be freed with
|
||||
the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_session_get_service()</function> may be used to
|
||||
determine the name of the service (as passed during PAM session
|
||||
setup) that registered the session identified by the specified
|
||||
session identifier. The returned string needs to be freed with the
|
||||
libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_session_get_type()</function> may
|
||||
be used to determine the type of the session
|
||||
identified by the specified session identifier. The
|
||||
returned string is one of <literal>x11</literal>,
|
||||
<literal>wayland</literal>, <literal>tty</literal>,
|
||||
<literal>mir</literal> or <literal>unspecified</literal> and
|
||||
needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_session_get_type()</function> may be used to
|
||||
determine the type of the session identified by the specified
|
||||
session identifier. The returned string is one of
|
||||
<literal>x11</literal>, <literal>wayland</literal>,
|
||||
<literal>tty</literal>, <literal>mir</literal> or
|
||||
<literal>unspecified</literal> and needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_session_get_class()</function> may
|
||||
be used to determine the class of the session
|
||||
identified by the specified session identifier. The
|
||||
returned string is one of <literal>user</literal>,
|
||||
<literal>greeter</literal>,
|
||||
<literal>lock-screen</literal>, or
|
||||
<literal>background</literal> and needs to be freed
|
||||
with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_session_get_class()</function> may be used to
|
||||
determine the class of the session identified by the specified
|
||||
session identifier. The returned string is one of
|
||||
<literal>user</literal>, <literal>greeter</literal>,
|
||||
<literal>lock-screen</literal>, or <literal>background</literal>
|
||||
and needs to be freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_session_get_desktop()</function> may
|
||||
be used to determine the brand of the desktop running on
|
||||
the session identified by the specified session identifier.
|
||||
This field can be set freely by desktop environments and
|
||||
does not follow any special formatting. However, desktops
|
||||
are strongly recommended to use the same identifiers and
|
||||
capitalization as for
|
||||
<varname>$XDG_CURRENT_DESKTOP</varname>, as defined by
|
||||
the <ulink
|
||||
url="http://standards.freedesktop.org/desktop-entry-spec/latest/">Desktop
|
||||
Entry
|
||||
Specification</ulink>. The returned string needs to be
|
||||
freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_session_get_desktop()</function> may be used to
|
||||
determine the brand of the desktop running on the session
|
||||
identified by the specified session identifier. This field can be
|
||||
set freely by desktop environments and does not follow any special
|
||||
formatting. However, desktops are strongly recommended to use the
|
||||
same identifiers and capitalization as for
|
||||
<varname>$XDG_CURRENT_DESKTOP</varname>, as defined by the <ulink
|
||||
url="http://standards.freedesktop.org/desktop-entry-spec/latest/">Desktop
|
||||
Entry Specification</ulink>. The returned string needs to be freed
|
||||
with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_session_get_display()</function>
|
||||
may be used to determine the X11 display of the
|
||||
session identified by the specified session
|
||||
identifier. The returned string needs to be
|
||||
freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_session_get_display()</function> may be used to
|
||||
determine the X11 display of the session identified by the
|
||||
specified session identifier. The returned string needs to be
|
||||
freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_session_get_remote_host()</function>
|
||||
may be used to determine the remote hostname of the
|
||||
session identified by the specified session
|
||||
identifier. The returned string needs to be
|
||||
freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_session_get_remote_host()</function> may be
|
||||
used to determine the remote hostname of the session identified by
|
||||
the specified session identifier. The returned string needs to be
|
||||
freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_session_get_remote_user()</function>
|
||||
may be used to determine the remote username of the
|
||||
session identified by the specified session
|
||||
identifier. The returned string needs to be
|
||||
freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use. Note that this value is rarely known
|
||||
to the system, and even then should not be relied on.</para>
|
||||
<para><function>sd_session_get_remote_user()</function> may be
|
||||
used to determine the remote username of the session identified by
|
||||
the specified session identifier. The returned string needs to be
|
||||
freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use. Note that this value is rarely known to the
|
||||
system, and even then should not be relied on.</para>
|
||||
|
||||
<para><function>sd_session_get_tty()</function>
|
||||
may be used to determine the TTY device of the
|
||||
session identified by the specified session
|
||||
identifier. The returned string needs to be
|
||||
freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_session_get_tty()</function> may be used to
|
||||
determine the TTY device of the session identified by the
|
||||
specified session identifier. The returned string needs to be
|
||||
freed with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_session_get_vt()</function>
|
||||
may be used to determine the VT number of the
|
||||
session identified by the specified session
|
||||
identifier. This function will return an error if
|
||||
the seat does not support VTs.</para>
|
||||
<para><function>sd_session_get_vt()</function> may be used to
|
||||
determine the VT number of the session identified by the specified
|
||||
session identifier. This function will return an error if the seat
|
||||
does not support VTs.</para>
|
||||
|
||||
<para>If the <varname>session</varname> parameter of
|
||||
any of these functions is passed as
|
||||
<constant>NULL</constant>, the operation is executed
|
||||
for the session the calling process is a member of, if
|
||||
there is any.</para>
|
||||
</refsect1>
|
||||
<para>If the <varname>session</varname> parameter of any of these
|
||||
functions is passed as <constant>NULL</constant>, the operation is
|
||||
executed for the session the calling process is a member of, if
|
||||
there is any.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>If the test succeeds,
|
||||
<function>sd_session_is_active()</function> and
|
||||
<function>sd_session_is_remote()</function> return a
|
||||
positive integer; if it fails, 0. On success,
|
||||
<function>sd_session_get_state()</function>,
|
||||
<function>sd_session_get_uid()</function>,
|
||||
<function>sd_session_get_seat()</function>,
|
||||
<function>sd_session_get_service()</function>,
|
||||
<function>sd_session_get_type()</function>,
|
||||
<function>sd_session_get_class()</function>,
|
||||
<function>sd_session_get_display()</function>,
|
||||
<function>sd_session_get_remote_user()</function>,
|
||||
<function>sd_session_get_remote_host()</function> and
|
||||
<function>sd_session_get_tty()</function> return 0 or
|
||||
a positive integer. On failure, these calls return a
|
||||
negative errno-style error code.</para>
|
||||
</refsect1>
|
||||
<para>If the test succeeds,
|
||||
<function>sd_session_is_active()</function> and
|
||||
<function>sd_session_is_remote()</function> return a
|
||||
positive integer; if it fails, 0. On success,
|
||||
<function>sd_session_get_state()</function>,
|
||||
<function>sd_session_get_uid()</function>,
|
||||
<function>sd_session_get_seat()</function>,
|
||||
<function>sd_session_get_service()</function>,
|
||||
<function>sd_session_get_type()</function>,
|
||||
<function>sd_session_get_class()</function>,
|
||||
<function>sd_session_get_display()</function>,
|
||||
<function>sd_session_get_remote_user()</function>,
|
||||
<function>sd_session_get_remote_host()</function> and
|
||||
<function>sd_session_get_tty()</function> return 0 or
|
||||
a positive integer. On failure, these calls return a
|
||||
negative errno-style error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>The <function>sd_session_is_active()</function>,
|
||||
<function>sd_session_get_state()</function>,
|
||||
<function>sd_session_get_uid()</function>,
|
||||
<function>sd_session_get_seat()</function>,
|
||||
<function>sd_session_get_service()</function>,
|
||||
<function>sd_session_get_type()</function>,
|
||||
<function>sd_session_get_class()</function>,
|
||||
<function>sd_session_get_display()</function>,
|
||||
<function>sd_session_get_remote_host()</function>,
|
||||
<function>sd_session_get_remote_user()</function> and
|
||||
<function>sd_session_get_tty()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
<para>The <function>sd_session_is_active()</function>,
|
||||
<function>sd_session_get_state()</function>,
|
||||
<function>sd_session_get_uid()</function>,
|
||||
<function>sd_session_get_seat()</function>,
|
||||
<function>sd_session_get_service()</function>,
|
||||
<function>sd_session_get_type()</function>,
|
||||
<function>sd_session_get_class()</function>,
|
||||
<function>sd_session_get_display()</function>,
|
||||
<function>sd_session_get_remote_host()</function>,
|
||||
<function>sd_session_get_remote_user()</function> and
|
||||
<function>sd_session_get_tty()</function>
|
||||
interfaces are available as a shared library, which can
|
||||
be compiled and linked to with the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
file.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_pid_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_pid_get_session</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,193 +23,182 @@
|
||||
|
||||
<refentry id="sd_uid_get_state" conditional='HAVE_PAM'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_uid_get_state</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_uid_get_state</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_uid_get_state</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_uid_get_state</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_uid_get_state</refname>
|
||||
<refname>sd_uid_is_on_seat</refname>
|
||||
<refname>sd_uid_get_sessions</refname>
|
||||
<refname>sd_uid_get_seats</refname>
|
||||
<refname>sd_uid_get_display</refname>
|
||||
<refpurpose>Determine login state of a specific Unix user ID</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_uid_get_state</refname>
|
||||
<refname>sd_uid_is_on_seat</refname>
|
||||
<refname>sd_uid_get_sessions</refname>
|
||||
<refname>sd_uid_get_seats</refname>
|
||||
<refname>sd_uid_get_display</refname>
|
||||
<refpurpose>Determine login state of a specific Unix user ID</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-login.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_uid_get_state</function></funcdef>
|
||||
<paramdef>uid_t <parameter>uid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>state</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_uid_get_state</function></funcdef>
|
||||
<paramdef>uid_t <parameter>uid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>state</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_uid_is_on_seat</function></funcdef>
|
||||
<paramdef>uid_t <parameter>uid</parameter></paramdef>
|
||||
<paramdef>int <parameter>require_active</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_uid_is_on_seat</function></funcdef>
|
||||
<paramdef>uid_t <parameter>uid</parameter></paramdef>
|
||||
<paramdef>int <parameter>require_active</parameter></paramdef>
|
||||
<paramdef>const char *<parameter>seat</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_uid_get_sessions</function></funcdef>
|
||||
<paramdef>uid_t <parameter>uid</parameter></paramdef>
|
||||
<paramdef>int <parameter>require_active</parameter></paramdef>
|
||||
<paramdef>char ***<parameter>sessions</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_uid_get_sessions</function></funcdef>
|
||||
<paramdef>uid_t <parameter>uid</parameter></paramdef>
|
||||
<paramdef>int <parameter>require_active</parameter></paramdef>
|
||||
<paramdef>char ***<parameter>sessions</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_uid_get_seats</function></funcdef>
|
||||
<paramdef>uid_t <parameter>uid</parameter></paramdef>
|
||||
<paramdef>int <parameter>require_active</parameter></paramdef>
|
||||
<paramdef>char ***<parameter>seats</parameter></paramdef>
|
||||
</funcprototype>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_uid_get_seats</function></funcdef>
|
||||
<paramdef>uid_t <parameter>uid</parameter></paramdef>
|
||||
<paramdef>int <parameter>require_active</parameter></paramdef>
|
||||
<paramdef>char ***<parameter>seats</parameter></paramdef>
|
||||
</funcprototype>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_uid_get_display</function></funcdef>
|
||||
<paramdef>uid_t <parameter>uid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>session</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_uid_get_display</function></funcdef>
|
||||
<paramdef>uid_t <parameter>uid</parameter></paramdef>
|
||||
<paramdef>char **<parameter>session</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><function>sd_uid_get_state()</function> may be
|
||||
used to determine the login state of a specific Unix
|
||||
user identifier. The following states are currently
|
||||
known: <literal>offline</literal> (user not logged in
|
||||
at all), <literal>lingering</literal> (user not logged
|
||||
in, but some user services running),
|
||||
<literal>online</literal> (user logged in, but not
|
||||
active, i.e. has no session in the foreground),
|
||||
<literal>active</literal> (user logged in, and has at
|
||||
least one active session, i.e. one session in the
|
||||
foreground), <literal>closing</literal> (user not
|
||||
logged in, and not lingering, but some processes are
|
||||
still around). In the future additional states might
|
||||
be defined, client code should be written to be robust
|
||||
in regards to additional state strings being
|
||||
returned. The returned string needs to be freed with
|
||||
the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
<para><function>sd_uid_get_state()</function> may be used to
|
||||
determine the login state of a specific Unix user identifier. The
|
||||
following states are currently known: <literal>offline</literal>
|
||||
(user not logged in at all), <literal>lingering</literal> (user
|
||||
not logged in, but some user services running),
|
||||
<literal>online</literal> (user logged in, but not active, i.e.
|
||||
has no session in the foreground), <literal>active</literal> (user
|
||||
logged in, and has at least one active session, i.e. one session
|
||||
in the foreground), <literal>closing</literal> (user not logged
|
||||
in, and not lingering, but some processes are still around). In
|
||||
the future additional states might be defined, client code should
|
||||
be written to be robust in regards to additional state strings
|
||||
being returned. The returned string needs to be freed with the
|
||||
libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use.</para>
|
||||
|
||||
<para><function>sd_uid_is_on_seat()</function> may be
|
||||
used to determine whether a specific user is logged in
|
||||
or active on a specific seat. Accepts a Unix user
|
||||
identifier and a seat identifier string as
|
||||
parameters. The <parameter>require_active</parameter>
|
||||
parameter is a boolean value. If non-zero (true), this
|
||||
function will test if the user is active (i.e. has a
|
||||
session that is in the foreground and accepting user
|
||||
input) on the specified seat, otherwise (false) only
|
||||
if the user is logged in (and possibly inactive) on
|
||||
the specified seat.</para>
|
||||
<para><function>sd_uid_is_on_seat()</function> may be used to
|
||||
determine whether a specific user is logged in or active on a
|
||||
specific seat. Accepts a Unix user identifier and a seat
|
||||
identifier string as parameters. The
|
||||
<parameter>require_active</parameter> parameter is a boolean
|
||||
value. If non-zero (true), this function will test if the user is
|
||||
active (i.e. has a session that is in the foreground and accepting
|
||||
user input) on the specified seat, otherwise (false) only if the
|
||||
user is logged in (and possibly inactive) on the specified
|
||||
seat.</para>
|
||||
|
||||
<para><function>sd_uid_get_sessions()</function> may
|
||||
be used to determine the current sessions of the
|
||||
specified user. Accepts a Unix user identifier as
|
||||
parameter. The <parameter>require_active</parameter>
|
||||
parameter controls whether the returned list shall
|
||||
consist of only those sessions where the user is
|
||||
currently active (> 0), where the user is currently
|
||||
online but possibly inactive (= 0), or
|
||||
logged in at all but possibly closing the session (< 0). The call returns a
|
||||
<constant>NULL</constant> terminated string array of session identifiers in
|
||||
<parameter>sessions</parameter> which needs to be
|
||||
freed by the caller with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use, including all the strings
|
||||
referenced. If the string array parameter is passed as
|
||||
<constant>NULL</constant>, the array will not be filled in, but the return
|
||||
code still indicates the number of current
|
||||
sessions. Note that instead of an empty array <constant>NULL</constant> may
|
||||
be returned and should be considered equivalent to an
|
||||
empty array.</para>
|
||||
<para><function>sd_uid_get_sessions()</function> may be used to
|
||||
determine the current sessions of the specified user. Accepts a
|
||||
Unix user identifier as parameter. The
|
||||
<parameter>require_active</parameter> parameter controls whether
|
||||
the returned list shall consist of only those sessions where the
|
||||
user is currently active (> 0), where the user is currently
|
||||
online but possibly inactive (= 0), or logged in at all but
|
||||
possibly closing the session (< 0). The call returns a
|
||||
<constant>NULL</constant> terminated string array of session
|
||||
identifiers in <parameter>sessions</parameter> which needs to be
|
||||
freed by the caller with the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>free</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call after use, including all the strings referenced. If the
|
||||
string array parameter is passed as <constant>NULL</constant>, the
|
||||
array will not be filled in, but the return code still indicates
|
||||
the number of current sessions. Note that instead of an empty
|
||||
array <constant>NULL</constant> may be returned and should be
|
||||
considered equivalent to an empty array.</para>
|
||||
|
||||
<para>Similarly, <function>sd_uid_get_seats()</function>
|
||||
may be used to determine the list of seats on which
|
||||
the user currently has sessions. Similar semantics
|
||||
apply, however note that the user may have
|
||||
multiple sessions on the same seat as well as sessions
|
||||
with no attached seat and hence the number of entries
|
||||
in the returned array may differ from the one returned
|
||||
by <function>sd_uid_get_sessions()</function>.</para>
|
||||
<para>Similarly, <function>sd_uid_get_seats()</function> may be
|
||||
used to determine the list of seats on which the user currently
|
||||
has sessions. Similar semantics apply, however note that the user
|
||||
may have multiple sessions on the same seat as well as sessions
|
||||
with no attached seat and hence the number of entries in the
|
||||
returned array may differ from the one returned by
|
||||
<function>sd_uid_get_sessions()</function>.</para>
|
||||
|
||||
<para><function>sd_uid_get_display()</function>
|
||||
returns the name of the "primary" session of a user.
|
||||
If the user has graphical sessions, it will be the
|
||||
oldest graphical session. Otherwise, it will be the
|
||||
oldest open session.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_uid_get_display()</function> returns the name
|
||||
of the "primary" session of a user. If the user has graphical
|
||||
sessions, it will be the oldest graphical session. Otherwise, it
|
||||
will be the oldest open session.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On success,
|
||||
<function>sd_uid_get_state()</function> returns 0 or a
|
||||
positive integer. If the test succeeds,
|
||||
<function>sd_uid_is_on_seat()</function> returns a
|
||||
positive integer; if it fails,
|
||||
0. <function>sd_uid_get_sessions()</function> and
|
||||
<function>sd_uid_get_seats()</function> return the
|
||||
number of entries in the returned arrays.
|
||||
<function>sd_uid_get_display()</function> returns
|
||||
a non-negative code on success. On failure,
|
||||
these calls return a negative errno-style error
|
||||
code.</para>
|
||||
</refsect1>
|
||||
<para>On success, <function>sd_uid_get_state()</function> returns
|
||||
0 or a positive integer. If the test succeeds,
|
||||
<function>sd_uid_is_on_seat()</function> returns a positive
|
||||
integer; if it fails, 0.
|
||||
<function>sd_uid_get_sessions()</function> and
|
||||
<function>sd_uid_get_seats()</function> return the number of
|
||||
entries in the returned arrays.
|
||||
<function>sd_uid_get_display()</function> returns a non-negative
|
||||
code on success. On failure, these calls return a negative
|
||||
errno-style error code.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>Functions described here are available as a
|
||||
shared library, and can be compiled and linked to
|
||||
using the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
entry.</para>
|
||||
</refsect1>
|
||||
<para>Functions described here are available as a shared library,
|
||||
and can be compiled and linked to using the
|
||||
<constant>libsystemd</constant> <citerefentry project='die-net'><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
entry.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
|
||||
<function>sd_uid_get_state()</function>,
|
||||
<function>sd_uid_is_on_seat()</function>,
|
||||
<function>sd_uid_get_sessions()</function>,
|
||||
and <function>sd_uid_get_seats()</function> functions
|
||||
were added in systemd-31.
|
||||
<para><function>sd_uid_get_state()</function>,
|
||||
<function>sd_uid_is_on_seat()</function>,
|
||||
<function>sd_uid_get_sessions()</function>, and
|
||||
<function>sd_uid_get_seats()</function> functions were added in
|
||||
systemd-31.</para>
|
||||
|
||||
<para><function>sd_uid_get_display()</function> was
|
||||
added in systemd-213.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_uid_get_display()</function> was added in
|
||||
systemd-213.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_pid_get_owner_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-login</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_pid_get_owner_uid</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,168 +22,154 @@
|
||||
-->
|
||||
|
||||
<refentry id="sd_watchdog_enabled"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sd_watchdog_enabled</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sd_watchdog_enabled</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sd_watchdog_enabled</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sd_watchdog_enabled</refentrytitle>
|
||||
<manvolnum>3</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sd_watchdog_enabled</refname>
|
||||
<refpurpose>Check whether the service manager expects watchdog keep-alive notifications from a service</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sd_watchdog_enabled</refname>
|
||||
<refpurpose>Check whether the service manager expects watchdog keep-alive notifications from a service</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
<refsynopsisdiv>
|
||||
<funcsynopsis>
|
||||
<funcsynopsisinfo>#include <systemd/sd-daemon.h></funcsynopsisinfo>
|
||||
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_watchdog_enabled</function></funcdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<funcprototype>
|
||||
<funcdef>int <function>sd_watchdog_enabled</function></funcdef>
|
||||
<paramdef>int <parameter>unset_environment</parameter></paramdef>
|
||||
<paramdef>uint64_t *<parameter>usec</parameter></paramdef>
|
||||
</funcprototype>
|
||||
</funcsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<para><function>sd_watchdog_enabled()</function> may
|
||||
be called by a service to detect whether the service
|
||||
manager expects regular keep-alive watchdog
|
||||
notification events from it, and the timeout after
|
||||
which the manager will act on the service if it did
|
||||
not get such a notification.</para>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<para><function>sd_watchdog_enabled()</function> may be called by
|
||||
a service to detect whether the service manager expects regular
|
||||
keep-alive watchdog notification events from it, and the timeout
|
||||
after which the manager will act on the service if it did not get
|
||||
such a notification.</para>
|
||||
|
||||
<para>If the <varname>$WATCHDOG_USEC</varname>
|
||||
environment variable is set, and the
|
||||
<varname>$WATCHDOG_PID</varname> variable is unset or
|
||||
set to the PID of the current process, the service
|
||||
manager expects notifications from this process. The
|
||||
manager will usually terminate a service when it does
|
||||
not get a notification message within the specified
|
||||
time after startup and after each previous message. It
|
||||
is recommended that a daemon sends a keep-alive
|
||||
notification message to the service manager every half
|
||||
of the time returned here. Notification messages may
|
||||
be sent with
|
||||
<citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
with a message string of
|
||||
<literal>WATCHDOG=1</literal>.</para>
|
||||
<para>If the <varname>$WATCHDOG_USEC</varname> environment
|
||||
variable is set, and the <varname>$WATCHDOG_PID</varname> variable
|
||||
is unset or set to the PID of the current process, the service
|
||||
manager expects notifications from this process. The manager will
|
||||
usually terminate a service when it does not get a notification
|
||||
message within the specified time after startup and after each
|
||||
previous message. It is recommended that a daemon sends a
|
||||
keep-alive notification message to the service manager every half
|
||||
of the time returned here. Notification messages may be sent with
|
||||
<citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
with a message string of <literal>WATCHDOG=1</literal>.</para>
|
||||
|
||||
<para>If the <parameter>unset_environment</parameter>
|
||||
parameter is non-zero,
|
||||
<function>sd_watchdog_enabled()</function> will unset
|
||||
the <varname>$WATCHDOG_USEC</varname> and
|
||||
<varname>$WATCHDOG_PID</varname> environment variables
|
||||
before returning (regardless of whether the function
|
||||
call itself succeeded or not). Those variables are no
|
||||
longer inherited by child processes. Further calls to
|
||||
<function>sd_watchdog_enabled()</function> will also
|
||||
return with zero.</para>
|
||||
<para>If the <parameter>unset_environment</parameter> parameter is
|
||||
non-zero, <function>sd_watchdog_enabled()</function> will unset
|
||||
the <varname>$WATCHDOG_USEC</varname> and
|
||||
<varname>$WATCHDOG_PID</varname> environment variables before
|
||||
returning (regardless of whether the function call itself
|
||||
succeeded or not). Those variables are no longer inherited by
|
||||
child processes. Further calls to
|
||||
<function>sd_watchdog_enabled()</function> will also return with
|
||||
zero.</para>
|
||||
|
||||
<para>If the <parameter>usec</parameter> parameter is
|
||||
non-NULL, <function>sd_watchdog_enabled()</function>
|
||||
will write the timeout in µs for the watchdog
|
||||
logic to it.</para>
|
||||
<para>If the <parameter>usec</parameter> parameter is non-NULL,
|
||||
<function>sd_watchdog_enabled()</function> will write the timeout
|
||||
in µs for the watchdog logic to it.</para>
|
||||
|
||||
<para>To enable service supervision with the watchdog
|
||||
logic, use <varname>WatchdogSec=</varname> in service
|
||||
files. See
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details.</para>
|
||||
</refsect1>
|
||||
<para>To enable service supervision with the watchdog logic, use
|
||||
<varname>WatchdogSec=</varname> in service files. See
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
<refsect1>
|
||||
<title>Return Value</title>
|
||||
|
||||
<para>On failure, this call returns a negative
|
||||
errno-style error code. If the service manager expects
|
||||
watchdog keep-alive notification messages to be sent,
|
||||
> 0 is returned, otherwise 0 is returned. Only if
|
||||
the return value is > 0, the
|
||||
<parameter>usec</parameter> parameter is valid after
|
||||
the call.</para>
|
||||
</refsect1>
|
||||
<para>On failure, this call returns a negative errno-style error
|
||||
code. If the service manager expects watchdog keep-alive
|
||||
notification messages to be sent, > 0 is returned, otherwise 0
|
||||
is returned. Only if the return value is > 0, the
|
||||
<parameter>usec</parameter> parameter is valid after the
|
||||
call.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
<xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
|
||||
<xi:include href="libsystemd-pkgconfig.xml" xpointer="pkgconfig-text"/>
|
||||
|
||||
<para>Internally, this functions parses the
|
||||
<varname>$WATCHDOG_PID</varname> and
|
||||
<varname>$WATCHDOG_USEC</varname> environment
|
||||
variable. The call will ignore these variables if
|
||||
<varname>$WATCHDOG_PID</varname> does not contain the PID
|
||||
of the current process, under the assumption that in
|
||||
that case, the variables were set for a different
|
||||
process further up the process tree.</para>
|
||||
</refsect1>
|
||||
<para>Internally, this functions parses the
|
||||
<varname>$WATCHDOG_PID</varname> and
|
||||
<varname>$WATCHDOG_USEC</varname> environment variable. The call
|
||||
will ignore these variables if <varname>$WATCHDOG_PID</varname>
|
||||
does not contain the PID of the current process, under the
|
||||
assumption that in that case, the variables were set for a
|
||||
different process further up the process tree.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Environment</title>
|
||||
<refsect1>
|
||||
<title>Environment</title>
|
||||
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$WATCHDOG_PID</varname></term>
|
||||
<variablelist class='environment-variables'>
|
||||
<varlistentry>
|
||||
<term><varname>$WATCHDOG_PID</varname></term>
|
||||
|
||||
<listitem><para>Set by the system
|
||||
manager for supervised process for
|
||||
which watchdog support is enabled, and
|
||||
contains the PID of that process. See
|
||||
above for details.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Set by the system manager for supervised
|
||||
process for which watchdog support is enabled, and contains
|
||||
the PID of that process. See above for
|
||||
details.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>$WATCHDOG_USEC</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>$WATCHDOG_USEC</varname></term>
|
||||
|
||||
<listitem><para>Set by the system
|
||||
manager for supervised process for
|
||||
which watchdog support is enabled, and
|
||||
contains the watchdog timeout in µs
|
||||
See above for
|
||||
details.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>Set by the system manager for supervised
|
||||
process for which watchdog support is enabled, and contains
|
||||
the watchdog timeout in µs See above for
|
||||
details.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
|
||||
<para>The watchdog functionality and the
|
||||
<varname>$WATCHDOG_USEC</varname> variable were
|
||||
added in systemd-41.</para>
|
||||
<para>The watchdog functionality and the
|
||||
<varname>$WATCHDOG_USEC</varname> variable were added in
|
||||
systemd-41.</para>
|
||||
|
||||
<para><function>sd_watchdog_enabled()</function>
|
||||
function was added in systemd-209. Since that version
|
||||
the <varname>$WATCHDOG_PID</varname> variable is also
|
||||
set.</para>
|
||||
</refsect1>
|
||||
<para><function>sd_watchdog_enabled()</function> function was
|
||||
added in systemd-209. Since that version the
|
||||
<varname>$WATCHDOG_PID</varname> variable is also set.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
240
man/shutdown.xml
240
man/shutdown.xml
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,160 +22,154 @@
|
||||
-->
|
||||
|
||||
<refentry id="shutdown"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>shutdown</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>shutdown</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>shutdown</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>shutdown</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>shutdown</refname>
|
||||
<refpurpose>Halt, power-off or reboot the machine</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>shutdown</refname>
|
||||
<refpurpose>Halt, power-off or reboot the machine</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>shutdown <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="opt">TIME</arg> <arg choice="opt" rep="repeat">WALL</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>shutdown</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="opt">TIME</arg>
|
||||
<arg choice="opt" rep="repeat">WALL</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>shutdown</command> may be used to halt,
|
||||
power-off or reboot the machine.</para>
|
||||
<para><command>shutdown</command> may be used to halt, power-off
|
||||
or reboot the machine.</para>
|
||||
|
||||
<para>The first argument may be a time string (which
|
||||
is usually <literal>now</literal>). Optionally, this
|
||||
may be followed by a wall message to be sent to all
|
||||
logged-in users before going down.</para>
|
||||
<para>The first argument may be a time string (which is usually
|
||||
<literal>now</literal>). Optionally, this may be followed by a
|
||||
wall message to be sent to all logged-in users before going
|
||||
down.</para>
|
||||
|
||||
<para>The time string may either be in the format
|
||||
<literal>hh:mm</literal> for hour/minutes specifying
|
||||
the time to execute the shutdown at, specified in 24h
|
||||
clock format. Alternatively it may be in the syntax
|
||||
<literal>+m</literal> referring to the specified
|
||||
number of minutes m from now. <literal>now</literal>
|
||||
is an alias for <literal>+0</literal>, i.e. for
|
||||
triggering an immediate shutdown. If no time argument
|
||||
is specified, <literal>+1</literal> is
|
||||
implied.</para>
|
||||
<para>The time string may either be in the format
|
||||
<literal>hh:mm</literal> for hour/minutes specifying the time to
|
||||
execute the shutdown at, specified in 24h clock format.
|
||||
Alternatively it may be in the syntax <literal>+m</literal>
|
||||
referring to the specified number of minutes m from now.
|
||||
<literal>now</literal> is an alias for <literal>+0</literal>, i.e.
|
||||
for triggering an immediate shutdown. If no time argument is
|
||||
specified, <literal>+1</literal> is implied.</para>
|
||||
|
||||
<para>Note that to specify a wall message you must
|
||||
specify a time argument, too.</para>
|
||||
<para>Note that to specify a wall message you must specify a time
|
||||
argument, too.</para>
|
||||
|
||||
<para>If the time argument is used, 5 minutes
|
||||
before the system goes down the
|
||||
<filename>/run/nologin</filename> file is created to
|
||||
ensure that further logins shall not be
|
||||
allowed.</para>
|
||||
</refsect1>
|
||||
<para>If the time argument is used, 5 minutes before the system
|
||||
goes down the <filename>/run/nologin</filename> file is created to
|
||||
ensure that further logins shall not be allowed.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--help</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--help</option></term>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help-text" />
|
||||
</varlistentry>
|
||||
<xi:include href="standard-options.xml" xpointer="help-text" />
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-H</option></term>
|
||||
<term><option>--halt</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-H</option></term>
|
||||
<term><option>--halt</option></term>
|
||||
|
||||
<listitem><para>Halt the machine.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Halt the machine.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-P</option></term>
|
||||
<term><option>--poweroff</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-P</option></term>
|
||||
<term><option>--poweroff</option></term>
|
||||
|
||||
<listitem><para>Power-off the
|
||||
machine (the default).</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Power-off the machine (the
|
||||
default).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-r</option></term>
|
||||
<term><option>--reboot</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-r</option></term>
|
||||
<term><option>--reboot</option></term>
|
||||
|
||||
<listitem><para>Reboot the
|
||||
machine.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Reboot the
|
||||
machine.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-h</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-h</option></term>
|
||||
|
||||
<listitem><para>Equivalent to
|
||||
<option>--poweroff</option>, unless
|
||||
<option>--halt</option> is
|
||||
specified.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Equivalent to <option>--poweroff</option>,
|
||||
unless <option>--halt</option> is specified.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-k</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-k</option></term>
|
||||
|
||||
<listitem><para>Do not halt, power-off,
|
||||
reboot, just write wall
|
||||
message.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Do not halt, power-off, reboot, just write
|
||||
wall message.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--no-wall</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--no-wall</option></term>
|
||||
|
||||
<listitem><para>Do not send wall
|
||||
message before
|
||||
halt, power-off, reboot.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Do not send wall
|
||||
message before
|
||||
halt, power-off, reboot.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-c</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-c</option></term>
|
||||
|
||||
<listitem><para>Cancel a pending
|
||||
shutdown. This may be used cancel the
|
||||
effect of an invocation of
|
||||
<command>shutdown</command> with a
|
||||
time argument that is not
|
||||
<literal>+0</literal> or
|
||||
<literal>now</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Cancel a pending shutdown. This may be used
|
||||
cancel the effect of an invocation of
|
||||
<command>shutdown</command> with a time argument that is not
|
||||
<literal>+0</literal> or
|
||||
<literal>now</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>halt</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>halt</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
239
man/sysctl.d.xml
239
man/sysctl.d.xml
@@ -19,158 +19,153 @@
|
||||
along with systemd; If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<refentry id="sysctl.d"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>sysctl.d</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>sysctl.d</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>sysctl.d</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>sysctl.d</refentrytitle>
|
||||
<manvolnum>5</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>sysctl.d</refname>
|
||||
<refpurpose>Configure kernel parameters at boot</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>sysctl.d</refname>
|
||||
<refpurpose>Configure kernel parameters at boot</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/sysctl.d/*.conf</filename></para>
|
||||
<para><filename>/run/sysctl.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/sysctl.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/etc/sysctl.d/*.conf</filename></para>
|
||||
<para><filename>/run/sysctl.d/*.conf</filename></para>
|
||||
<para><filename>/usr/lib/sysctl.d/*.conf</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>At boot,
|
||||
<citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
reads configuration files from the above directories
|
||||
to configure
|
||||
<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
kernel parameters.</para>
|
||||
</refsect1>
|
||||
<para>At boot,
|
||||
<citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
reads configuration files from the above directories to configure
|
||||
<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
kernel parameters.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Configuration Format</title>
|
||||
<refsect1>
|
||||
<title>Configuration Format</title>
|
||||
|
||||
<para>The configuration files contain a list of
|
||||
variable assignments, separated by newlines. Empty
|
||||
lines and lines whose first non-whitespace character
|
||||
is <literal>#</literal> or <literal>;</literal> are
|
||||
ignored.</para>
|
||||
<para>The configuration files contain a list of variable
|
||||
assignments, separated by newlines. Empty lines and lines whose
|
||||
first non-whitespace character is <literal>#</literal> or
|
||||
<literal>;</literal> are ignored.</para>
|
||||
|
||||
<para>Note that either <literal>/</literal> or
|
||||
<literal>.</literal> may be used as separators within
|
||||
sysctl variable names. If the first separator is a
|
||||
slash, remaining slashes and dots are left intact. If
|
||||
the first separator is a dot, dots and slashes are
|
||||
interchanged. <literal>kernel.domainname=foo</literal>
|
||||
and <literal>kernel/domainname=foo</literal> are
|
||||
equivalent and will cause <literal>foo</literal> to
|
||||
be written to
|
||||
<filename>/proc/sys/kernel/domainname</filename>.
|
||||
Either
|
||||
<literal>net.ipv4.conf.enp3s0/200.forwarding</literal>
|
||||
or
|
||||
<literal>net/ipv4/conf/enp3s0.200/forwarding</literal>
|
||||
may be used to refer to
|
||||
<filename>/proc/sys/net/ipv4/conf/enp3s0.200/forwarding</filename>.
|
||||
</para>
|
||||
<para>Note that either <literal>/</literal> or
|
||||
<literal>.</literal> may be used as separators within sysctl
|
||||
variable names. If the first separator is a slash, remaining
|
||||
slashes and dots are left intact. If the first separator is a dot,
|
||||
dots and slashes are interchanged.
|
||||
<literal>kernel.domainname=foo</literal> and
|
||||
<literal>kernel/domainname=foo</literal> are equivalent and will
|
||||
cause <literal>foo</literal> to be written to
|
||||
<filename>/proc/sys/kernel/domainname</filename>. Either
|
||||
<literal>net.ipv4.conf.enp3s0/200.forwarding</literal> or
|
||||
<literal>net/ipv4/conf/enp3s0.200/forwarding</literal> may be used
|
||||
to refer to
|
||||
<filename>/proc/sys/net/ipv4/conf/enp3s0.200/forwarding</filename>.
|
||||
</para>
|
||||
|
||||
<para>The settings configured with
|
||||
<filename>sysctl.d</filename> files will be applied
|
||||
early on boot. The network interface-specific options
|
||||
will also be applied individually for each network
|
||||
interface as it shows up in the system. (More
|
||||
specifically,
|
||||
<filename>net.ipv4.conf.*</filename>,
|
||||
<filename>net.ipv6.conf.*</filename>,
|
||||
<filename>net.ipv4.neigh.*</filename> and <filename>net.ipv6.neigh.*</filename>).</para>
|
||||
<para>The settings configured with <filename>sysctl.d</filename>
|
||||
files will be applied early on boot. The network
|
||||
interface-specific options will also be applied individually for
|
||||
each network interface as it shows up in the system. (More
|
||||
specifically, <filename>net.ipv4.conf.*</filename>,
|
||||
<filename>net.ipv6.conf.*</filename>,
|
||||
<filename>net.ipv4.neigh.*</filename> and
|
||||
<filename>net.ipv6.neigh.*</filename>).</para>
|
||||
|
||||
<para>Many sysctl parameters only become available
|
||||
when certain kernel modules are loaded. Modules are
|
||||
usually loaded on demand, e.g. when certain hardware
|
||||
is plugged in or network brought up. This means that
|
||||
<citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry> which runs
|
||||
during early boot will not configure such parameters
|
||||
if they become available after it has run. To
|
||||
set such parameters, it is recommended to add
|
||||
an <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry> rule to set those parameters when they become
|
||||
available. Alternatively, a slightly simpler and
|
||||
less efficient option is to add the module to
|
||||
<citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>, causing it to be loaded statically
|
||||
before sysctl settings are applied (see
|
||||
example below).</para>
|
||||
</refsect1>
|
||||
<para>Many sysctl parameters only become available when certain
|
||||
kernel modules are loaded. Modules are usually loaded on demand,
|
||||
e.g. when certain hardware is plugged in or network brought up.
|
||||
This means that
|
||||
<citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
which runs during early boot will not configure such parameters if
|
||||
they become available after it has run. To set such parameters, it
|
||||
is recommended to add an
|
||||
<citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
rule to set those parameters when they become available.
|
||||
Alternatively, a slightly simpler and less efficient option is to
|
||||
add the module to
|
||||
<citerefentry><refentrytitle>modules-load.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
causing it to be loaded statically before sysctl settings are
|
||||
applied (see example below).</para>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
<xi:include href="standard-conf.xml" xpointer="confd" />
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<example>
|
||||
<title>Set kernel YP domain name</title>
|
||||
<para><filename>/etc/sysctl.d/domain-name.conf</filename>:
|
||||
</para>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<example>
|
||||
<title>Set kernel YP domain name</title>
|
||||
<para><filename>/etc/sysctl.d/domain-name.conf</filename>:
|
||||
</para>
|
||||
|
||||
<programlisting>kernel.domainname=example.com</programlisting>
|
||||
</example>
|
||||
<programlisting>kernel.domainname=example.com</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Disable packet filter on bridged packets (method one)</title>
|
||||
<para><filename>/etc/udev/rules.d/99-bridge.rules</filename>:
|
||||
</para>
|
||||
<example>
|
||||
<title>Disable packet filter on bridged packets (method one)</title>
|
||||
<para><filename>/etc/udev/rules.d/99-bridge.rules</filename>:
|
||||
</para>
|
||||
|
||||
<programlisting>ACTION=="add", SUBSYSTEM=="module", KERNEL=="bridge", RUN+="/usr/lib/systemd/systemd-sysctl --prefix=/net/bridge"
|
||||
<programlisting>ACTION=="add", SUBSYSTEM=="module", KERNEL=="bridge", RUN+="/usr/lib/systemd/systemd-sysctl --prefix=/net/bridge"
|
||||
</programlisting>
|
||||
|
||||
<para><filename>/etc/sysctl.d/bridge.conf</filename>:
|
||||
</para>
|
||||
<para><filename>/etc/sysctl.d/bridge.conf</filename>:
|
||||
</para>
|
||||
|
||||
<programlisting>net.bridge.bridge-nf-call-ip6tables = 0
|
||||
<programlisting>net.bridge.bridge-nf-call-ip6tables = 0
|
||||
net.bridge.bridge-nf-call-iptables = 0
|
||||
net.bridge.bridge-nf-call-arptables = 0
|
||||
</programlisting>
|
||||
</example>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Disable packet filter on bridged packets (method two)</title>
|
||||
<para><filename>/etc/modules-load.d/bridge.conf</filename>:
|
||||
</para>
|
||||
<example>
|
||||
<title>Disable packet filter on bridged packets (method two)</title>
|
||||
<para><filename>/etc/modules-load.d/bridge.conf</filename>:
|
||||
</para>
|
||||
|
||||
<programlisting>bridge</programlisting>
|
||||
<programlisting>bridge</programlisting>
|
||||
|
||||
<para><filename>/etc/sysctl.d/bridge.conf</filename>:
|
||||
</para>
|
||||
<para><filename>/etc/sysctl.d/bridge.conf</filename>:
|
||||
</para>
|
||||
|
||||
<programlisting>net.bridge.bridge-nf-call-ip6tables = 0
|
||||
<programlisting>net.bridge.bridge-nf-call-ip6tables = 0
|
||||
net.bridge.bridge-nf-call-iptables = 0
|
||||
net.bridge.bridge-nf-call-arptables = 0
|
||||
</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
</example>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sysctl.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sysctl.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,328 +22,300 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-analyze"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-analyze</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-analyze</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Harald</firstname>
|
||||
<surname>Hoyer</surname>
|
||||
<email>harald@redhat.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Harald</firstname>
|
||||
<surname>Hoyer</surname>
|
||||
<email>harald@redhat.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-analyze</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-analyze</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-analyze</refname>
|
||||
<refpurpose>Analyze system boot-up performance</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-analyze</refname>
|
||||
<refpurpose>Analyze system boot-up performance</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg>time</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">blame</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">critical-chain</arg>
|
||||
<arg choice="opt" rep="repeat"><replaceable>UNIT</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">plot</arg>
|
||||
<arg choice="opt">> file.svg</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">dot</arg>
|
||||
<arg choice="opt" rep="repeat"><replaceable>PATTERN</replaceable></arg>
|
||||
<arg choice="opt">> file.dot</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">dump</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">set-log-level</arg>
|
||||
<arg choice="opt"><replaceable>LEVEL</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">verify</arg>
|
||||
<arg choice="opt" rep="repeat"><replaceable>FILES</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg>time</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">blame</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">critical-chain</arg>
|
||||
<arg choice="opt" rep="repeat"><replaceable>UNIT</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">plot</arg>
|
||||
<arg choice="opt">> file.svg</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">dot</arg>
|
||||
<arg choice="opt" rep="repeat"><replaceable>PATTERN</replaceable></arg>
|
||||
<arg choice="opt">> file.dot</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">dump</arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">set-log-level</arg>
|
||||
<arg choice="opt"><replaceable>LEVEL</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-analyze</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="plain">verify</arg>
|
||||
<arg choice="opt" rep="repeat"><replaceable>FILES</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-analyze</command> may be used
|
||||
to determine system boot-up performance statistics and
|
||||
retrieve other state and tracing information from the
|
||||
system and service manager, and to verify the
|
||||
correctness of unit files.</para>
|
||||
<para><command>systemd-analyze</command> may be used to determine
|
||||
system boot-up performance statistics and retrieve other state and
|
||||
tracing information from the system and service manager, and to
|
||||
verify the correctness of unit files.</para>
|
||||
|
||||
<para><command>systemd-analyze time</command>
|
||||
prints the time spent in the kernel before
|
||||
userspace has been reached, the time spent in the
|
||||
initial RAM disk (initrd) before normal system
|
||||
userspace has been reached, and the time normal system
|
||||
userspace took to initialize. Note that these
|
||||
measurements simply measure the time passed up to the
|
||||
point where all system services have been spawned, but
|
||||
not necessarily until they fully finished
|
||||
initialization or the disk is idle.</para>
|
||||
<para><command>systemd-analyze time</command> prints the time
|
||||
spent in the kernel before userspace has been reached, the time
|
||||
spent in the initial RAM disk (initrd) before normal system
|
||||
userspace has been reached, and the time normal system userspace
|
||||
took to initialize. Note that these measurements simply measure
|
||||
the time passed up to the point where all system services have
|
||||
been spawned, but not necessarily until they fully finished
|
||||
initialization or the disk is idle.</para>
|
||||
|
||||
<para><command>systemd-analyze blame</command> prints
|
||||
a list of all running units, ordered by the time they
|
||||
took to initialize. This information may be used to
|
||||
optimize boot-up times. Note that the output might be
|
||||
misleading as the initialization of one service might
|
||||
be slow simply because it waits for the initialization
|
||||
of another service to complete.</para>
|
||||
<para><command>systemd-analyze blame</command> prints a list of
|
||||
all running units, ordered by the time they took to initialize.
|
||||
This information may be used to optimize boot-up times. Note that
|
||||
the output might be misleading as the initialization of one
|
||||
service might be slow simply because it waits for the
|
||||
initialization of another service to complete.</para>
|
||||
|
||||
<para><command>systemd-analyze critical-chain [<replaceable>UNIT...</replaceable>]</command>
|
||||
prints a tree of the time-critical chain of units
|
||||
(for each of the specified <replaceable>UNIT</replaceable>s
|
||||
or for the default target otherwise).
|
||||
The time after the unit is active or started is printed
|
||||
after the "@" character. The time the unit takes to
|
||||
start is printed after the "+" character.
|
||||
Note that the output might be misleading as the
|
||||
initialization of one service might depend on socket
|
||||
activation and because of the parallel execution
|
||||
of units.</para>
|
||||
<para><command>systemd-analyze critical-chain
|
||||
[<replaceable>UNIT...</replaceable>]</command> prints a tree of
|
||||
the time-critical chain of units (for each of the specified
|
||||
<replaceable>UNIT</replaceable>s or for the default target
|
||||
otherwise). The time after the unit is active or started is
|
||||
printed after the "@" character. The time the unit takes to start
|
||||
is printed after the "+" character. Note that the output might be
|
||||
misleading as the initialization of one service might depend on
|
||||
socket activation and because of the parallel execution of
|
||||
units.</para>
|
||||
|
||||
<para><command>systemd-analyze plot</command> prints
|
||||
an SVG graphic detailing which system services have
|
||||
been started at what time, highlighting the time they
|
||||
spent on initialization.</para>
|
||||
<para><command>systemd-analyze plot</command> prints an SVG
|
||||
graphic detailing which system services have been started at what
|
||||
time, highlighting the time they spent on initialization.</para>
|
||||
|
||||
<para><command>systemd-analyze dot</command> generates
|
||||
textual dependency graph description in dot format for
|
||||
further processing with the GraphViz
|
||||
<citerefentry><refentrytitle>dot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
tool. Use a command line like <command>systemd-analyze
|
||||
dot | dot -Tsvg > systemd.svg</command> to generate a
|
||||
graphical dependency tree. Unless
|
||||
<option>--order</option> or <option>--require</option>
|
||||
is passed, the generated graph will show both ordering
|
||||
and requirement dependencies. Optional pattern
|
||||
globbing style specifications
|
||||
(e.g. <filename>*.target</filename>) may be given at
|
||||
the end. A unit dependency is included in the graph if
|
||||
any of these patterns match either the origin or
|
||||
destination node.</para>
|
||||
<para><command>systemd-analyze dot</command> generates textual
|
||||
dependency graph description in dot format for further processing
|
||||
with the GraphViz
|
||||
<citerefentry><refentrytitle>dot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
tool. Use a command line like <command>systemd-analyze dot | dot
|
||||
-Tsvg > systemd.svg</command> to generate a graphical dependency
|
||||
tree. Unless <option>--order</option> or
|
||||
<option>--require</option> is passed, the generated graph will
|
||||
show both ordering and requirement dependencies. Optional pattern
|
||||
globbing style specifications (e.g. <filename>*.target</filename>)
|
||||
may be given at the end. A unit dependency is included in the
|
||||
graph if any of these patterns match either the origin or
|
||||
destination node.</para>
|
||||
|
||||
<para><command>systemd-analyze dump</command> outputs
|
||||
a (usually very long) human-readable serialization of
|
||||
the complete server state. Its format is subject to
|
||||
change without notice and should not be parsed by
|
||||
applications.</para>
|
||||
<para><command>systemd-analyze dump</command> outputs a (usually
|
||||
very long) human-readable serialization of the complete server
|
||||
state. Its format is subject to change without notice and should
|
||||
not be parsed by applications.</para>
|
||||
|
||||
<para><command>systemd-analyze set-log-level
|
||||
<replaceable>LEVEL</replaceable></command> changes the
|
||||
current log level of the <command>systemd</command>
|
||||
daemon to <replaceable>LEVEL</replaceable> (accepts
|
||||
the same values as <option>--log-level=</option>
|
||||
described in
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>).</para>
|
||||
<para><command>systemd-analyze set-log-level
|
||||
<replaceable>LEVEL</replaceable></command> changes the current log
|
||||
level of the <command>systemd</command> daemon to
|
||||
<replaceable>LEVEL</replaceable> (accepts the same values as
|
||||
<option>--log-level=</option> described in
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>).</para>
|
||||
|
||||
<para><command>systemd-analyze verify</command> will
|
||||
load unit files and print warnings if any errors are
|
||||
detected. Files specified on the command line will be
|
||||
loaded, but also any other units referenced by
|
||||
them. This command works by prepending the directories
|
||||
for all command line arguments at the beginning of the
|
||||
unit load path, which means that all units files found
|
||||
in those directories will be used in preference to the
|
||||
unit files found in the standard locations, even if
|
||||
not listed explicitly.</para>
|
||||
<para><command>systemd-analyze verify</command> will load unit
|
||||
files and print warnings if any errors are detected. Files
|
||||
specified on the command line will be loaded, but also any other
|
||||
units referenced by them. This command works by prepending the
|
||||
directories for all command line arguments at the beginning of the
|
||||
unit load path, which means that all units files found in those
|
||||
directories will be used in preference to the unit files found in
|
||||
the standard locations, even if not listed explicitly.</para>
|
||||
|
||||
<para>If no command is passed, <command>systemd-analyze
|
||||
time</command> is implied.</para>
|
||||
<para>If no command is passed, <command>systemd-analyze
|
||||
time</command> is implied.</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--user</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--user</option></term>
|
||||
|
||||
<listitem><para>Operates on the user
|
||||
systemd instance.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Operates on the user systemd
|
||||
instance.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--system</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--system</option></term>
|
||||
|
||||
<listitem><para>Operates on the system
|
||||
systemd instance. This is the implied
|
||||
default.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Operates on the system systemd instance. This
|
||||
is the implied default.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--order</option></term>
|
||||
<term><option>--require</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--order</option></term>
|
||||
<term><option>--require</option></term>
|
||||
|
||||
<listitem><para>When used in
|
||||
conjunction with the
|
||||
<command>dot</command> command (see
|
||||
above), selects which dependencies are
|
||||
shown in the dependency graph. If
|
||||
<option>--order</option> is passed,
|
||||
only dependencies of type
|
||||
<varname>After=</varname> or
|
||||
<varname>Before=</varname> are
|
||||
shown. If <option>--require</option>
|
||||
is passed, only dependencies of type
|
||||
<varname>Requires=</varname>,
|
||||
<varname>RequiresOverridable=</varname>,
|
||||
<varname>Requisite=</varname>,
|
||||
<varname>RequisiteOverridable=</varname>,
|
||||
<varname>Wants=</varname> and
|
||||
<varname>Conflicts=</varname> are
|
||||
shown. If neither is passed, this shows
|
||||
dependencies of all these
|
||||
types.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>When used in conjunction with the
|
||||
<command>dot</command> command (see above), selects which
|
||||
dependencies are shown in the dependency graph. If
|
||||
<option>--order</option> is passed, only dependencies of type
|
||||
<varname>After=</varname> or <varname>Before=</varname> are
|
||||
shown. If <option>--require</option> is passed, only
|
||||
dependencies of type <varname>Requires=</varname>,
|
||||
<varname>RequiresOverridable=</varname>,
|
||||
<varname>Requisite=</varname>,
|
||||
<varname>RequisiteOverridable=</varname>,
|
||||
<varname>Wants=</varname> and <varname>Conflicts=</varname>
|
||||
are shown. If neither is passed, this shows dependencies of
|
||||
all these types.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--from-pattern=</option></term>
|
||||
<term><option>--to-pattern=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--from-pattern=</option></term>
|
||||
<term><option>--to-pattern=</option></term>
|
||||
|
||||
<listitem><para>When used in
|
||||
conjunction with the
|
||||
<command>dot</command> command (see
|
||||
above), this selects which relationships
|
||||
are shown in the dependency graph.
|
||||
They both require
|
||||
<citerefentry><refentrytitle>glob</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
patterns as arguments, which are
|
||||
matched against left-hand and
|
||||
right-hand, respectively, nodes of a
|
||||
relationship. Each of these can be
|
||||
used more than once, which means a
|
||||
unit name must match one of the given
|
||||
values.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>When used in conjunction with the
|
||||
<command>dot</command> command (see above), this selects which
|
||||
relationships are shown in the dependency graph. They both
|
||||
require
|
||||
<citerefentry><refentrytitle>glob</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
patterns as arguments, which are matched against left-hand and
|
||||
right-hand, respectively, nodes of a relationship. Each of
|
||||
these can be used more than once, which means a unit name must
|
||||
match one of the given values.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--fuzz=</option><replaceable>timespan</replaceable></term>
|
||||
<varlistentry>
|
||||
<term><option>--fuzz=</option><replaceable>timespan</replaceable></term>
|
||||
|
||||
<listitem><para>When used in conjunction
|
||||
with the <command>critical-chain</command>
|
||||
command (see above), also show units, which
|
||||
finished <replaceable>timespan</replaceable> earlier, than the
|
||||
latest unit in the same level. The unit of
|
||||
<replaceable>timespan</replaceable> is seconds
|
||||
unless specified with a different unit,
|
||||
e.g. "50ms".</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>When used in conjunction with the
|
||||
<command>critical-chain</command> command (see above), also
|
||||
show units, which finished <replaceable>timespan</replaceable>
|
||||
earlier, than the latest unit in the same level. The unit of
|
||||
<replaceable>timespan</replaceable> is seconds unless
|
||||
specified with a different unit, e.g.
|
||||
"50ms".</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--no-man</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--no-man</option></term>
|
||||
|
||||
<listitem><para>Do not invoke man to verify the existence
|
||||
of man pages listen in <varname>Documentation=</varname>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Do not invoke man to verify the existence of
|
||||
man pages listen in <varname>Documentation=</varname>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="user-system-options.xml" xpointer="host" />
|
||||
<xi:include href="user-system-options.xml" xpointer="machine" />
|
||||
<xi:include href="user-system-options.xml" xpointer="host" />
|
||||
<xi:include href="user-system-options.xml" xpointer="machine" />
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples for <command>dot</command></title>
|
||||
<refsect1>
|
||||
<title>Examples for <command>dot</command></title>
|
||||
|
||||
<example>
|
||||
<title>Plots all dependencies of any unit whose
|
||||
name starts with <literal>avahi-daemon</literal></title>
|
||||
<example>
|
||||
<title>Plots all dependencies of any unit whose name starts with
|
||||
<literal>avahi-daemon</literal></title>
|
||||
|
||||
<programlisting>$ systemd-analyze dot 'avahi-daemon.*' | dot -Tsvg > avahi.svg
|
||||
$ eog avahi.svg</programlisting>
|
||||
</example>
|
||||
<programlisting>$ systemd-analyze dot 'avahi-daemon.*' | dot -Tsvg > avahi.svg
|
||||
$ eog avahi.svg</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Plots the dependencies between all known target units</title>
|
||||
<example>
|
||||
<title>Plots the dependencies between all known target units</title>
|
||||
|
||||
<programlisting>systemd-analyze dot --to-pattern='*.target' --from-pattern='*.target' | dot -Tsvg > targets.svg
|
||||
<programlisting>systemd-analyze dot --to-pattern='*.target' --from-pattern='*.target' | dot -Tsvg > targets.svg
|
||||
$ eog targets.svg</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
</example>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples for <command>verify</command></title>
|
||||
<refsect1>
|
||||
<title>Examples for <command>verify</command></title>
|
||||
|
||||
<para>The following errors are currently detected:</para>
|
||||
<itemizedlist>
|
||||
<listitem><para>unknown sections and
|
||||
directives, </para></listitem>
|
||||
<para>The following errors are currently detected:</para>
|
||||
<itemizedlist>
|
||||
<listitem><para>unknown sections and directives,
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>missing dependencies which are
|
||||
required to start the given unit,
|
||||
</para></listitem>
|
||||
<listitem><para>missing dependencies which are required to start
|
||||
the given unit, </para></listitem>
|
||||
|
||||
<listitem><para>man pages listed in
|
||||
<varname>Documentation=</varname> which are
|
||||
not found in the system,</para></listitem>
|
||||
<listitem><para>man pages listed in
|
||||
<varname>Documentation=</varname> which are not found in the
|
||||
system,</para></listitem>
|
||||
|
||||
<listitem><para>commands listed in
|
||||
<varname>ExecStart=</varname> and similar
|
||||
which are not found in the system or not
|
||||
executable.</para></listitem>
|
||||
</itemizedlist>
|
||||
<listitem><para>commands listed in <varname>ExecStart=</varname>
|
||||
and similar which are not found in the system or not
|
||||
executable.</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<title>Misspelt directives</title>
|
||||
<example>
|
||||
<title>Misspelt directives</title>
|
||||
|
||||
<programlisting>$ cat ./user.slice
|
||||
<programlisting>$ cat ./user.slice
|
||||
[Unit]
|
||||
WhatIsThis=11
|
||||
Documentation=man:nosuchfile(1)
|
||||
@@ -356,17 +328,17 @@ $ systemd-analyze verify ./user.slice
|
||||
[./user.slice:9] Unknown lvalue 'WhatIsThis' in section 'Unit'
|
||||
[./user.slice:13] Unknown section 'Service'. Ignoring.
|
||||
Error: org.freedesktop.systemd1.LoadFailed:
|
||||
Unit different.service failed to load:
|
||||
No such file or directory.
|
||||
Unit different.service failed to load:
|
||||
No such file or directory.
|
||||
Failed to create user.slice/start: Invalid argument
|
||||
user.slice: man nosuchfile(1) command failed with code 16
|
||||
</programlisting>
|
||||
</example>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Missing service units</title>
|
||||
<example>
|
||||
<title>Missing service units</title>
|
||||
|
||||
<programlisting>$ tail ./a.socket ./b.socket
|
||||
<programlisting>$ tail ./a.socket ./b.socket
|
||||
==> ./a.socket <==
|
||||
[Socket]
|
||||
ListenStream=100
|
||||
@@ -379,18 +351,18 @@ Accept=yes
|
||||
$ systemd-analyze verify ./a.socket ./b.socket
|
||||
Service a.service not loaded, a.socket cannot be started.
|
||||
Service b@0.service not loaded, b.socket cannot be started.
|
||||
</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
</programlisting>
|
||||
</example>
|
||||
</refsect1>
|
||||
|
||||
<xi:include href="less-variables.xml" />
|
||||
<xi:include href="less-variables.xml" />
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,76 +21,73 @@
|
||||
-->
|
||||
<refentry id="systemd-ask-password-console.service">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-ask-password-console.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-ask-password-console.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-ask-password-console.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-ask-password-console.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-ask-password-console.service</refname>
|
||||
<refname>systemd-ask-password-console.path</refname>
|
||||
<refname>systemd-ask-password-wall.service</refname>
|
||||
<refname>systemd-ask-password-wall.path</refname>
|
||||
<refpurpose>Query the user for system passwords on the
|
||||
console and via wall</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-ask-password-console.service</refname>
|
||||
<refname>systemd-ask-password-console.path</refname>
|
||||
<refname>systemd-ask-password-wall.service</refname>
|
||||
<refname>systemd-ask-password-wall.path</refname>
|
||||
<refpurpose>Query the user for system passwords on the
|
||||
console and via wall</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-ask-password-console.service</filename></para>
|
||||
<para><filename>systemd-ask-password-console.path</filename></para>
|
||||
<para><filename>systemd-ask-password-wall.service</filename></para>
|
||||
<para><filename>systemd-ask-password-wall.path</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-ask-password-console.service</filename></para>
|
||||
<para><filename>systemd-ask-password-console.path</filename></para>
|
||||
<para><filename>systemd-ask-password-wall.service</filename></para>
|
||||
<para><filename>systemd-ask-password-wall.path</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-ask-password-console.service</filename>
|
||||
is a system service that queries the user for system
|
||||
passwords (such as hard disk encryption keys and SSL
|
||||
certificate passphrases) on the console. It is
|
||||
intended to be used during boot to ensure proper
|
||||
handling of passwords necessary for
|
||||
boot. <filename>systemd-ask-password-wall.service</filename>
|
||||
is a system service that informs all logged in users
|
||||
for system passwords via
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>. It
|
||||
is intended to be used after boot to ensure that users
|
||||
are properly notified.</para>
|
||||
<para><filename>systemd-ask-password-console.service</filename> is
|
||||
a system service that queries the user for system passwords (such
|
||||
as hard disk encryption keys and SSL certificate passphrases) on
|
||||
the console. It is intended to be used during boot to ensure
|
||||
proper handling of passwords necessary for boot.
|
||||
<filename>systemd-ask-password-wall.service</filename> is a system
|
||||
service that informs all logged in users for system passwords via
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
It is intended to be used after boot to ensure that users are
|
||||
properly notified.</para>
|
||||
|
||||
<para>See the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/PasswordAgents">
|
||||
developer documentation</ulink> for more information
|
||||
about the system password logic.</para>
|
||||
<para>See the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/PasswordAgents">
|
||||
developer documentation</ulink> for more information about the
|
||||
system password logic.</para>
|
||||
|
||||
<para>Note that these services invoke
|
||||
<citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
with either the <command>--watch --console</command>
|
||||
or <command>--watch --wall</command> command line
|
||||
parameters.</para>
|
||||
</refsect1>
|
||||
<para>Note that these services invoke
|
||||
<citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
with either the <command>--watch --console</command> or
|
||||
<command>--watch --wall</command> command line parameters.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-tty-ask-password-agent</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,169 +22,153 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-ask-password"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-ask-password</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-ask-password</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-ask-password</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-ask-password</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-ask-password</refname>
|
||||
<refpurpose>Query the user for a system password</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-ask-password</refname>
|
||||
<refpurpose>Query the user for a system password</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-ask-password <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="opt">MESSAGE</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-ask-password <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="opt">MESSAGE</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-ask-password</command> may be
|
||||
used to query a system password or passphrase from the
|
||||
user, using a question message specified on the
|
||||
command line. When run from a TTY it will query a
|
||||
password on the TTY and print it to standard output. When run
|
||||
with no TTY or with <option>--no-tty</option> it will
|
||||
query the password system-wide and allow active users
|
||||
to respond via several agents. The latter is
|
||||
only available to privileged processes.</para>
|
||||
<para><command>systemd-ask-password</command> may be used to query
|
||||
a system password or passphrase from the user, using a question
|
||||
message specified on the command line. When run from a TTY it will
|
||||
query a password on the TTY and print it to standard output. When
|
||||
run with no TTY or with <option>--no-tty</option> it will query
|
||||
the password system-wide and allow active users to respond via
|
||||
several agents. The latter is only available to privileged
|
||||
processes.</para>
|
||||
|
||||
<para>The purpose of this tool is to query system-wide
|
||||
passwords -- that is passwords not attached to a
|
||||
specific user account. Examples include: unlocking
|
||||
encrypted hard disks when they are plugged in or at
|
||||
boot, entering an SSL certificate passphrase for web
|
||||
and VPN servers.</para>
|
||||
<para>The purpose of this tool is to query system-wide passwords
|
||||
-- that is passwords not attached to a specific user account.
|
||||
Examples include: unlocking encrypted hard disks when they are
|
||||
plugged in or at boot, entering an SSL certificate passphrase for
|
||||
web and VPN servers.</para>
|
||||
|
||||
<para>Existing agents are: a boot-time password agent
|
||||
asking the user for passwords using Plymouth; a
|
||||
boot-time password agent querying the user directly on
|
||||
the console; an agent requesting password input via a
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
message; an agent suitable for running in a GNOME
|
||||
session; a command line agent which can be started
|
||||
temporarily to process queued password requests; a TTY
|
||||
agent that is temporarily spawned during
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
invocations.</para>
|
||||
<para>Existing agents are: a boot-time password agent asking the
|
||||
user for passwords using Plymouth; a boot-time password agent
|
||||
querying the user directly on the console; an agent requesting
|
||||
password input via a
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
message; an agent suitable for running in a GNOME session; a
|
||||
command line agent which can be started temporarily to process
|
||||
queued password requests; a TTY agent that is temporarily spawned
|
||||
during
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
invocations.</para>
|
||||
|
||||
<para>Additional password agents may be implemented
|
||||
according to the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/PasswordAgents">systemd
|
||||
Password Agent Specification</ulink>.</para>
|
||||
<para>Additional password agents may be implemented according to
|
||||
the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/PasswordAgents">systemd
|
||||
Password Agent Specification</ulink>.</para>
|
||||
|
||||
<para>If a password is queried on a TTY, the user may
|
||||
press TAB to hide the asterisks normally shown for
|
||||
each character typed. Pressing Backspace as first key
|
||||
achieves the same effect.</para>
|
||||
<para>If a password is queried on a TTY, the user may press TAB to
|
||||
hide the asterisks normally shown for each character typed.
|
||||
Pressing Backspace as first key achieves the same effect.</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--icon=</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--icon=</option></term>
|
||||
|
||||
<listitem><para>Specify an icon name
|
||||
alongside the password query, which may
|
||||
be used in all agents supporting
|
||||
graphical display. The icon name
|
||||
should follow the <ulink
|
||||
url="http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html">XDG
|
||||
Icon Naming
|
||||
Specification</ulink>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Specify an icon name alongside the password
|
||||
query, which may be used in all agents supporting graphical
|
||||
display. The icon name should follow the <ulink
|
||||
url="http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html">XDG
|
||||
Icon Naming Specification</ulink>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--timeout=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--timeout=</option></term>
|
||||
|
||||
<listitem><para>Specify the query
|
||||
timeout in seconds. Defaults to
|
||||
90s. A timeout of 0 waits indefinitely.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Specify the query timeout in seconds. Defaults
|
||||
to 90s. A timeout of 0 waits indefinitely. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--echo</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--echo</option></term>
|
||||
|
||||
<listitem><para>Echo the user input
|
||||
instead of masking it. This is useful
|
||||
when using
|
||||
<filename>systemd-ask-password</filename>
|
||||
to query for usernames.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Echo the user input instead of masking it.
|
||||
This is useful when using
|
||||
<filename>systemd-ask-password</filename> to query for
|
||||
usernames. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--no-tty</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--no-tty</option></term>
|
||||
|
||||
<listitem><para>Never ask for password
|
||||
on current TTY even if one is
|
||||
available. Always use agent
|
||||
system.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Never ask for password on current TTY even if
|
||||
one is available. Always use agent system.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--accept-cached</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--accept-cached</option></term>
|
||||
|
||||
<listitem><para>If passed, accept
|
||||
cached passwords, i.e. passwords
|
||||
previously typed in.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>If passed, accept cached passwords, i.e.
|
||||
passwords previously typed in.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--multiple</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--multiple</option></term>
|
||||
|
||||
<listitem><para>When used in
|
||||
conjunction with
|
||||
<option>--accept-cached</option>
|
||||
accept multiple passwords. This will
|
||||
output one password per
|
||||
line.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>When used in conjunction with
|
||||
<option>--accept-cached</option> accept multiple passwords.
|
||||
This will output one password per line.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>plymouth</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>plymouth</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>wall</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,79 +21,74 @@
|
||||
-->
|
||||
<refentry id="systemd-backlight@.service" conditional='ENABLE_BACKLIGHT'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-backlight@.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-backlight@.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-backlight@.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-backlight@.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-backlight@.service</refname>
|
||||
<refname>systemd-backlight</refname>
|
||||
<refpurpose>Load and save the display backlight brightness at boot and shutdown</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-backlight@.service</refname>
|
||||
<refname>systemd-backlight</refname>
|
||||
<refpurpose>Load and save the display backlight brightness at boot and shutdown</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-backlight@.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-backlight</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-backlight@.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-backlight</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-backlight@.service</filename>
|
||||
is a service that restores the display backlight
|
||||
brightness at early boot and saves it at shutdown. On
|
||||
disk, the backlight brightness is stored in
|
||||
<filename>/var/lib/systemd/backlight/</filename>. During
|
||||
loading, if udev property
|
||||
<option>ID_BACKLIGHT_CLAMP</option> is not set to
|
||||
false value, the brightness is clamped to a value of
|
||||
at least 1 or 5% of maximum brightness, whichever is
|
||||
greater. This restriction will be removed when the
|
||||
kernel allows user space to reliably set a brightness
|
||||
value which does not turn off the display.</para>
|
||||
</refsect1>
|
||||
<para><filename>systemd-backlight@.service</filename> is a service
|
||||
that restores the display backlight brightness at early boot and
|
||||
saves it at shutdown. On disk, the backlight brightness is stored
|
||||
in <filename>/var/lib/systemd/backlight/</filename>. During
|
||||
loading, if udev property <option>ID_BACKLIGHT_CLAMP</option> is
|
||||
not set to false value, the brightness is clamped to a value of at
|
||||
least 1 or 5% of maximum brightness, whichever is greater. This
|
||||
restriction will be removed when the kernel allows user space to
|
||||
reliably set a brightness value which does not turn off the
|
||||
display.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
|
||||
<para><filename>systemd-backlight</filename> understands
|
||||
the following kernel command line parameter:</para>
|
||||
<para><filename>systemd-backlight</filename> understands the
|
||||
following kernel command line parameter:</para>
|
||||
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<varlistentry>
|
||||
<term><varname>systemd.restore_state=</varname></term>
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<varlistentry>
|
||||
<term><varname>systemd.restore_state=</varname></term>
|
||||
|
||||
<listitem><para>Takes a boolean
|
||||
argument. Defaults to
|
||||
<literal>1</literal>. If
|
||||
<literal>0</literal>, does not restore
|
||||
the backlight settings on boot. However,
|
||||
settings will still be stored on shutdown.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>Takes a boolean argument. Defaults to
|
||||
<literal>1</literal>. If <literal>0</literal>, does not
|
||||
restore the backlight settings on boot. However, settings will
|
||||
still be stored on shutdown. </para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,56 +21,55 @@
|
||||
-->
|
||||
<refentry id="systemd-binfmt.service" conditional='ENABLE_BINFMT'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-binfmt.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-binfmt.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-binfmt.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-binfmt.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-binfmt.service</refname>
|
||||
<refname>systemd-binfmt</refname>
|
||||
<refpurpose>Configure additional binary formats for executables at boot</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-binfmt.service</refname>
|
||||
<refname>systemd-binfmt</refname>
|
||||
<refpurpose>Configure additional binary formats for executables at boot</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-binfmt.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-binfmt</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-binfmt.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-binfmt</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-binfmt.service</filename> is
|
||||
an early-boot service that registers additional binary
|
||||
formats for executables in the kernel.</para>
|
||||
<para><filename>systemd-binfmt.service</filename> is an early-boot
|
||||
service that registers additional binary formats for executables
|
||||
in the kernel.</para>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for information about the configuration of this
|
||||
service.</para>
|
||||
</refsect1>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for information about the configuration of this service.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>wine</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>binfmt.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='die-net'><refentrytitle>wine</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<?xml-stylesheet type="text/xsl" href="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl"?>
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -27,311 +27,298 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-bootchart" conditional='ENABLE_BOOTCHART'
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-bootchart</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-bootchart</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Auke</firstname>
|
||||
<surname>Kok</surname>
|
||||
<email>auke-jan.h.kok@intel.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Auke</firstname>
|
||||
<surname>Kok</surname>
|
||||
<email>auke-jan.h.kok@intel.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-bootchart</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-bootchart</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-bootchart</refname>
|
||||
<refpurpose>Boot performance graphing tool</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-bootchart</refname>
|
||||
<refpurpose>Boot performance graphing tool</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<para>
|
||||
<command>systemd-bootchart</command> is a
|
||||
tool, usually run at system startup, that
|
||||
collects the CPU load, disk load, memory
|
||||
usage, as well as per-process information from
|
||||
a running system. Collected results are output
|
||||
as an SVG graph. Normally, systemd-bootchart
|
||||
is invoked by the kernel by passing
|
||||
<option>init=<filename>/usr/lib/systemd/systemd-bootchart</filename></option>
|
||||
on the kernel command line. systemd-bootchart will then
|
||||
fork the real init off to resume normal system
|
||||
startup, while monitoring and logging startup
|
||||
information in the background.
|
||||
</para>
|
||||
<para>
|
||||
After collecting a certain amount of data
|
||||
(usually 15-30 seconds, default 20 s) the
|
||||
logging stops and a graph is generated from
|
||||
the logged information. This graph contains
|
||||
vital clues as to which resources are being used,
|
||||
in which order, and where possible problems
|
||||
exist in the startup sequence of the system.
|
||||
It is essentially a more detailed version of
|
||||
the <command>systemd-analyze plot</command>
|
||||
function.
|
||||
</para>
|
||||
<para>
|
||||
Of course, bootchart can also be used at any
|
||||
moment in time to collect and graph some data
|
||||
for an amount of time. It is
|
||||
recommended to use the <option>--rel</option>
|
||||
switch in this case.
|
||||
</para>
|
||||
<para>
|
||||
Bootchart does not require root privileges,
|
||||
and will happily run as a normal user.
|
||||
</para>
|
||||
<para>
|
||||
Bootchart graphs are by default written
|
||||
time-stamped in <filename>/run/log</filename>
|
||||
and saved to the journal with
|
||||
<varname>MESSAGE_ID=9f26aa562cf440c2b16c773d0479b518</varname>.
|
||||
Journal field <varname>BOOTCHART=</varname> contains
|
||||
the bootchart in SVG format.
|
||||
</para>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<para>
|
||||
<command>systemd-bootchart</command> is a tool, usually run at
|
||||
system startup, that collects the CPU load, disk load, memory
|
||||
usage, as well as per-process information from a running system.
|
||||
Collected results are output as an SVG graph. Normally,
|
||||
systemd-bootchart is invoked by the kernel by passing
|
||||
<option>init=<filename>/usr/lib/systemd/systemd-bootchart</filename></option>
|
||||
on the kernel command line. systemd-bootchart will then fork the
|
||||
real init off to resume normal system startup, while monitoring
|
||||
and logging startup information in the background.
|
||||
</para>
|
||||
<para>
|
||||
After collecting a certain amount of data (usually 15-30
|
||||
seconds, default 20 s) the logging stops and a graph is
|
||||
generated from the logged information. This graph contains vital
|
||||
clues as to which resources are being used, in which order, and
|
||||
where possible problems exist in the startup sequence of the
|
||||
system. It is essentially a more detailed version of the
|
||||
<command>systemd-analyze plot</command> function.
|
||||
</para>
|
||||
<para>
|
||||
Of course, bootchart can also be used at any moment in time to
|
||||
collect and graph some data for an amount of time. It is
|
||||
recommended to use the <option>--rel</option> switch in this
|
||||
case.
|
||||
</para>
|
||||
<para>
|
||||
Bootchart does not require root privileges, and will happily run
|
||||
as a normal user.
|
||||
</para>
|
||||
<para>
|
||||
Bootchart graphs are by default written time-stamped in
|
||||
<filename>/run/log</filename> and saved to the journal with
|
||||
<varname>MESSAGE_ID=9f26aa562cf440c2b16c773d0479b518</varname>.
|
||||
Journal field <varname>BOOTCHART=</varname> contains the
|
||||
bootchart in SVG format.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Invocation</title>
|
||||
<refsect1>
|
||||
<title>Invocation</title>
|
||||
|
||||
<para><command>systemd-bootchart</command> can be invoked in several different ways:</para>
|
||||
<para><command>systemd-bootchart</command> can be invoked in several different ways:</para>
|
||||
|
||||
<variablelist>
|
||||
<variablelist>
|
||||
|
||||
<varlistentry>
|
||||
<term><emphasis>Kernel invocation</emphasis></term>
|
||||
<listitem><para>The kernel can invoke
|
||||
<command>systemd-bootchart</command>
|
||||
instead of the init process. In turn,
|
||||
<command>systemd-bootchart</command>
|
||||
will invoke <command>/usr/lib/systemd/systemd</command>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><emphasis>Kernel invocation</emphasis></term>
|
||||
<listitem><para>The kernel can invoke
|
||||
<command>systemd-bootchart</command> instead of the init
|
||||
process. In turn, <command>systemd-bootchart</command> will
|
||||
invoke <command>/usr/lib/systemd/systemd</command>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><emphasis>Started as a standalone program</emphasis></term>
|
||||
<listitem><para>One can execute
|
||||
<command>systemd-bootchart</command>
|
||||
as normal application from the
|
||||
command line. In this mode it is highly
|
||||
recommended to pass the
|
||||
<option>-r</option> flag in order to
|
||||
not graph the time elapsed since boot
|
||||
and before systemd-bootchart was
|
||||
started, as it may result in extremely
|
||||
large graphs. The time elapsed since boot
|
||||
might also include any time that the system
|
||||
was suspended.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<varlistentry>
|
||||
<term><emphasis>Started as a standalone program</emphasis></term>
|
||||
<listitem><para>One can execute
|
||||
<command>systemd-bootchart</command> as normal application
|
||||
from the command line. In this mode it is highly recommended
|
||||
to pass the <option>-r</option> flag in order to not graph the
|
||||
time elapsed since boot and before systemd-bootchart was
|
||||
started, as it may result in extremely large graphs. The time
|
||||
elapsed since boot might also include any time that the system
|
||||
was suspended.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>These options can also be set in the
|
||||
<filename>/etc/systemd/bootchart.conf</filename>
|
||||
file. See
|
||||
<citerefentry project='man-pages'><refentrytitle>bootchart.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
||||
</para>
|
||||
<para>These options can also be set in the
|
||||
<filename>/etc/systemd/bootchart.conf</filename> file. See
|
||||
<citerefentry project='man-pages'><refentrytitle>bootchart.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
||||
</para>
|
||||
|
||||
<variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-n</option></term>
|
||||
<term><option>--sample <replaceable>N</replaceable></option></term>
|
||||
<listitem><para>Specify the number of
|
||||
samples, <replaceable>N</replaceable>,
|
||||
to record. Samples will be recorded at
|
||||
intervals defined with <option>--freq</option>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-n</option></term>
|
||||
<term><option>--sample <replaceable>N</replaceable></option></term>
|
||||
<listitem><para>Specify the number of samples,
|
||||
<replaceable>N</replaceable>, to record. Samples will be
|
||||
recorded at intervals defined with <option>--freq</option>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-f</option></term>
|
||||
<term><option>--freq <replaceable>f</replaceable></option></term>
|
||||
<listitem><para>Specify the sample log
|
||||
frequency, a positive real <replaceable>f</replaceable>, in Hz.
|
||||
Most systems can cope with values up to 25-50 without
|
||||
creating too much overhead.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-f</option></term>
|
||||
<term><option>--freq <replaceable>f</replaceable></option></term>
|
||||
<listitem><para>Specify the sample log frequency, a positive
|
||||
real <replaceable>f</replaceable>, in Hz. Most systems can
|
||||
cope with values up to 25-50 without creating too much
|
||||
overhead.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-r</option></term>
|
||||
<term><option>--rel</option></term>
|
||||
<listitem><para>Use relative times instead of absolute
|
||||
times. This is useful for using bootchart at post-boot
|
||||
time to profile an already booted system. Without this
|
||||
option the graph would become extremely large. If set, the
|
||||
horizontal axis starts at the first recorded sample
|
||||
instead of time 0.0.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-r</option></term>
|
||||
<term><option>--rel</option></term>
|
||||
<listitem><para>Use relative times instead of absolute times.
|
||||
This is useful for using bootchart at post-boot time to
|
||||
profile an already booted system. Without this option the
|
||||
graph would become extremely large. If set, the horizontal
|
||||
axis starts at the first recorded sample instead of time
|
||||
0.0.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-F</option></term>
|
||||
<term><option>--no-filter</option></term>
|
||||
<listitem><para>Disable filtering of tasks that
|
||||
did not contribute significantly to the boot. Processes
|
||||
that are too short-lived (only seen in one sample) or
|
||||
that do not consume any significant CPU time (less than
|
||||
0.001 s) will not be displayed in the output graph.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-F</option></term>
|
||||
<term><option>--no-filter</option></term>
|
||||
<listitem><para>Disable filtering of tasks that did not
|
||||
contribute significantly to the boot. Processes that are too
|
||||
short-lived (only seen in one sample) or that do not consume
|
||||
any significant CPU time (less than 0.001 s) will not be
|
||||
displayed in the output graph. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-C</option></term>
|
||||
<term><option>--cmdline</option></term>
|
||||
<listitem><para>Display the full command line with arguments of processes,
|
||||
instead of only the process name.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-C</option></term>
|
||||
<term><option>--cmdline</option></term>
|
||||
<listitem><para>Display the full command line with arguments
|
||||
of processes, instead of only the process name.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-g</option></term>
|
||||
<term><option>--control-group</option></term>
|
||||
<listitem><para>Display process control group
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-g</option></term>
|
||||
<term><option>--control-group</option></term>
|
||||
<listitem><para>Display process control group
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-o</option></term>
|
||||
<term><option>--output <replaceable>path</replaceable></option></term>
|
||||
<listitem><para>Specify the output directory for the
|
||||
graphs. By default, bootchart writes the graphs to
|
||||
<filename>/run/log</filename>.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-o</option></term>
|
||||
<term><option>--output <replaceable>path</replaceable></option></term>
|
||||
<listitem><para>Specify the output directory for the graphs.
|
||||
By default, bootchart writes the graphs to
|
||||
<filename>/run/log</filename>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-i</option></term>
|
||||
<term><option>--init <replaceable>path</replaceable></option></term>
|
||||
<listitem><para>Use this init binary. Defaults to
|
||||
<command>/usr/lib/systemd/systemd</command>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-i</option></term>
|
||||
<term><option>--init <replaceable>path</replaceable></option></term>
|
||||
<listitem><para>Use this init binary. Defaults to
|
||||
<command>/usr/lib/systemd/systemd</command>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
<term><option>--pss</option></term>
|
||||
<listitem><para>Enable logging and graphing
|
||||
of processes' PSS (Proportional Set Size)
|
||||
memory consumption. See <filename>filesystems/proc.txt</filename>
|
||||
in the kernel documentation for an
|
||||
explanation of this field.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
<term><option>--pss</option></term>
|
||||
<listitem><para>Enable logging and graphing of processes' PSS
|
||||
(Proportional Set Size) memory consumption. See
|
||||
<filename>filesystems/proc.txt</filename> in the kernel
|
||||
documentation for an explanation of this field.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-e</option></term>
|
||||
<term><option>--entropy</option></term>
|
||||
<listitem><para>Enable logging and graphing
|
||||
of the kernel random entropy pool size.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-e</option></term>
|
||||
<term><option>--entropy</option></term>
|
||||
<listitem><para>Enable logging and graphing of the kernel
|
||||
random entropy pool size.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-x</option></term>
|
||||
<term><option>--scale-x <replaceable>N</replaceable></option></term>
|
||||
<listitem><para>Horizontal scaling factor for all variable
|
||||
graph components.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-x</option></term>
|
||||
<term><option>--scale-x <replaceable>N</replaceable></option></term>
|
||||
<listitem><para>Horizontal scaling factor for all variable
|
||||
graph components.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-y</option></term>
|
||||
<term><option>--scale-y <replaceable>N</replaceable></option></term>
|
||||
<listitem><para>Vertical scaling factor for all variable
|
||||
graph components.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><option>-y</option></term>
|
||||
<term><option>--scale-y <replaceable>N</replaceable></option></term>
|
||||
<listitem><para>Vertical scaling factor for all variable graph
|
||||
components.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</variablelist>
|
||||
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Output</title>
|
||||
<refsect1>
|
||||
<title>Output</title>
|
||||
|
||||
<para><command>systemd-bootchart</command> generates SVG graphs. In order to render those
|
||||
on a graphical display any SVG capable viewer can be used. It should be
|
||||
noted that the SVG render engines in most browsers (including Chrome
|
||||
and Firefox) are many times faster than dedicated graphical applications
|
||||
like Gimp and Inkscape. Just point your browser at <ulink url="file:///run/log/" />!
|
||||
</para>
|
||||
</refsect1>
|
||||
<para><command>systemd-bootchart</command> generates SVG graphs.
|
||||
In order to render those on a graphical display any SVG capable
|
||||
viewer can be used. It should be noted that the SVG render engines
|
||||
in most browsers (including Chrome and Firefox) are many times
|
||||
faster than dedicated graphical applications like Gimp and
|
||||
Inkscape. Just point your browser at
|
||||
<ulink url="file:///run/log/" />!
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
<refsect1>
|
||||
<title>History</title>
|
||||
|
||||
<para>This version of bootchart was implemented from
|
||||
scratch, but is inspired by former bootchart
|
||||
incantations:</para>
|
||||
<para>This version of bootchart was implemented from scratch, but
|
||||
is inspired by former bootchart incantations:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><emphasis>Original bash</emphasis></term>
|
||||
<listitem><para>The original bash/shell code implemented
|
||||
bootchart. This version created a compressed tarball for
|
||||
processing with external applications. This version did
|
||||
not graph anything, only generated data.</para></listitem>
|
||||
</varlistentry>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><emphasis>Original bash</emphasis></term>
|
||||
<listitem><para>The original bash/shell code implemented
|
||||
bootchart. This version created a compressed tarball for
|
||||
processing with external applications. This version did not
|
||||
graph anything, only generated data.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><emphasis>Ubuntu C Implementation</emphasis></term>
|
||||
<listitem><para>This version replaced the shell version with
|
||||
a fast and efficient data logger, but also did not graph
|
||||
the data.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><emphasis>Ubuntu C Implementation</emphasis></term>
|
||||
<listitem><para>This version replaced the shell version with a
|
||||
fast and efficient data logger, but also did not graph the
|
||||
data.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><emphasis>Java bootchart</emphasis></term>
|
||||
<listitem><para>This was the original graphing application
|
||||
for charting the data, written in java.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><emphasis>Java bootchart</emphasis></term>
|
||||
<listitem><para>This was the original graphing application for
|
||||
charting the data, written in java.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><emphasis>pybootchartgui.py</emphasis></term>
|
||||
<listitem><para>pybootchart created a graph from the data
|
||||
collected by either the bash or C version.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
<varlistentry>
|
||||
<term><emphasis>pybootchartgui.py</emphasis></term>
|
||||
<listitem><para>pybootchart created a graph from the data
|
||||
collected by either the bash or C version.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
|
||||
<para>The version of bootchart you are using now combines both the data
|
||||
collection and the charting into a single application, making it more
|
||||
efficient and simpler. There are no longer any timing issues with the data
|
||||
collector and the grapher, as the graphing cannot be run until the data
|
||||
has been collected. Also, the data kept in memory is reduced to the absolute
|
||||
minimum needed.</para>
|
||||
<para>The version of bootchart you are using now combines both the
|
||||
data collection and the charting into a single application, making
|
||||
it more efficient and simpler. There are no longer any timing
|
||||
issues with the data collector and the grapher, as the graphing
|
||||
cannot be run until the data has been collected. Also, the data
|
||||
kept in memory is reduced to the absolute minimum needed.</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry project='man-pages'><refentrytitle>bootchart.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
|
||||
<refsect1>
|
||||
<title>Bugs</title>
|
||||
<para>systemd-bootchart does not get the model information for the hard drive
|
||||
unless the root device is specified with <code>root=/dev/sdxY</code>. Using
|
||||
UUIDs or PARTUUIDs will boot fine, but the hard drive model will not be
|
||||
added to the chart.</para>
|
||||
<para>For bugs, please contact the author and current maintainer:</para>
|
||||
<simplelist>
|
||||
<member>Auke Kok <email>auke-jan.h.kok@intel.com</email></member>
|
||||
</simplelist>
|
||||
</refsect1>
|
||||
<para>
|
||||
<citerefentry project='man-pages'><refentrytitle>bootchart.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Bugs</title>
|
||||
|
||||
<para>systemd-bootchart does not get the model information for the
|
||||
hard drive unless the root device is specified with
|
||||
<code>root=/dev/sdxY</code>. Using UUIDs or PARTUUIDs will boot
|
||||
fine, but the hard drive model will not be added to the
|
||||
chart.</para>
|
||||
<para>For bugs, please contact the author and current maintainer:</para>
|
||||
<simplelist>
|
||||
<member>Auke Kok <email>auke-jan.h.kok@intel.com</email></member>
|
||||
</simplelist>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,173 +22,157 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-cat"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-cat</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-cat</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-cat</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-cat</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-cat</refname>
|
||||
<refpurpose>Connect a pipeline or program's output with the journal</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-cat</refname>
|
||||
<refpurpose>Connect a pipeline or program's output with the journal</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-cat <arg choice="opt" rep="repeat">OPTIONS</arg> <arg>COMMAND</arg> <arg choice="opt" rep="repeat">ARGUMENTS</arg></command>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-cat <arg choice="opt" rep="repeat">OPTIONS</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-cat <arg choice="opt" rep="repeat">OPTIONS</arg> <arg>COMMAND</arg> <arg choice="opt" rep="repeat">ARGUMENTS</arg></command>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-cat <arg choice="opt" rep="repeat">OPTIONS</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-cat</command> may be used to
|
||||
connect the standard input and output of a process to the
|
||||
journal, or as a filter tool in a shell pipeline to
|
||||
pass the output the previous pipeline element
|
||||
generates to the journal.</para>
|
||||
<para><command>systemd-cat</command> may be used to connect the
|
||||
standard input and output of a process to the journal, or as a
|
||||
filter tool in a shell pipeline to pass the output the previous
|
||||
pipeline element generates to the journal.</para>
|
||||
|
||||
<para>If no parameter is passed,
|
||||
<command>systemd-cat</command> will write
|
||||
everything it reads from standard input (stdin) to the journal.</para>
|
||||
<para>If no parameter is passed, <command>systemd-cat</command>
|
||||
will write everything it reads from standard input (stdin) to the
|
||||
journal.</para>
|
||||
|
||||
<para>If parameters are passed, they are executed as
|
||||
command line with standard output (stdout) and standard
|
||||
error output (stderr) connected to the journal, so
|
||||
that all it writes is stored in the journal.</para>
|
||||
</refsect1>
|
||||
<para>If parameters are passed, they are executed as command line
|
||||
with standard output (stdout) and standard error output (stderr)
|
||||
connected to the journal, so that all it writes is stored in the
|
||||
journal.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-t</option></term>
|
||||
<term><option>--identifier=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-t</option></term>
|
||||
<term><option>--identifier=</option></term>
|
||||
|
||||
<listitem><para>Specify a short string
|
||||
that is used to identify the logging
|
||||
tool. If not specified, no identification
|
||||
string is written to the journal.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Specify a short string that is used to
|
||||
identify the logging tool. If not specified, no identification
|
||||
string is written to the journal.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
<term><option>--priority=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
<term><option>--priority=</option></term>
|
||||
|
||||
<listitem><para>Specify the default
|
||||
priority level for the logged
|
||||
messages. Pass one of
|
||||
<literal>emerg</literal>,
|
||||
<literal>alert</literal>,
|
||||
<literal>crit</literal>,
|
||||
<literal>err</literal>,
|
||||
<literal>warning</literal>,
|
||||
<literal>notice</literal>,
|
||||
<literal>info</literal>,
|
||||
<literal>debug</literal>, or a
|
||||
value between 0 and 7 (corresponding
|
||||
to the same named levels). These
|
||||
priority values are the same as
|
||||
defined by
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>. Defaults
|
||||
to <literal>info</literal>. Note that
|
||||
this simply controls the default,
|
||||
individual lines may be logged with
|
||||
different levels if they are prefixed
|
||||
accordingly. For details see
|
||||
<option>--level-prefix=</option>
|
||||
below.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Specify the default priority level for the
|
||||
logged messages. Pass one of
|
||||
<literal>emerg</literal>,
|
||||
<literal>alert</literal>,
|
||||
<literal>crit</literal>,
|
||||
<literal>err</literal>,
|
||||
<literal>warning</literal>,
|
||||
<literal>notice</literal>,
|
||||
<literal>info</literal>,
|
||||
<literal>debug</literal>, or a
|
||||
value between 0 and 7 (corresponding to the same named
|
||||
levels). These priority values are the same as defined by
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>.
|
||||
Defaults to <literal>info</literal>. Note that this simply
|
||||
controls the default, individual lines may be logged with
|
||||
different levels if they are prefixed accordingly. For details
|
||||
see <option>--level-prefix=</option> below.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--level-prefix=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--level-prefix=</option></term>
|
||||
|
||||
<listitem><para>Controls whether lines
|
||||
read are parsed for syslog priority
|
||||
level prefixes. If enabled (the
|
||||
default), a line prefixed with a
|
||||
priority prefix such as
|
||||
<literal><5></literal> is logged
|
||||
at priority 5
|
||||
(<literal>notice</literal>), and
|
||||
similar for the other priority
|
||||
levels. Takes a boolean
|
||||
argument.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Controls whether lines read are parsed for
|
||||
syslog priority level prefixes. If enabled (the default), a
|
||||
line prefixed with a priority prefix such as
|
||||
<literal><5></literal> is logged at priority 5
|
||||
(<literal>notice</literal>), and similar for the other
|
||||
priority levels. Takes a boolean argument.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<example>
|
||||
<title>Invoke a program</title>
|
||||
<example>
|
||||
<title>Invoke a program</title>
|
||||
|
||||
<para>This calls <filename noindex='true'>/bin/ls</filename>
|
||||
with standard output and error connected to the
|
||||
journal:</para>
|
||||
<para>This calls <filename noindex='true'>/bin/ls</filename>
|
||||
with standard output and error connected to the journal:</para>
|
||||
|
||||
<programlisting># systemd-cat ls</programlisting>
|
||||
</example>
|
||||
<programlisting># systemd-cat ls</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Usage in a shell pipeline</title>
|
||||
<example>
|
||||
<title>Usage in a shell pipeline</title>
|
||||
|
||||
<para>This builds a shell pipeline also
|
||||
invoking <filename>/bin/ls</filename> and
|
||||
writes the output it generates to the
|
||||
journal:</para>
|
||||
<para>This builds a shell pipeline also invoking
|
||||
<filename>/bin/ls</filename> and writes the output it generates
|
||||
to the journal:</para>
|
||||
|
||||
<programlisting># ls | systemd-cat</programlisting>
|
||||
</example>
|
||||
<programlisting># ls | systemd-cat</programlisting>
|
||||
</example>
|
||||
|
||||
<para>Even though the two examples have very similar
|
||||
effects the first is preferable since only one process
|
||||
is running at a time, and both stdout and stderr are
|
||||
captured while in the second example, only stdout is
|
||||
captured.</para>
|
||||
</refsect1>
|
||||
<para>Even though the two examples have very similar effects the
|
||||
first is preferable since only one process is running at a time,
|
||||
and both stdout and stderr are captured while in the second
|
||||
example, only stdout is captured.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logger</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logger</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,124 +22,118 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-cgls"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-cgls</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-cgls</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-cgls</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-cgls</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-cgls</refname>
|
||||
<refpurpose>Recursively show control group contents</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-cgls</refname>
|
||||
<refpurpose>Recursively show control group contents</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-cgls</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="opt" rep="repeat">CGROUP</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-cgls</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="opt" rep="repeat">CGROUP</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-cgls</command> recursively
|
||||
shows the contents of the selected Linux control group
|
||||
hierarchy in a tree. If arguments are specified, shows
|
||||
all member processes of the specified control groups
|
||||
plus all their subgroups and their members. The
|
||||
control groups may either be specified by their full
|
||||
file paths or are assumed in the systemd control group
|
||||
hierarchy. If no argument is specified and the current
|
||||
working directory is beneath the control group mount
|
||||
point <filename>/sys/fs/cgroup</filename>, shows the contents
|
||||
of the control group the working directory refers
|
||||
to. Otherwise, the full systemd control group hierarchy
|
||||
is shown.</para>
|
||||
<para><command>systemd-cgls</command> recursively shows the
|
||||
contents of the selected Linux control group hierarchy in a tree.
|
||||
If arguments are specified, shows all member processes of the
|
||||
specified control groups plus all their subgroups and their
|
||||
members. The control groups may either be specified by their full
|
||||
file paths or are assumed in the systemd control group hierarchy.
|
||||
If no argument is specified and the current working directory is
|
||||
beneath the control group mount point
|
||||
<filename>/sys/fs/cgroup</filename>, shows the contents of the
|
||||
control group the working directory refers to. Otherwise, the full
|
||||
systemd control group hierarchy is shown.</para>
|
||||
|
||||
<para>By default, empty control groups are not
|
||||
shown.</para>
|
||||
</refsect1>
|
||||
<para>By default, empty control groups are not shown.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--all</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--all</option></term>
|
||||
|
||||
<listitem><para>Do not hide empty
|
||||
control groups in the
|
||||
output.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Do not hide empty control groups in the
|
||||
output.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-l</option></term>
|
||||
<term><option>--full</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-l</option></term>
|
||||
<term><option>--full</option></term>
|
||||
|
||||
<listitem><para>Do not ellipsize
|
||||
process tree members.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Do not ellipsize process tree members.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-k</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-k</option></term>
|
||||
|
||||
<listitem><para>Include kernel
|
||||
threads in output.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Include kernel threads in output.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-M <replaceable>MACHINE</replaceable></option></term>
|
||||
<term><option>--machine=<replaceable>MACHINE</replaceable></option></term>
|
||||
<varlistentry>
|
||||
<term><option>-M <replaceable>MACHINE</replaceable></option></term>
|
||||
<term><option>--machine=<replaceable>MACHINE</replaceable></option></term>
|
||||
|
||||
<listitem><para>Limit control groups shown to
|
||||
the part corresponding to the
|
||||
container <replaceable>MACHINE</replaceable>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Limit control groups shown to the part
|
||||
corresponding to the container
|
||||
<replaceable>MACHINE</replaceable>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cgtop</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,249 +22,232 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-cgtop"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-cgtop</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-cgtop</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-cgtop</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-cgtop</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-cgtop</refname>
|
||||
<refpurpose>Show top control groups by their resource usage</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-cgtop</refname>
|
||||
<refpurpose>Show top control groups by their resource usage</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-cgtop</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-cgtop</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-cgtop</command> shows the top
|
||||
control groups of the local Linux control group
|
||||
hierarchy, ordered by their CPU, memory, or disk I/O load. The
|
||||
display is refreshed in regular intervals (by default
|
||||
every 1s), similar in style to
|
||||
<citerefentry project='man-pages'><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
If <command>systemd-cgtop</command> is not connected
|
||||
to a tty, only one iteration is performed and no
|
||||
columns headers are printed. This mode is suitable for
|
||||
scripting.</para>
|
||||
<para><command>systemd-cgtop</command> shows the top control
|
||||
groups of the local Linux control group hierarchy, ordered by
|
||||
their CPU, memory, or disk I/O load. The display is refreshed in
|
||||
regular intervals (by default every 1s), similar in style to
|
||||
<citerefentry project='man-pages'><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
If <command>systemd-cgtop</command> is not connected to a tty,
|
||||
only one iteration is performed and no columns headers are
|
||||
printed. This mode is suitable for scripting.</para>
|
||||
|
||||
<para>Resource usage is only accounted for control
|
||||
groups in the relevant hierarchy, i.e. CPU usage is
|
||||
only accounted for control groups in the
|
||||
<literal>cpuacct</literal> hierarchy, memory usage
|
||||
only for those in <literal>memory</literal> and disk
|
||||
I/O usage for those in <literal>blkio</literal>. If
|
||||
resource monitoring for these resources is required,
|
||||
it is recommended to add the
|
||||
<varname>CPUAccounting=1</varname>,
|
||||
<varname>MemoryAccounting=1</varname> and
|
||||
<varname>BlockIOAccounting=1</varname> settings in the
|
||||
unit files in question. See
|
||||
<citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details.</para>
|
||||
<para>Resource usage is only accounted for control groups in the
|
||||
relevant hierarchy, i.e. CPU usage is only accounted for control
|
||||
groups in the <literal>cpuacct</literal> hierarchy, memory usage
|
||||
only for those in <literal>memory</literal> and disk I/O usage for
|
||||
those in <literal>blkio</literal>. If resource monitoring for
|
||||
these resources is required, it is recommended to add the
|
||||
<varname>CPUAccounting=1</varname>,
|
||||
<varname>MemoryAccounting=1</varname> and
|
||||
<varname>BlockIOAccounting=1</varname> settings in the unit files
|
||||
in question. See
|
||||
<citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details.</para>
|
||||
|
||||
<para>To emphasize this: unless
|
||||
<literal>CPUAccounting=1</literal>,
|
||||
<literal>MemoryAccounting=1</literal> and
|
||||
<literal>BlockIOAccounting=1</literal> are enabled for
|
||||
the services in question, no resource accounting will
|
||||
be available for system services and the data shown by
|
||||
<command>systemd-cgtop</command> will be
|
||||
incomplete.</para>
|
||||
</refsect1>
|
||||
<para>To emphasize this: unless
|
||||
<literal>CPUAccounting=1</literal>,
|
||||
<literal>MemoryAccounting=1</literal> and
|
||||
<literal>BlockIOAccounting=1</literal> are enabled for the
|
||||
services in question, no resource accounting will be available for
|
||||
system services and the data shown by
|
||||
<command>systemd-cgtop</command> will be incomplete.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-p</option></term>
|
||||
|
||||
<listitem><para>Order by control group
|
||||
path name.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Order by control group
|
||||
path name.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-t</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-t</option></term>
|
||||
|
||||
<listitem><para>Order by number of
|
||||
tasks in control
|
||||
group (i.e. threads and processes).</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Order by number of tasks in control group
|
||||
(i.e. threads and processes).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-c</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-c</option></term>
|
||||
|
||||
<listitem><para>Order by CPU load.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Order by CPU load.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-m</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-m</option></term>
|
||||
|
||||
<listitem><para>Order by memory usage.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Order by memory usage.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-i</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-i</option></term>
|
||||
|
||||
<listitem><para>Order by disk I/O load.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Order by disk I/O load.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-b</option></term>
|
||||
<term><option>--batch</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-b</option></term>
|
||||
<term><option>--batch</option></term>
|
||||
|
||||
<listitem><para>Run in "batch" mode:
|
||||
do not accept input and run until the
|
||||
iteration limit set with
|
||||
<option>--iterations</option> is
|
||||
exhausted or until killed. This mode
|
||||
could be useful for sending output
|
||||
from <command>systemd-cgtop</command>
|
||||
to other programs or to a
|
||||
file.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Run in "batch" mode: do not accept input and
|
||||
run until the iteration limit set with
|
||||
<option>--iterations</option> is exhausted or until killed.
|
||||
This mode could be useful for sending output from
|
||||
<command>systemd-cgtop</command> to other programs or to a
|
||||
file.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-n</option></term>
|
||||
<term><option>--iterations=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-n</option></term>
|
||||
<term><option>--iterations=</option></term>
|
||||
|
||||
<listitem><para>Perform only this many
|
||||
iterations.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Perform only this many iterations.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-d</option></term>
|
||||
<term><option>--delay=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-d</option></term>
|
||||
<term><option>--delay=</option></term>
|
||||
|
||||
<listitem><para>Specify refresh delay
|
||||
in seconds (or if one of
|
||||
<literal>ms</literal>,
|
||||
<literal>us</literal>,
|
||||
<literal>min</literal> is specified as
|
||||
unit in this time
|
||||
unit).</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Specify refresh delay in seconds (or if one of
|
||||
<literal>ms</literal>,
|
||||
<literal>us</literal>,
|
||||
<literal>min</literal> is specified as unit in this time
|
||||
unit).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--depth=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--depth=</option></term>
|
||||
|
||||
<listitem><para>Maximum control group
|
||||
tree traversal depth. Specifies how
|
||||
deep <command>systemd-cgtop</command>
|
||||
shall traverse the control group
|
||||
hierarchies. If 0 is specified, only
|
||||
the root group is monitored. For 1,
|
||||
only the first level of control groups
|
||||
is monitored, and so on. Defaults to
|
||||
3.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Maximum control group tree traversal depth.
|
||||
Specifies how deep <command>systemd-cgtop</command> shall
|
||||
traverse the control group hierarchies. If 0 is specified,
|
||||
only the root group is monitored. For 1, only the first level
|
||||
of control groups is monitored, and so on. Defaults to
|
||||
3.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Keys</title>
|
||||
<refsect1>
|
||||
<title>Keys</title>
|
||||
|
||||
<para><command>systemd-cgtop</command> is an
|
||||
interactive tool and may be controlled via user input
|
||||
using the following keys:</para>
|
||||
<para><command>systemd-cgtop</command> is an interactive tool and
|
||||
may be controlled via user input using the following keys:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>h</term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>h</term>
|
||||
|
||||
<listitem><para>Shows a short help text.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Shows a short help text.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>SPACE</term>
|
||||
<varlistentry>
|
||||
<term>SPACE</term>
|
||||
|
||||
<listitem><para>Immediately refresh output.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Immediately refresh output.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>q</term>
|
||||
<varlistentry>
|
||||
<term>q</term>
|
||||
|
||||
<listitem><para>Terminate the program.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Terminate the program.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>p</term>
|
||||
<term>t</term>
|
||||
<term>c</term>
|
||||
<term>m</term>
|
||||
<term>i</term>
|
||||
<varlistentry>
|
||||
<term>p</term>
|
||||
<term>t</term>
|
||||
<term>c</term>
|
||||
<term>m</term>
|
||||
<term>i</term>
|
||||
|
||||
<listitem><para>Sort the control groups
|
||||
by path, number of tasks, CPU load,
|
||||
memory usage, or IO
|
||||
load, respectively.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Sort the control groups by path, number of
|
||||
tasks, CPU load, memory usage, or IO load, respectively.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>%</term>
|
||||
<varlistentry>
|
||||
<term>%</term>
|
||||
|
||||
<listitem><para>Toggle between showing CPU time as
|
||||
time or percentage.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Toggle between showing CPU time as time or
|
||||
percentage.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>+</term>
|
||||
<term>-</term>
|
||||
<varlistentry>
|
||||
<term>+</term>
|
||||
<term>-</term>
|
||||
|
||||
<listitem><para>Increase
|
||||
or decrease refresh
|
||||
delay, respectively.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Increase or decrease refresh delay,
|
||||
respectively.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cgls</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.resource-control</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,199 +21,175 @@
|
||||
-->
|
||||
<refentry id="systemd-cryptsetup-generator" conditional='HAVE_LIBCRYPTSETUP'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-cryptsetup-generator</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-cryptsetup-generator</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-cryptsetup-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-cryptsetup-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-cryptsetup-generator</refname>
|
||||
<refpurpose>Unit generator for <filename>/etc/crypttab</filename></refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-cryptsetup-generator</refname>
|
||||
<refpurpose>Unit generator for <filename>/etc/crypttab</filename></refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-cryptsetup-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-cryptsetup-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-cryptsetup-generator</filename>
|
||||
is a generator that translates
|
||||
<filename>/etc/crypttab</filename> into native systemd
|
||||
units early at boot and when configuration of the
|
||||
system manager is reloaded. This will create
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
units as necessary.</para>
|
||||
<para><filename>systemd-cryptsetup-generator</filename> is a
|
||||
generator that translates <filename>/etc/crypttab</filename> into
|
||||
native systemd units early at boot and when configuration of the
|
||||
system manager is reloaded. This will create
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
units as necessary.</para>
|
||||
|
||||
<para><filename>systemd-cryptsetup-generator</filename>
|
||||
implements the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
|
||||
specification</ulink>.</para>
|
||||
</refsect1>
|
||||
<para><filename>systemd-cryptsetup-generator</filename>
|
||||
implements the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
|
||||
specification</ulink>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
|
||||
<para><filename>systemd-cryptsetup-generator</filename> understands
|
||||
the following kernel command line parameters:</para>
|
||||
<para><filename>systemd-cryptsetup-generator</filename>
|
||||
understands the following kernel command line parameters:</para>
|
||||
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<varlistentry>
|
||||
<term><varname>luks=</varname></term>
|
||||
<term><varname>rd.luks=</varname></term>
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<varlistentry>
|
||||
<term><varname>luks=</varname></term>
|
||||
<term><varname>rd.luks=</varname></term>
|
||||
|
||||
<listitem><para>Takes a boolean
|
||||
argument. Defaults to
|
||||
<literal>yes</literal>. If
|
||||
<literal>no</literal>, disables the
|
||||
generator
|
||||
entirely. <varname>rd.luks=</varname>
|
||||
is honored only by initial RAM disk
|
||||
(initrd) while
|
||||
<varname>luks=</varname> is honored
|
||||
by both the main system and the
|
||||
initrd. </para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a boolean argument. Defaults to
|
||||
<literal>yes</literal>. If <literal>no</literal>, disables the
|
||||
generator entirely. <varname>rd.luks=</varname> is honored
|
||||
only by initial RAM disk (initrd) while
|
||||
<varname>luks=</varname> is honored by both the main system
|
||||
and the initrd. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>luks.crypttab=</varname></term>
|
||||
<term><varname>rd.luks.crypttab=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>luks.crypttab=</varname></term>
|
||||
<term><varname>rd.luks.crypttab=</varname></term>
|
||||
|
||||
<listitem><para>Takes a boolean
|
||||
argument. Defaults to
|
||||
<literal>yes</literal>. If
|
||||
<literal>no</literal>, causes the
|
||||
generator to ignore any devices
|
||||
configured in
|
||||
<filename>/etc/crypttab</filename>
|
||||
(<varname>luks.uuid=</varname> will
|
||||
still work
|
||||
however). <varname>rd.luks.crypttab=</varname>
|
||||
is honored only by initial RAM disk
|
||||
(initrd) while
|
||||
<varname>luks.crypttab=</varname> is
|
||||
honored by both the main system and
|
||||
the initrd. </para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a boolean argument. Defaults to
|
||||
<literal>yes</literal>. If <literal>no</literal>, causes the
|
||||
generator to ignore any devices configured in
|
||||
<filename>/etc/crypttab</filename>
|
||||
(<varname>luks.uuid=</varname> will still work however).
|
||||
<varname>rd.luks.crypttab=</varname> is honored only by
|
||||
initial RAM disk (initrd) while
|
||||
<varname>luks.crypttab=</varname> is honored by both the main
|
||||
system and the initrd. </para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>luks.uuid=</varname></term>
|
||||
<term><varname>rd.luks.uuid=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>luks.uuid=</varname></term>
|
||||
<term><varname>rd.luks.uuid=</varname></term>
|
||||
|
||||
<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/crypttab</filename>. This
|
||||
option may be specified more than once
|
||||
in order to set up multiple
|
||||
devices. <varname>rd.luks.uuid=</varname>
|
||||
is honored only by initial RAM disk
|
||||
(initrd) while
|
||||
<varname>luks.uuid=</varname> is
|
||||
honored by both the main system and
|
||||
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>
|
||||
<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/crypttab</filename>.
|
||||
This option may be specified more than once in order to set up
|
||||
multiple devices. <varname>rd.luks.uuid=</varname> is honored
|
||||
only by initial RAM disk (initrd) while
|
||||
<varname>luks.uuid=</varname> is honored by both the main
|
||||
system and 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>
|
||||
<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>
|
||||
<listitem><para>Takes a LUKS super block UUID followed by an
|
||||
<literal>=</literal> 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>
|
||||
<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>
|
||||
<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>
|
||||
<listitem><para>Takes a LUKS super block UUID followed by an
|
||||
<literal>=</literal> 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
|
||||
<filename>/etc/crypttab</filename>.</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>
|
||||
<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>
|
||||
<listitem><para>Takes a password file name as argument or a
|
||||
LUKS super block UUID followed by a <literal>=</literal> 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>
|
||||
<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>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,67 +21,65 @@
|
||||
-->
|
||||
<refentry id="systemd-cryptsetup@.service" conditional='HAVE_LIBCRYPTSETUP'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-cryptsetup@.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-cryptsetup@.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-cryptsetup@.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-cryptsetup@.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-cryptsetup@.service</refname>
|
||||
<refname>systemd-cryptsetup</refname>
|
||||
<refpurpose>Full disk decryption logic</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-cryptsetup@.service</refname>
|
||||
<refname>systemd-cryptsetup</refname>
|
||||
<refpurpose>Full disk decryption logic</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-cryptsetup@.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-cryptsetup</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-cryptsetup@.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-cryptsetup</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-cryptsetup@.service</filename>
|
||||
is a service responsible for setting up encrypted
|
||||
block devices. It is instantiated for each device that
|
||||
requires decryption for access.</para>
|
||||
<para><filename>systemd-cryptsetup@.service</filename> is a
|
||||
service responsible for setting up encrypted block devices. It is
|
||||
instantiated for each device that requires decryption for
|
||||
access.</para>
|
||||
|
||||
<para><filename>systemd-cryptsetup@.service</filename>
|
||||
will ask for hard disk passwords via the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/PasswordAgents">
|
||||
password agent logic</ulink>, in order to query the
|
||||
user for the password using the right mechanism at
|
||||
boot and during runtime.</para>
|
||||
<para><filename>systemd-cryptsetup@.service</filename> will ask
|
||||
for hard disk passwords via the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/PasswordAgents">
|
||||
password agent logic</ulink>, in order to query the user for the
|
||||
password using the right mechanism at boot and during
|
||||
runtime.</para>
|
||||
|
||||
<para>At early boot and when the system manager
|
||||
configuration is reloaded this
|
||||
<filename>/etc/crypttab</filename> is translated into
|
||||
<filename>systemd-cryptsetup@.service</filename> units
|
||||
by
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
<para>At early boot and when the system manager configuration is
|
||||
reloaded this <filename>/etc/crypttab</filename> is translated
|
||||
into <filename>systemd-cryptsetup@.service</filename> units by
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>crypttab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,78 +21,77 @@
|
||||
-->
|
||||
<refentry id="systemd-debug-generator">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-debug-generator</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-debug-generator</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-debug-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<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>
|
||||
<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>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-debug-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<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><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> option is
|
||||
specified and followed by a unit name, this unit is
|
||||
masked for the runtime, similar 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.</para>
|
||||
<para>If the <option>systemd.mask=</option> option is specified
|
||||
and followed by a unit name, this unit is masked for the runtime,
|
||||
similar 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.</para>
|
||||
|
||||
<para>If the <option>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.</para>
|
||||
<para>If the <option>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.</para>
|
||||
|
||||
<para>If the <option>systemd.debug-shell</option>
|
||||
option is specified, the debug shell service
|
||||
<literal>debug-shell.service</literal> is pulled into
|
||||
the boot transaction. It will spawn a debug shell on
|
||||
tty9 during early system startup. 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.</para>
|
||||
<para>If the <option>systemd.debug-shell</option> option is
|
||||
specified, the debug shell service
|
||||
<literal>debug-shell.service</literal> is pulled into the boot
|
||||
transaction. It will spawn a debug shell on tty9 during early
|
||||
system startup. 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.</para>
|
||||
|
||||
<para><filename>systemd-debug-generator</filename>
|
||||
implements the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
|
||||
specification</ulink>.</para>
|
||||
</refsect1>
|
||||
<para><filename>systemd-debug-generator</filename> implements the
|
||||
<ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
|
||||
specification</ulink>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,195 +22,184 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-delta"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-delta</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-delta</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-delta</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-delta</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-delta</refname>
|
||||
<refpurpose>Find overridden configuration files</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-delta</refname>
|
||||
<refpurpose>Find overridden configuration files</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-delta</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="opt" rep="repeat"><replaceable>PREFIX</replaceable><optional>/<replaceable>SUFFIX</replaceable></optional>|<replaceable>SUFFIX</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-delta</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="opt" rep="repeat"><replaceable>PREFIX</replaceable><optional>/<replaceable>SUFFIX</replaceable></optional>|<replaceable>SUFFIX</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-delta</command> may be used to
|
||||
identify and compare configuration files that override
|
||||
other configuration files. Files in
|
||||
<filename>/etc</filename> have highest priority, files
|
||||
in <filename>/run</filename> have the second highest
|
||||
priority, ..., files in <filename>/lib</filename> have
|
||||
lowest priority. Files in a directory with higher
|
||||
priority override files with the same name in
|
||||
directories of lower priority. In addition, certain
|
||||
configuration files can have <literal>.d</literal>
|
||||
directories which contain "drop-in" files with
|
||||
configuration snippets which augment the main
|
||||
configuration file. "Drop-in" files can be overriden
|
||||
in the same way by placing files with the same name in
|
||||
a directory of higher priority (except that in case of
|
||||
"drop-in" files, both the "drop-in" file name and the
|
||||
name of the containing directory, which corresponds to
|
||||
the name of the main configuration file, must match).
|
||||
For a fuller explanation, see
|
||||
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
||||
</para>
|
||||
<para><command>systemd-delta</command> may be used to identify and
|
||||
compare configuration files that override other configuration
|
||||
files. Files in <filename>/etc</filename> have highest priority,
|
||||
files in <filename>/run</filename> have the second highest
|
||||
priority, ..., files in <filename>/lib</filename> have lowest
|
||||
priority. Files in a directory with higher priority override files
|
||||
with the same name in directories of lower priority. In addition,
|
||||
certain configuration files can have <literal>.d</literal>
|
||||
directories which contain "drop-in" files with configuration
|
||||
snippets which augment the main configuration file. "Drop-in"
|
||||
files can be overriden in the same way by placing files with the
|
||||
same name in a directory of higher priority (except that in case
|
||||
of "drop-in" files, both the "drop-in" file name and the name of
|
||||
the containing directory, which corresponds to the name of the
|
||||
main configuration file, must match). For a fuller explanation,
|
||||
see
|
||||
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
||||
</para>
|
||||
|
||||
<para>The command line argument will be split into a
|
||||
prefix and a suffix. Either is optional. The prefix
|
||||
must be one of the directories containing
|
||||
configuration files (<filename>/etc</filename>,
|
||||
<filename>/run</filename>,
|
||||
<filename>/usr/lib</filename>, ...). If it is given,
|
||||
only overriding files contained in this directory will
|
||||
be shown. Otherwise, all overriding files will be
|
||||
shown. The suffix must be a name of a subdirectory
|
||||
containing configuration files like
|
||||
<filename>tmpfiles.d</filename>,
|
||||
<filename>sysctl.d</filename> or
|
||||
<filename>systemd/system</filename>. If it is given,
|
||||
only configuration files in this subdirectory (across
|
||||
all configuration paths) will be analyzed. Otherwise,
|
||||
all configuration files will be analyzed. If the
|
||||
command line argument is not given at all, all
|
||||
configuration files will be analyzed. See below for
|
||||
some examples.</para>
|
||||
</refsect1>
|
||||
<para>The command line argument will be split into a prefix and a
|
||||
suffix. Either is optional. The prefix must be one of the
|
||||
directories containing configuration files
|
||||
(<filename>/etc</filename>, <filename>/run</filename>,
|
||||
<filename>/usr/lib</filename>, ...). If it is given, only
|
||||
overriding files contained in this directory will be shown.
|
||||
Otherwise, all overriding files will be shown. The suffix must be
|
||||
a name of a subdirectory containing configuration files like
|
||||
<filename>tmpfiles.d</filename>, <filename>sysctl.d</filename> or
|
||||
<filename>systemd/system</filename>. If it is given, only
|
||||
configuration files in this subdirectory (across all configuration
|
||||
paths) will be analyzed. Otherwise, all configuration files will
|
||||
be analyzed. If the command line argument is not given at all, all
|
||||
configuration files will be analyzed. See below for some
|
||||
examples.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-t</option></term>
|
||||
<term><option>--type=</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-t</option></term>
|
||||
<term><option>--type=</option></term>
|
||||
|
||||
<listitem><para>When listing the
|
||||
differences, only list those that are
|
||||
asked for. The list itself is a
|
||||
comma-separated list of desired
|
||||
difference types.</para>
|
||||
<listitem><para>When listing the differences, only list those
|
||||
that are asked for. The list itself is a comma-separated list
|
||||
of desired difference types.</para>
|
||||
|
||||
<para>Recognized types are:
|
||||
<para>Recognized types are:
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><varname>masked</varname></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><varname>masked</varname></term>
|
||||
|
||||
<listitem><para>Show masked files</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Show masked files</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>equivalent</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>equivalent</varname></term>
|
||||
|
||||
<listitem><para>Show overridden
|
||||
files that while overridden, do
|
||||
not differ in content.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Show overridden files that while
|
||||
overridden, do not differ in content.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>redirected</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>redirected</varname></term>
|
||||
|
||||
<listitem><para>Show files that
|
||||
are redirected to another.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Show files that are redirected to
|
||||
another.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>overridden</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>overridden</varname></term>
|
||||
|
||||
<listitem><para>Show overridden,
|
||||
and changed files.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Show overridden, and changed
|
||||
files.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>extended</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>extended</varname></term>
|
||||
|
||||
<listitem><para>Show *.conf files in drop-in
|
||||
directories for units.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Show <filename>*.conf</filename> files
|
||||
in drop-in directories for units.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>unchanged</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>unchanged</varname></term>
|
||||
|
||||
<listitem><para>Show unmodified
|
||||
files too.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Show unmodified files
|
||||
too.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--diff=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--diff=</option></term>
|
||||
|
||||
<listitem><para>When showing modified
|
||||
files, when a file is overridden show a
|
||||
diff as well. This option takes a
|
||||
boolean argument. If omitted, it defaults
|
||||
to <option>true</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>When showing modified files, when a file is
|
||||
overridden show a diff as well. This option takes a boolean
|
||||
argument. If omitted, it defaults to
|
||||
<option>true</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
<xi:include href="standard-options.xml" xpointer="no-pager" />
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<para>To see all local configuration:</para>
|
||||
<programlisting>systemd-delta</programlisting>
|
||||
<para>To see all local configuration:</para>
|
||||
<programlisting>systemd-delta</programlisting>
|
||||
|
||||
<para>To see all runtime configuration:</para>
|
||||
<programlisting>systemd-delta /run</programlisting>
|
||||
<para>To see all runtime configuration:</para>
|
||||
<programlisting>systemd-delta /run</programlisting>
|
||||
|
||||
<para>To see all system unit configuration changes:</para>
|
||||
<programlisting>systemd-delta systemd/system</programlisting>
|
||||
<para>To see all system unit configuration changes:</para>
|
||||
<programlisting>systemd-delta systemd/system</programlisting>
|
||||
|
||||
<para>To see all runtime "drop-in" changes for system units:</para>
|
||||
<programlisting>systemd-delta --type=extended /run/systemd/system</programlisting>
|
||||
</refsect1>
|
||||
<para>To see all runtime "drop-in" changes for system units:</para>
|
||||
<programlisting>systemd-delta --type=extended /run/systemd/system</programlisting>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.unit</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,210 +22,202 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-detect-virt"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-detect-virt</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-detect-virt</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-detect-virt</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-detect-virt</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-detect-virt</refname>
|
||||
<refpurpose>Detect execution in a virtualized environment</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-detect-virt</refname>
|
||||
<refpurpose>Detect execution in a virtualized environment</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-detect-virt <arg choice="opt" rep="repeat">OPTIONS</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-detect-virt <arg choice="opt" rep="repeat">OPTIONS</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-detect-virt</command> detects
|
||||
execution in a virtualized environment. It identifies
|
||||
the virtualization technology and can distinguish full
|
||||
VM virtualization from container
|
||||
virtualization. <filename>systemd-detect-virt</filename>
|
||||
exits with a return value of 0 (success) if a
|
||||
virtualization technology is detected, and non-zero
|
||||
(error) otherwise. By default any type of
|
||||
virtualization is detected, and the options
|
||||
<option>--container</option> and <option>--vm</option>
|
||||
can be used to limit what types of virtualization are
|
||||
detected.</para>
|
||||
<para><command>systemd-detect-virt</command> detects execution in
|
||||
a virtualized environment. It identifies the virtualization
|
||||
technology and can distinguish full VM virtualization from
|
||||
container virtualization. <filename>systemd-detect-virt</filename>
|
||||
exits with a return value of 0 (success) if a virtualization
|
||||
technology is detected, and non-zero (error) otherwise. By default
|
||||
any type of virtualization is detected, and the options
|
||||
<option>--container</option> and <option>--vm</option> can be used
|
||||
to limit what types of virtualization are detected.</para>
|
||||
|
||||
<para>When executed without <option>--quiet</option>
|
||||
will print a short identifier for the detected
|
||||
virtualization technology. The following technologies
|
||||
are currently identified:</para>
|
||||
<para>When executed without <option>--quiet</option> will print a
|
||||
short identifier for the detected virtualization technology. The
|
||||
following technologies are currently identified:</para>
|
||||
|
||||
<table>
|
||||
<title>Known virtualization technologies (both
|
||||
VM, i.e. full hardware virtualization,
|
||||
and container, i.e. shared kernel virtualization)</title>
|
||||
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
|
||||
<colspec colname="type" />
|
||||
<colspec colname="id" />
|
||||
<colspec colname="product" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Type</entry>
|
||||
<entry>ID</entry>
|
||||
<entry>Product</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry morerows="8">VM</entry>
|
||||
<entry><varname>qemu</varname></entry>
|
||||
<entry>QEMU software virtualization</entry>
|
||||
</row>
|
||||
<table>
|
||||
<title>Known virtualization technologies (both
|
||||
VM, i.e. full hardware virtualization,
|
||||
and container, i.e. shared kernel virtualization)</title>
|
||||
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
|
||||
<colspec colname="type" />
|
||||
<colspec colname="id" />
|
||||
<colspec colname="product" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Type</entry>
|
||||
<entry>ID</entry>
|
||||
<entry>Product</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry morerows="8">VM</entry>
|
||||
<entry><varname>qemu</varname></entry>
|
||||
<entry>QEMU software virtualization</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>kvm</varname></entry>
|
||||
<entry>Linux KVM kernel virtual machine</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>kvm</varname></entry>
|
||||
<entry>Linux KVM kernel virtual machine</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>zvm</varname></entry>
|
||||
<entry>s390 z/VM</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>zvm</varname></entry>
|
||||
<entry>s390 z/VM</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>vmware</varname></entry>
|
||||
<entry>VMware Workstation or Server, and related products</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>vmware</varname></entry>
|
||||
<entry>VMware Workstation or Server, and related products</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>microsoft</varname></entry>
|
||||
<entry>Hyper-V, also known as Viridian or Windows Server Virtualization</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>microsoft</varname></entry>
|
||||
<entry>Hyper-V, also known as Viridian or Windows Server Virtualization</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>oracle</varname></entry>
|
||||
<entry>Oracle VM VirtualBox (historically marketed by innotek and Sun Microsystems)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>oracle</varname></entry>
|
||||
<entry>Oracle VM VirtualBox (historically marketed by innotek and Sun Microsystems)</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>xen</varname></entry>
|
||||
<entry>Xen hypervisor (only domU, not dom0)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>xen</varname></entry>
|
||||
<entry>Xen hypervisor (only domU, not dom0)</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>bochs</varname></entry>
|
||||
<entry>Bochs Emulator</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>bochs</varname></entry>
|
||||
<entry>Bochs Emulator</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>uml</varname></entry>
|
||||
<entry>User-mode Linux</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>uml</varname></entry>
|
||||
<entry>User-mode Linux</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry morerows="5">container</entry>
|
||||
<entry><varname>openvz</varname></entry>
|
||||
<entry>OpenVZ/Virtuozzo</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry morerows="5">container</entry>
|
||||
<entry><varname>openvz</varname></entry>
|
||||
<entry>OpenVZ/Virtuozzo</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>lxc</varname></entry>
|
||||
<entry>Linux container implementation by LXC</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>lxc</varname></entry>
|
||||
<entry>Linux container implementation by LXC</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>lxc-libvirt</varname></entry>
|
||||
<entry>Linux container implementation by libvirt</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>lxc-libvirt</varname></entry>
|
||||
<entry>Linux container implementation by libvirt</entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>systemd-nspawn</varname></entry>
|
||||
<entry>systemd's minimal container implementation, see <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><varname>systemd-nspawn</varname></entry>
|
||||
<entry>systemd's minimal container implementation, see <citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry></entry>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry><varname>docker</varname></entry>
|
||||
<entry>Docker container manager</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</table>
|
||||
<row>
|
||||
<entry><varname>docker</varname></entry>
|
||||
<entry>Docker container manager</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</table>
|
||||
|
||||
<para>If multiple virtualization solutions are used,
|
||||
only the "innermost" is detected and identified. That
|
||||
means if both VM virtualization and container
|
||||
virtualization are used in conjunction, only the latter
|
||||
will be identified (unless <option>--vm</option> is
|
||||
passed).</para>
|
||||
</refsect1>
|
||||
<para>If multiple virtualization solutions are used, only the
|
||||
"innermost" is detected and identified. That means if both VM
|
||||
virtualization and container virtualization are used in
|
||||
conjunction, only the latter will be identified (unless
|
||||
<option>--vm</option> is passed).</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-c</option></term>
|
||||
<term><option>--container</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-c</option></term>
|
||||
<term><option>--container</option></term>
|
||||
|
||||
<listitem><para>Only detects container
|
||||
virtualization (i.e. shared kernel
|
||||
virtualization).</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Only detects container virtualization (i.e.
|
||||
shared kernel virtualization).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-v</option></term>
|
||||
<term><option>--vm</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-v</option></term>
|
||||
<term><option>--vm</option></term>
|
||||
|
||||
<listitem><para>Only detects VM
|
||||
virtualization (i.e. full hardware
|
||||
virtualization).</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Only detects VM virtualization (i.e. full
|
||||
hardware virtualization).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-q</option></term>
|
||||
<term><option>--quiet</option></term>
|
||||
<varlistentry>
|
||||
<term><option>-q</option></term>
|
||||
<term><option>--quiet</option></term>
|
||||
|
||||
<listitem><para>Suppress output of the
|
||||
virtualization technology
|
||||
identifier.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Suppress output of the virtualization
|
||||
technology identifier.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>If a virtualization technology is detected, 0 is
|
||||
returned, a non-zero code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>If a virtualization technology is detected, 0 is returned, a
|
||||
non-zero code otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-nspawn</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,68 +21,68 @@
|
||||
-->
|
||||
<refentry id="systemd-efi-boot-generator">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-efi-boot-generator</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-efi-boot-generator</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-efi-boot-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-efi-boot-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-efi-boot-generator</refname>
|
||||
<refpurpose>Generator for automatically mounting the
|
||||
EFI System Partition used by the current boot to
|
||||
<filename>/boot</filename></refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-efi-boot-generator</refname>
|
||||
<refpurpose>Generator for automatically mounting the
|
||||
EFI System Partition used by the current boot to
|
||||
<filename>/boot</filename></refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-efi-boot-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-efi-boot-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-efi-boot-generator</filename>
|
||||
is a generator that automatically creates mount and
|
||||
automount units for the EFI System Partition (ESP),
|
||||
mounting it to <filename>/boot</filename>. Note that
|
||||
this generator will execute no operation on non-EFI
|
||||
systems, on systems where the boot loader does not
|
||||
communicate the used ESP to the OS, on systems where
|
||||
<filename>/boot</filename> is an explicitly configured
|
||||
mount (for example, listed in <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>) or where the <filename>/boot</filename> mount
|
||||
point is non-empty. Since this generator creates an
|
||||
automount unit, the mount will only be activated
|
||||
on-demand, when accessed.</para>
|
||||
<para><filename>systemd-efi-boot-generator</filename> is a
|
||||
generator that automatically creates mount and automount units for
|
||||
the EFI System Partition (ESP), mounting it to
|
||||
<filename>/boot</filename>. Note that this generator will execute
|
||||
no operation on non-EFI systems, on systems where the boot loader
|
||||
does not communicate the used ESP to the OS, on systems where
|
||||
<filename>/boot</filename> is an explicitly configured mount (for
|
||||
example, listed in
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>)
|
||||
or where the <filename>/boot</filename> mount point is non-empty.
|
||||
Since this generator creates an automount unit, the mount will
|
||||
only be activated on-demand, when accessed.</para>
|
||||
|
||||
<para><filename>systemd-efi-boot-generator</filename>
|
||||
implements the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
|
||||
specification</ulink>.</para>
|
||||
</refsect1>
|
||||
<para><filename>systemd-efi-boot-generator</filename> implements
|
||||
the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
|
||||
specification</ulink>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>gummiboot</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.automount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-gpt-auto-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>gummiboot</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,172 +22,157 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-escape"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-escape</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-escape</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-escape</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-escape</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-escape</refname>
|
||||
<refpurpose>Escape strings for usage in system unit names</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-escape</refname>
|
||||
<refpurpose>Escape strings for usage in system unit names</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-escape <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="opt" rep="repeat">STRING</arg></command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-escape</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
<arg choice="opt" rep="repeat">STRING</arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-escape</command> may be used to
|
||||
escape strings for inclusion in systemd unit
|
||||
names. The command may be used to escape and to undo
|
||||
escaping of strings.</para>
|
||||
<para><command>systemd-escape</command> may be used to escape
|
||||
strings for inclusion in systemd unit names. The command may be
|
||||
used to escape and to undo escaping of strings.</para>
|
||||
|
||||
<para>The command takes any number of strings on the
|
||||
command line, and will process them individually, one
|
||||
after the other. It will output them separated by
|
||||
spaces to stdout.</para>
|
||||
<para>The command takes any number of strings on the command line,
|
||||
and will process them individually, one after the other. It will
|
||||
output them separated by spaces to stdout.</para>
|
||||
|
||||
<para>By default this command will escape the strings
|
||||
passed, unless <option>--unescape</option> is passed
|
||||
which results in the inverse operation being
|
||||
applied. If <option>--mangle</option> a special mode
|
||||
of escaping is applied instead, which assumes a string
|
||||
to be already escaped but will escape everything that
|
||||
appears obviously non-escaped.</para>
|
||||
</refsect1>
|
||||
<para>By default this command will escape the strings passed,
|
||||
unless <option>--unescape</option> is passed which results in the
|
||||
inverse operation being applied. If <option>--mangle</option> a
|
||||
special mode of escaping is applied instead, which assumes a
|
||||
string to be already escaped but will escape everything that
|
||||
appears obviously non-escaped.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--suffix=</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--suffix=</option></term>
|
||||
|
||||
<listitem><para>Appends the specified
|
||||
unit type suffix to the escaped
|
||||
string. Takes one of the unit types
|
||||
supported by systemd, such as
|
||||
<literal>.service</literal> or
|
||||
<literal>.mount</literal>. May not be
|
||||
used in conjunction with
|
||||
<option>--template=</option>,
|
||||
<option>--unescape</option> or
|
||||
<option>--mangle</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Appends the specified unit type suffix to the
|
||||
escaped string. Takes one of the unit types supported by
|
||||
systemd, such as <literal>.service</literal> or
|
||||
<literal>.mount</literal>. May not be used in conjunction with
|
||||
<option>--template=</option>, <option>--unescape</option> or
|
||||
<option>--mangle</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--template=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--template=</option></term>
|
||||
|
||||
<listitem><para>Inserts the escaped
|
||||
strings in a unit name template. Takes
|
||||
a unit name template such as
|
||||
<filename>foobar@.service</filename>
|
||||
May not be used in conjunction with
|
||||
<option>--suffix=</option>,
|
||||
<option>--unescape</option> or
|
||||
<option>--mangle</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Inserts the escaped strings in a unit name
|
||||
template. Takes a unit name template such as
|
||||
<filename>foobar@.service</filename> May not be used in
|
||||
conjunction with <option>--suffix=</option>,
|
||||
<option>--unescape</option> or
|
||||
<option>--mangle</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--path</option></term>
|
||||
<term><option>-p</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--path</option></term>
|
||||
<term><option>-p</option></term>
|
||||
|
||||
<listitem><para>When escaping or
|
||||
unescaping a string, assume it refers
|
||||
to a file system path. This enables
|
||||
special processing of the initial
|
||||
<literal>/</literal> of the
|
||||
path.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>When escaping or unescaping a string, assume
|
||||
it refers to a file system path. This enables special
|
||||
processing of the initial <literal>/</literal> of the
|
||||
path.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--unescape</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--unescape</option></term>
|
||||
|
||||
<listitem><para>Instead of escaping
|
||||
the specified strings, undo the
|
||||
escaping, reversing the operation. May
|
||||
not be used in conjunction with
|
||||
<option>--suffix=</option>,
|
||||
<option>--template=</option> or
|
||||
<option>--mangle</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Instead of escaping the specified strings,
|
||||
undo the escaping, reversing the operation. May not be used in
|
||||
conjunction with <option>--suffix=</option>,
|
||||
<option>--template=</option> or
|
||||
<option>--mangle</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--mangle</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--mangle</option></term>
|
||||
|
||||
<listitem><para>Like
|
||||
<option>--escape</option>, but only
|
||||
escape characters that are obviously
|
||||
not escaped yet, and possibly
|
||||
automatically append an appropriate
|
||||
unit type suffix to the string. May
|
||||
not be used in conjunction with
|
||||
<option>--suffix=</option>,
|
||||
<option>--template=</option> or
|
||||
<option>--unescape</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Like <option>--escape</option>, but only
|
||||
escape characters that are obviously not escaped yet, and
|
||||
possibly automatically append an appropriate unit type suffix
|
||||
to the string. May not be used in conjunction with
|
||||
<option>--suffix=</option>, <option>--template=</option> or
|
||||
<option>--unescape</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
<para>Escape a single string:</para>
|
||||
<programlisting>$ systemd-escape 'Hallöchen, Meister'
|
||||
<para>Escape a single string:</para>
|
||||
<programlisting>$ systemd-escape 'Hallöchen, Meister'
|
||||
Hall\xc3\xb6chen\x2c\x20Meister</programlisting>
|
||||
|
||||
<para>To undo escaping on a single string:</para>
|
||||
<programlisting>$ systemd-escape -u 'Hall\xc3\xb6chen\x2c\x20Meister'
|
||||
<para>To undo escaping on a single string:</para>
|
||||
<programlisting>$ systemd-escape -u 'Hall\xc3\xb6chen\x2c\x20Meister'
|
||||
Hallöchen, Meister</programlisting>
|
||||
|
||||
<para>To generate the mount unit for a path:</para>
|
||||
<programlisting>$ systemd-escape -p --suffix=mount "/tmp//waldi/foobar/"
|
||||
<para>To generate the mount unit for a path:</para>
|
||||
<programlisting>$ systemd-escape -p --suffix=mount "/tmp//waldi/foobar/"
|
||||
tmp-waldi-foobar.mount</programlisting>
|
||||
|
||||
<para>To generate instance names of three strings</para>
|
||||
<programlisting>$ systemd-escape --template=systemd-nspawn@.service 'My Container 1' 'containerb' 'container/III'
|
||||
<para>To generate instance names of three strings</para>
|
||||
<programlisting>$ systemd-escape --template=systemd-nspawn@.service 'My Container 1' 'containerb' 'container/III'
|
||||
systemd-nspawn@My\x20Container\x201.service systemd-nspawn@containerb.service systemd-nspawn@container-III.service</programlisting>
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,265 +22,238 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-firstboot"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-firstboot</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-firstboot</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-firstboot</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-firstboot</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-firstboot</refname>
|
||||
<refname>systemd-firstboot.service</refname>
|
||||
<refpurpose>Initialize basic system settings on or before the first boot-up of a system</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-firstboot</refname>
|
||||
<refname>systemd-firstboot.service</refname>
|
||||
<refpurpose>Initialize basic system settings on or before the first boot-up of a system</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-firstboot</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
</cmdsynopsis>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-firstboot</command>
|
||||
<arg choice="opt" rep="repeat">OPTIONS</arg>
|
||||
</cmdsynopsis>
|
||||
|
||||
<para><filename>systemd-firstboot.service</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<para><filename>systemd-firstboot.service</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-firstboot</command> initializes
|
||||
the most basic system settings interactively on the
|
||||
first boot, or optionally non-interactively when a
|
||||
system image is created. The following settings may be
|
||||
set up:</para>
|
||||
<para><command>systemd-firstboot</command> initializes the most
|
||||
basic system settings interactively on the first boot, or
|
||||
optionally non-interactively when a system image is created. The
|
||||
following settings may be set up:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>The system locale, more
|
||||
specifically the two locale variables
|
||||
<varname>LANG=</varname> and
|
||||
<varname>LC_MESSAGES</varname></para></listitem>
|
||||
<itemizedlist>
|
||||
<listitem><para>The system locale, more specifically the two
|
||||
locale variables <varname>LANG=</varname> and
|
||||
<varname>LC_MESSAGES</varname></para></listitem>
|
||||
|
||||
<listitem><para>The system time zone</para></listitem>
|
||||
<listitem><para>The system time zone</para></listitem>
|
||||
|
||||
<listitem><para>The system host name</para></listitem>
|
||||
<listitem><para>The system host name</para></listitem>
|
||||
|
||||
<listitem><para>The machine ID of the system</para></listitem>
|
||||
<listitem><para>The machine ID of the system</para></listitem>
|
||||
|
||||
<listitem><para>The root user's password</para></listitem>
|
||||
</itemizedlist>
|
||||
<listitem><para>The root user's password</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>Each of the fields may either be queried
|
||||
interactively from the users, set non-interactively on
|
||||
the tool's command line, or be copied from a host
|
||||
system that is used to set up the system image.</para>
|
||||
<para>Each of the fields may either be queried interactively from
|
||||
the users, set non-interactively on the tool's command line, or be
|
||||
copied from a host system that is used to set up the system
|
||||
image.</para>
|
||||
|
||||
<para>If a setting is already initialized it will not
|
||||
be overwritten and the user will not be prompted for
|
||||
the setting.</para>
|
||||
<para>If a setting is already initialized it will not be
|
||||
overwritten and the user will not be prompted for the
|
||||
setting.</para>
|
||||
|
||||
<para>Note that this tool operates directly on the
|
||||
file system and does not involve any running system
|
||||
services, unlike
|
||||
<citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
or
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>. This
|
||||
allows <command>systemd-firstboot</command> to operate
|
||||
on mounted but not booted disk images and in early
|
||||
boot. It is not recommended to use
|
||||
<command>systemd-firstboot</command> on the running
|
||||
system while it is up.</para>
|
||||
</refsect1>
|
||||
<para>Note that this tool operates directly on the file system and
|
||||
does not involve any running system services, unlike
|
||||
<citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
or
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
|
||||
This allows <command>systemd-firstboot</command> to operate on
|
||||
mounted but not booted disk images and in early boot. It is not
|
||||
recommended to use <command>systemd-firstboot</command> on the
|
||||
running system while it is up.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--root=<replaceable>root</replaceable></option></term>
|
||||
<listitem><para>Takes a directory path
|
||||
as an argument. All paths will be
|
||||
prefixed with the given alternate
|
||||
<replaceable>root</replaceable> path,
|
||||
including config search paths. This is
|
||||
useful to operate on a system image
|
||||
mounted to the specified directory
|
||||
instead of the host system itself.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--root=<replaceable>root</replaceable></option></term>
|
||||
<listitem><para>Takes a directory path as an argument. All
|
||||
paths will be prefixed with the given alternate
|
||||
<replaceable>root</replaceable> path, including config search
|
||||
paths. This is useful to operate on a system image mounted to
|
||||
the specified directory instead of the host system itself.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--locale=<replaceable>LOCALE</replaceable></option></term>
|
||||
<term><option>--locale-messages=<replaceable>LOCALE</replaceable></option></term>
|
||||
<varlistentry>
|
||||
<term><option>--locale=<replaceable>LOCALE</replaceable></option></term>
|
||||
<term><option>--locale-messages=<replaceable>LOCALE</replaceable></option></term>
|
||||
|
||||
<listitem><para>Sets the system
|
||||
locale, more specifically the
|
||||
<varname>LANG=</varname> and
|
||||
<varname>LC_MESSAGES</varname>
|
||||
settings. The argument should be a
|
||||
valid locale identifier, such as
|
||||
<literal>de_DE.UTF-8</literal>. This
|
||||
controls the
|
||||
<citerefentry><refentrytitle>locale.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
configuration file.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Sets the system locale, more specifically the
|
||||
<varname>LANG=</varname> and <varname>LC_MESSAGES</varname>
|
||||
settings. The argument should be a valid locale identifier,
|
||||
such as <literal>de_DE.UTF-8</literal>. This controls the
|
||||
<citerefentry><refentrytitle>locale.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
configuration file.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--timezone=<replaceable>TIMEZONE</replaceable></option></term>
|
||||
<varlistentry>
|
||||
<term><option>--timezone=<replaceable>TIMEZONE</replaceable></option></term>
|
||||
|
||||
<listitem><para>Sets the system time
|
||||
zone. The argument should be a valid
|
||||
time zone identifier, such as
|
||||
<literal>Europe/Berlin</literal>. This
|
||||
controls the
|
||||
<citerefentry><refentrytitle>localtime</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
symlink.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Sets the system time zone. The argument should
|
||||
be a valid time zone identifier, such as
|
||||
<literal>Europe/Berlin</literal>. This controls the
|
||||
<citerefentry><refentrytitle>localtime</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
symlink.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--hostname=<replaceable>HOSTNAME</replaceable></option></term>
|
||||
<varlistentry>
|
||||
<term><option>--hostname=<replaceable>HOSTNAME</replaceable></option></term>
|
||||
|
||||
<listitem><para>Sets the system
|
||||
hostname. The argument should be a
|
||||
host name, compatible with DNS. This
|
||||
controls the
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
configuration file.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Sets the system hostname. The argument should
|
||||
be a host name, compatible with DNS. This controls the
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
configuration file.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--machine-id=<replaceable>ID</replaceable></option></term>
|
||||
<varlistentry>
|
||||
<term><option>--machine-id=<replaceable>ID</replaceable></option></term>
|
||||
|
||||
<listitem><para>Sets the system's machine ID. This
|
||||
controls the
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
file.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Sets the system's machine ID. This controls
|
||||
the
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
file.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--root-password=<replaceable>PASSWORD</replaceable></option></term>
|
||||
<term><option>--root-password-file=<replaceable>PATH</replaceable></option></term>
|
||||
<varlistentry>
|
||||
<term><option>--root-password=<replaceable>PASSWORD</replaceable></option></term>
|
||||
<term><option>--root-password-file=<replaceable>PATH</replaceable></option></term>
|
||||
|
||||
<listitem><para>Sets the password of
|
||||
the system's root user. This creates a
|
||||
<citerefentry><refentrytitle>shadow</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
file. This setting exists in two
|
||||
forms:
|
||||
<option>--root-password=</option>
|
||||
accepts the password to set directly
|
||||
on the command line,
|
||||
<option>--root-password-file=</option>
|
||||
reads it from a file. Note that
|
||||
it is not recommended specifying
|
||||
passwords on the command line as other
|
||||
users might be able to see them
|
||||
simply by invoking
|
||||
<citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Sets the password of the system's root user.
|
||||
This creates a
|
||||
<citerefentry><refentrytitle>shadow</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
file. This setting exists in two forms:
|
||||
<option>--root-password=</option> accepts the password to set
|
||||
directly on the command line,
|
||||
<option>--root-password-file=</option> reads it from a file.
|
||||
Note that it is not recommended specifying passwords on the
|
||||
command line as other users might be able to see them simply
|
||||
by invoking
|
||||
<citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--prompt-locale</option></term>
|
||||
<term><option>--prompt-timezone</option></term>
|
||||
<term><option>--prompt-hostname</option></term>
|
||||
<term><option>--prompt-root-password</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--prompt-locale</option></term>
|
||||
<term><option>--prompt-timezone</option></term>
|
||||
<term><option>--prompt-hostname</option></term>
|
||||
<term><option>--prompt-root-password</option></term>
|
||||
|
||||
<para>Prompt the user interactively
|
||||
for a specific basic setting. Note
|
||||
that any explicit configuration
|
||||
settings specified on the command line
|
||||
take precedence, and the user is not
|
||||
prompted for it.</para>
|
||||
</varlistentry>
|
||||
<listitem><para>Prompt the user interactively for a specific
|
||||
basic setting. Note that any explicit configuration settings
|
||||
specified on the command line take precedence, and the user is
|
||||
not prompted for it.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--prompt</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--prompt</option></term>
|
||||
|
||||
<para>Query the user for locale,
|
||||
timezone, hostname and root
|
||||
password. This is equivalent to
|
||||
specifying
|
||||
<option>--prompt-locale</option>,
|
||||
<option>--prompt-timezone</option>,
|
||||
<option>--prompt-hostname</option>,
|
||||
<option>--prompt-root-password</option>
|
||||
in combination.</para>
|
||||
</varlistentry>
|
||||
<listitem><para>Query the user for locale, timezone, hostname
|
||||
and root password. This is equivalent to specifying
|
||||
<option>--prompt-locale</option>,
|
||||
<option>--prompt-timezone</option>,
|
||||
<option>--prompt-hostname</option>,
|
||||
<option>--prompt-root-password</option> in combination.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--copy-locale</option></term>
|
||||
<term><option>--copy-timezone</option></term>
|
||||
<term><option>--copy-root-password</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--copy-locale</option></term>
|
||||
<term><option>--copy-timezone</option></term>
|
||||
<term><option>--copy-root-password</option></term>
|
||||
|
||||
<para>Copy a specific basic setting
|
||||
from the host. This only works in
|
||||
combination with
|
||||
<option>--root=</option> (see
|
||||
above).</para>
|
||||
</varlistentry>
|
||||
<listitem><para>Copy a specific basic setting from the host.
|
||||
This only works in combination with <option>--root=</option>
|
||||
(see above).</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--copy</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--copy</option></term>
|
||||
|
||||
<para>Copy locale, time zone and root
|
||||
password from the host. This is
|
||||
equivalent to specifying
|
||||
<option>--copy-locale</option>,
|
||||
<option>--copy-timezone</option>,
|
||||
<option>--copy-root-password</option>
|
||||
in combination.</para>
|
||||
</varlistentry>
|
||||
<listitem><para>Copy locale, time zone and root password from
|
||||
the host. This is equivalent to specifying
|
||||
<option>--copy-locale</option>,
|
||||
<option>--copy-timezone</option>,
|
||||
<option>--copy-root-password</option> in combination.</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--setup-machine-id</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--setup-machine-id</option></term>
|
||||
|
||||
<para>Initialize the system's machine
|
||||
ID to a random ID. This only works in
|
||||
combination with
|
||||
<option>--root=</option>.</para>
|
||||
</varlistentry>
|
||||
<listitem><para>Initialize the system's machine ID to a random
|
||||
ID. This only works in combination with
|
||||
<option>--root=</option>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>locale.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>localtime</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>shadow</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>locale.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>localtime</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>shadow</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>timedatectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,137 +21,121 @@
|
||||
-->
|
||||
<refentry id="systemd-fsck@.service">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-fsck@.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-fsck@.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-fsck@.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-fsck@.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-fsck@.service</refname>
|
||||
<refname>systemd-fsck-root.service</refname>
|
||||
<refname>systemd-fsck</refname>
|
||||
<refpurpose>File system checker logic</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-fsck@.service</refname>
|
||||
<refname>systemd-fsck-root.service</refname>
|
||||
<refname>systemd-fsck</refname>
|
||||
<refpurpose>File system checker logic</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-fsck@.service</filename></para>
|
||||
<para><filename>systemd-fsck-root.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-fsck</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-fsck@.service</filename></para>
|
||||
<para><filename>systemd-fsck-root.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-fsck</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-fsck@.service</filename> and
|
||||
<filename>systemd-fsck-root.service</filename> are
|
||||
services responsible for file system checks. They are
|
||||
instantiated for each device that is configured for
|
||||
file system checking.
|
||||
<filename>systemd-fsck-root.service</filename> is
|
||||
responsible for file system checks on the root file
|
||||
system, but in only if the root filesystem wasn't
|
||||
checked in the initramfs.
|
||||
<filename>systemd-fsck@.service</filename> is used for
|
||||
all other file systems and for the root file system in
|
||||
the initramfs.</para>
|
||||
<para><filename>systemd-fsck@.service</filename> and
|
||||
<filename>systemd-fsck-root.service</filename> are services
|
||||
responsible for file system checks. They are instantiated for each
|
||||
device that is configured for file system checking.
|
||||
<filename>systemd-fsck-root.service</filename> is responsible for
|
||||
file system checks on the root file system, but in only if the
|
||||
root filesystem wasn't checked in the initramfs.
|
||||
<filename>systemd-fsck@.service</filename> is used for all other
|
||||
file systems and for the root file system in the initramfs.</para>
|
||||
|
||||
<para>Those services are started at boot if
|
||||
<option>passno</option> in
|
||||
<filename>/etc/fstab</filename> for the file system is
|
||||
set to a value greater than zero. The file system
|
||||
check for root is performed before the other file
|
||||
systems. Other file systems may be checked in
|
||||
parallel, except when they are one the same rotating
|
||||
disk.</para>
|
||||
<para>Those services are started at boot if
|
||||
<option>passno</option> in <filename>/etc/fstab</filename> for the
|
||||
file system is set to a value greater than zero. The file system
|
||||
check for root is performed before the other file systems. Other
|
||||
file systems may be checked in parallel, except when they are one
|
||||
the same rotating disk.</para>
|
||||
|
||||
<para><filename>systemd-fsck</filename> does not know
|
||||
any details about specific filesystems, and simply
|
||||
executes file system checkers specific to each
|
||||
filesystem type (<filename>/sbin/fsck.*</filename>).
|
||||
This helper will decide if the filesystem should
|
||||
actually be checked based on the time since last
|
||||
check, number of mounts, unclean unmount, etc.</para>
|
||||
<para><filename>systemd-fsck</filename> does not know any details
|
||||
about specific filesystems, and simply executes file system
|
||||
checkers specific to each filesystem type
|
||||
(<filename>/sbin/fsck.*</filename>). This helper will decide if
|
||||
the filesystem should actually be checked based on the time since
|
||||
last check, number of mounts, unclean unmount, etc.</para>
|
||||
|
||||
<para><filename>systemd-fsck</filename> will forward
|
||||
file system checking progress to the console. If a
|
||||
file system check fails for a service without
|
||||
<option>nofail</option>, emergency mode is activated,
|
||||
by isolating to
|
||||
<filename>emergency.target</filename>.</para>
|
||||
</refsect1>
|
||||
<para><filename>systemd-fsck</filename> will forward file system
|
||||
checking progress to the console. If a file system check fails for
|
||||
a service without <option>nofail</option>, emergency mode is
|
||||
activated, by isolating to
|
||||
<filename>emergency.target</filename>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
|
||||
<para><filename>systemd-fsck</filename> understands
|
||||
one kernel command line parameter:</para>
|
||||
<para><filename>systemd-fsck</filename> understands one kernel
|
||||
command line parameter:</para>
|
||||
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<varlistentry>
|
||||
<term><varname>fsck.mode=</varname></term>
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<varlistentry>
|
||||
<term><varname>fsck.mode=</varname></term>
|
||||
|
||||
<listitem><para>One of
|
||||
<literal>auto</literal>,
|
||||
<literal>force</literal>,
|
||||
<literal>skip</literal>. Controls the
|
||||
mode of operation. The default is
|
||||
<literal>auto</literal>, and ensures
|
||||
that file system checks are done when
|
||||
the file system checker deems them
|
||||
necessary. <literal>force</literal>
|
||||
unconditionally results in full file
|
||||
system checks. <literal>skip</literal>
|
||||
skips any file system
|
||||
checks.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>One of <literal>auto</literal>,
|
||||
<literal>force</literal>, <literal>skip</literal>. Controls
|
||||
the mode of operation. The default is <literal>auto</literal>,
|
||||
and ensures that file system checks are done when the file
|
||||
system checker deems them necessary. <literal>force</literal>
|
||||
unconditionally results in full file system checks.
|
||||
<literal>skip</literal> skips any file system
|
||||
checks.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>fsck.repair=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>fsck.repair=</varname></term>
|
||||
|
||||
<listitem><para>One of
|
||||
<literal>preen</literal>,
|
||||
<literal>yes</literal>,
|
||||
<literal>no</literal>. Controls the
|
||||
mode of operation. The default is <literal>
|
||||
preen</literal>, and will automatically repair
|
||||
problems that can be safely fixed. <literal>yes
|
||||
</literal> will answer yes to all questions by
|
||||
fsck and <literal>no</literal> will answer no to
|
||||
all questions.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>One of <literal>preen</literal>,
|
||||
<literal>yes</literal>, <literal>no</literal>. Controls the
|
||||
mode of operation. The default is <literal> preen</literal>,
|
||||
and will automatically repair problems that can be safely
|
||||
fixed. <literal>yes </literal> will answer yes to all
|
||||
questions by fsck and <literal>no</literal> will answer no to
|
||||
all questions. </para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.btrfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.cramfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.ext4</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.fat</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.hfsplus</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.minix</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.ntfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.xfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-quotacheck.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.btrfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.cramfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.ext4</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.fat</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.hfsplus</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.minix</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.ntfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fsck.xfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,178 +21,165 @@
|
||||
-->
|
||||
<refentry id="systemd-fstab-generator">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-fstab-generator</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-fstab-generator</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-fstab-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-fstab-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-fstab-generator</refname>
|
||||
<refpurpose>Unit generator for /etc/fstab</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-fstab-generator</refname>
|
||||
<refpurpose>Unit generator for /etc/fstab</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-fstab-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-fstab-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-fstab-generator</filename> is
|
||||
a generator that translates
|
||||
<filename>/etc/fstab</filename> (see
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details) into native systemd units early at boot
|
||||
and when configuration of the system manager is
|
||||
reloaded. This will instantiate mount and swap units
|
||||
as necessary.</para>
|
||||
<para><filename>systemd-fstab-generator</filename> is a generator
|
||||
that translates <filename>/etc/fstab</filename> (see
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for details) into native systemd units early at boot and when
|
||||
configuration of the system manager is reloaded. This will
|
||||
instantiate mount and swap units as necessary.</para>
|
||||
|
||||
<para>The <varname>passno</varname> field is treated
|
||||
like a simple boolean, and the ordering information is
|
||||
discarded. However, if the root file system is
|
||||
checked, it is checked before all the other
|
||||
file systems.</para>
|
||||
<para>The <varname>passno</varname> field is treated like a simple
|
||||
boolean, and the ordering information is discarded. However, if
|
||||
the root file system is checked, it is checked before all the
|
||||
other file systems.</para>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for more information about special
|
||||
<filename>/etc/fstab</filename> mount options this
|
||||
generator understands.</para>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
and
|
||||
<citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for more information about special <filename>/etc/fstab</filename>
|
||||
mount options this generator understands.</para>
|
||||
|
||||
<para><filename>systemd-fstab-generator</filename>
|
||||
implements the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
|
||||
specification</ulink>.</para>
|
||||
</refsect1>
|
||||
<para><filename>systemd-fstab-generator</filename> implements the
|
||||
<ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
|
||||
specification</ulink>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
|
||||
<para><filename>systemd-fstab-generator</filename> understands
|
||||
the following kernel command line parameters:</para>
|
||||
<para><filename>systemd-fstab-generator</filename> understands the
|
||||
following kernel command line parameters:</para>
|
||||
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>fstab=</varname></term>
|
||||
<term><varname>rd.fstab=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>fstab=</varname></term>
|
||||
<term><varname>rd.fstab=</varname></term>
|
||||
|
||||
<listitem><para>Takes a boolean
|
||||
argument. Defaults to
|
||||
<literal>yes</literal>. If
|
||||
<literal>no</literal>, causes the
|
||||
generator to ignore any mounts or swaps
|
||||
configured in
|
||||
<filename>/etc/fstab</filename>. <varname>rd.fstab=</varname>
|
||||
is honored only by initial RAM disk
|
||||
(initrd) while
|
||||
<varname>fstab=</varname> is
|
||||
honored by both the main system and
|
||||
the initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>root=</varname></term>
|
||||
<listitem><para>Takes a boolean argument. Defaults to
|
||||
<literal>yes</literal>. If <literal>no</literal>, causes the
|
||||
generator to ignore any mounts or swaps configured in
|
||||
<filename>/etc/fstab</filename>. <varname>rd.fstab=</varname>
|
||||
is honored only by initial RAM disk (initrd) while
|
||||
<varname>fstab=</varname> is honored by both the main system
|
||||
and the initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>root=</varname></term>
|
||||
|
||||
<listitem><para>Takes the root filesystem to mount
|
||||
in the initrd.
|
||||
<varname>root=</varname> is
|
||||
honored by the initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>rootfstype=</varname></term>
|
||||
<listitem><para>Takes the root filesystem to mount in the
|
||||
initrd. <varname>root=</varname> is honored by the
|
||||
initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>rootfstype=</varname></term>
|
||||
|
||||
<listitem><para>Takes the root filesystem type that
|
||||
will be passed to the mount command.
|
||||
<varname>rootfstype=</varname> is
|
||||
honored by the initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>rootflags=</varname></term>
|
||||
<listitem><para>Takes the root filesystem type that will be
|
||||
passed to the mount command. <varname>rootfstype=</varname> is
|
||||
honored by the initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>rootflags=</varname></term>
|
||||
|
||||
<listitem><para>Takes the root filesystem mount options
|
||||
to use. <varname>rootflags=</varname> is
|
||||
honored by the initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>mount.usr=</varname></term>
|
||||
<listitem><para>Takes the root filesystem mount options to
|
||||
use. <varname>rootflags=</varname> is honored by the
|
||||
initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>mount.usr=</varname></term>
|
||||
|
||||
<listitem><para>Takes the <filename>/usr</filename>
|
||||
filesystem to be mounted by the initrd. If
|
||||
<varname>mount.usrfstype=</varname> or
|
||||
<varname>mount.usrflags=</varname> is set, then
|
||||
<varname>mount.usr=</varname> will default to the value set in
|
||||
<varname>root=</varname>.</para>
|
||||
<listitem><para>Takes the <filename>/usr</filename> filesystem
|
||||
to be mounted by the initrd. If
|
||||
<varname>mount.usrfstype=</varname> or
|
||||
<varname>mount.usrflags=</varname> is set, then
|
||||
<varname>mount.usr=</varname> will default to the value set in
|
||||
<varname>root=</varname>.</para>
|
||||
|
||||
<para>Otherwise this parameter defaults to the
|
||||
<filename>/usr</filename> entry
|
||||
found in <filename>/etc/fstab</filename> on the root
|
||||
filesystem.</para>
|
||||
<para>Otherwise this parameter defaults to the
|
||||
<filename>/usr</filename> entry found in
|
||||
<filename>/etc/fstab</filename> on the root filesystem.</para>
|
||||
|
||||
<para><varname>mount.usr=</varname> is honored by the initrd.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>mount.usrfstype=</varname></term>
|
||||
<para><varname>mount.usr=</varname> is honored by the initrd.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>mount.usrfstype=</varname></term>
|
||||
|
||||
<listitem><para>Takes the <filename>/usr</filename>
|
||||
filesystem type that will be passed to the mount
|
||||
command. If <varname>mount.usr=</varname> or
|
||||
<varname>mount.usrflags=</varname> is set, then
|
||||
<varname>mount.usrfstype=</varname> will default to the value set in
|
||||
<varname>rootfstype=</varname>.</para>
|
||||
<listitem><para>Takes the <filename>/usr</filename> filesystem
|
||||
type that will be passed to the mount command. If
|
||||
<varname>mount.usr=</varname> or
|
||||
<varname>mount.usrflags=</varname> is set, then
|
||||
<varname>mount.usrfstype=</varname> will default to the value
|
||||
set in <varname>rootfstype=</varname>.</para>
|
||||
|
||||
<para>Otherwise this value will be read from the
|
||||
<filename>/usr</filename> entry in
|
||||
<filename>/etc/fstab</filename> on the root filesystem.</para>
|
||||
<para>Otherwise this value will be read from the
|
||||
<filename>/usr</filename> entry in
|
||||
<filename>/etc/fstab</filename> on the root filesystem.</para>
|
||||
|
||||
<para><varname>mount.usrfstype=</varname> is
|
||||
honored by the initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>mount.usrflags=</varname></term>
|
||||
<para><varname>mount.usrfstype=</varname> is honored by the
|
||||
initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
<varlistentry>
|
||||
<term><varname>mount.usrflags=</varname></term>
|
||||
|
||||
<listitem><para>Takes the <filename>/usr</filename>
|
||||
filesystem mount options to use. If
|
||||
<varname>mount.usr=</varname> or
|
||||
<varname>mount.usrfstype=</varname> is set, then
|
||||
<varname>mount.usrflages=</varname> will default to the value set in
|
||||
<varname>rootflags=</varname>.</para>
|
||||
<listitem><para>Takes the <filename>/usr</filename> filesystem
|
||||
mount options to use. If <varname>mount.usr=</varname> or
|
||||
<varname>mount.usrfstype=</varname> is set, then
|
||||
<varname>mount.usrflages=</varname> will default to the value
|
||||
set in <varname>rootflags=</varname>.</para>
|
||||
|
||||
<para>Otherwise this value will be read from the
|
||||
<filename>/usr</filename> entry in
|
||||
<filename>/etc/fstab</filename> on the root filesystem.</para>
|
||||
<para>Otherwise this value will be read from the
|
||||
<filename>/usr</filename> entry in
|
||||
<filename>/etc/fstab</filename> on the root filesystem.</para>
|
||||
|
||||
<para><varname>mount.usrflags=</varname> is
|
||||
honored by the initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<para><varname>mount.usrflags=</varname> is honored by the
|
||||
initrd.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,81 +21,77 @@
|
||||
-->
|
||||
<refentry id="systemd-getty-generator">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-getty-generator</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-getty-generator</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-getty-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-getty-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-getty-generator</refname>
|
||||
<refpurpose>Generator for enabling getty instances on
|
||||
the console</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-getty-generator</refname>
|
||||
<refpurpose>Generator for enabling getty instances on the
|
||||
console</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-getty-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-getty-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-getty-generator</filename> is
|
||||
a generator that automatically instantiates
|
||||
<filename>serial-getty@.service</filename> on the
|
||||
kernel console <filename>/dev/console</filename> if
|
||||
that is not directed to the virtual console
|
||||
subsystem. It will also instantiate
|
||||
<filename>serial-getty@.service</filename> instances
|
||||
for virtualizer consoles, if execution in a
|
||||
virtualized environment is detected. Finally, it will
|
||||
instantiate
|
||||
<filename>container-getty@.service</filename>
|
||||
instances for additional container pseudo TTYs as
|
||||
requested by the container manager (see <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface/"><filename>Container Interface</filename></ulink>). This
|
||||
should ensure that the user is shown a login prompt at
|
||||
the right place, regardless of which environment the
|
||||
system is started in. For example, it is sufficient to
|
||||
redirect the kernel console with a kernel command line
|
||||
argument such as <varname>console=</varname> to get
|
||||
both kernel messages and a getty prompt on a serial
|
||||
TTY. See <ulink
|
||||
url="https://www.kernel.org/doc/Documentation/kernel-parameters.txt"><filename>kernel-parameters.txt</filename></ulink>
|
||||
for more information on the
|
||||
<varname>console=</varname> kernel parameter.</para>
|
||||
<para><filename>systemd-getty-generator</filename> is a generator
|
||||
that automatically instantiates
|
||||
<filename>serial-getty@.service</filename> on the kernel console
|
||||
<filename>/dev/console</filename> if that is not directed to the
|
||||
virtual console subsystem. It will also instantiate
|
||||
<filename>serial-getty@.service</filename> instances for
|
||||
virtualizer consoles, if execution in a virtualized environment is
|
||||
detected. Finally, it will instantiate
|
||||
<filename>container-getty@.service</filename> instances for
|
||||
additional container pseudo TTYs as requested by the container
|
||||
manager (see <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface/"><filename>Container
|
||||
Interface</filename></ulink>). This should ensure that the user is
|
||||
shown a login prompt at the right place, regardless of which
|
||||
environment the system is started in. For example, it is
|
||||
sufficient to redirect the kernel console with a kernel command
|
||||
line argument such as <varname>console=</varname> to get both
|
||||
kernel messages and a getty prompt on a serial TTY. See <ulink
|
||||
url="https://www.kernel.org/doc/Documentation/kernel-parameters.txt"><filename>kernel-parameters.txt</filename></ulink>
|
||||
for more information on the <varname>console=</varname> kernel
|
||||
parameter.</para>
|
||||
|
||||
<para><filename>systemd-getty-generator</filename>
|
||||
implements the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
|
||||
specification</ulink>.</para>
|
||||
<para><filename>systemd-getty-generator</filename> implements the
|
||||
<ulink url="http://www.freedesktop.org/wiki/Software/systemd/Generators">generator
|
||||
specification</ulink>.</para>
|
||||
|
||||
<para>Further information about configuration of
|
||||
gettys you may find in <ulink
|
||||
url="http://0pointer.de/blog/projects/serial-console.html">systemd
|
||||
for Administrators, Part XVI: Gettys on Serial
|
||||
Consoles (and Elsewhere)</ulink>.</para>
|
||||
</refsect1>
|
||||
<para>Further information about configuration of gettys you may
|
||||
find in
|
||||
<ulink url="http://0pointer.de/blog/projects/serial-console.html">systemd
|
||||
for Administrators, Part XVI: Gettys on Serial Consoles (and
|
||||
Elsewhere)</ulink>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>agetty</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry project='man-pages'><refentrytitle>agetty</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,166 +21,160 @@
|
||||
-->
|
||||
<refentry id="systemd-gpt-auto-generator">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-gpt-auto-generator</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-gpt-auto-generator</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-gpt-auto-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-gpt-auto-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-gpt-auto-generator</refname>
|
||||
<refpurpose>Generator for automatically discovering
|
||||
and mounting root, <filename>/home</filename> and
|
||||
<filename>/srv</filename> partitions, as well as
|
||||
discovering and enabling swap partitions, based on GPT
|
||||
partition type GUIDs.</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-gpt-auto-generator</refname>
|
||||
<refpurpose>Generator for automatically discovering
|
||||
and mounting root, <filename>/home</filename> and
|
||||
<filename>/srv</filename> partitions, as well as
|
||||
discovering and enabling swap partitions, based on GPT
|
||||
partition type GUIDs.</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-gpt-auto-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-gpt-auto-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-gpt-auto-generator</filename>
|
||||
is a unit generator that automatically discovers root,
|
||||
<filename>/home</filename>, <filename>/srv</filename>
|
||||
and swap partitions and creates mount and swap units
|
||||
for them, based on the partition type GUIDs of
|
||||
GUID partition tables (GPT). It implements the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/">Discoverable
|
||||
Partitions Specification</ulink>. Note that this
|
||||
generator has no effect on non-GPT systems, on systems
|
||||
where the units are explicitly configured (for
|
||||
example, listed in
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>),
|
||||
or where the mount points are non-empty.</para>
|
||||
<para><filename>systemd-gpt-auto-generator</filename> is a unit
|
||||
generator that automatically discovers root,
|
||||
<filename>/home</filename>, <filename>/srv</filename> and swap
|
||||
partitions and creates mount and swap units for them, based on the
|
||||
partition type GUIDs of GUID partition tables (GPT). It implements
|
||||
the
|
||||
<ulink url="http://www.freedesktop.org/wiki/Specifications/DiscoverablePartitionsSpec/">Discoverable
|
||||
Partitions Specification</ulink>. Note that this generator has no
|
||||
effect on non-GPT systems, on systems where the units are
|
||||
explicitly configured (for example, listed in
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>),
|
||||
or where the mount points are non-empty.</para>
|
||||
|
||||
<para>This generator will only look for root
|
||||
partitions on the same physical disk the EFI System
|
||||
Partition (ESP) is located on. It will only look for
|
||||
the other partitions on the same physical disk the
|
||||
root file system is located on. These partitions will
|
||||
not be searched on systems where the root file system is
|
||||
distributed on multiple disks, for example via btrfs
|
||||
RAID.</para>
|
||||
<para>This generator will only look for root partitions on the
|
||||
same physical disk the EFI System Partition (ESP) is located on.
|
||||
It will only look for the other partitions on the same physical
|
||||
disk the root file system is located on. These partitions will not
|
||||
be searched on systems where the root file system is distributed
|
||||
on multiple disks, for example via btrfs RAID.</para>
|
||||
|
||||
<para><filename>systemd-gpt-auto-generator</filename>
|
||||
is useful for centralizing file system configuration
|
||||
in the partition table and making manual configuration
|
||||
in <filename>/etc/fstab</filename> or suchlike
|
||||
unnecessary.</para>
|
||||
<para><filename>systemd-gpt-auto-generator</filename> is useful
|
||||
for centralizing file system configuration in the partition table
|
||||
and making manual configuration in <filename>/etc/fstab</filename>
|
||||
or suchlike unnecessary.</para>
|
||||
|
||||
<para>This generator looks for the partitions based on
|
||||
their partition type GUID. The following partition
|
||||
type GUIDs are identified:</para>
|
||||
<para>This generator looks for the partitions based on their
|
||||
partition type GUID. The following partition type GUIDs are
|
||||
identified:</para>
|
||||
|
||||
<table>
|
||||
<title>Partition Type GUIDs</title>
|
||||
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
|
||||
<colspec colname="guid" />
|
||||
<colspec colname="name" />
|
||||
<colspec colname="explanation" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Partition Type GUID</entry>
|
||||
<entry>Name</entry>
|
||||
<entry>Explanation</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>44479540-f297-41b2-9af7-d131d5f0458a</entry>
|
||||
<entry><filename>Root Partition (x86)</filename></entry>
|
||||
<entry>On 32-bit x86 systems, the first x86 root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>4f68bce3-e8cd-4db1-96e7-fbcaf984b709</entry>
|
||||
<entry><filename>Root Partition (x86-64)</filename></entry>
|
||||
<entry>On 64-bit x86 systems, the first x86-64 root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>69dad710-2ce4-4e3c-b16c-21a1d49abed3</entry>
|
||||
<entry><filename>Root Partition (32-bit ARM)</filename></entry>
|
||||
<entry>On 32-bit ARM systems, the first ARM root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>b921b045-1df0-41c3-af44-4c6f280d3fae</entry>
|
||||
<entry><filename>Root Partition (64-bit ARM)</filename></entry>
|
||||
<entry>On 64-bit ARM systems, the first ARM root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>933ac7e1-2eb4-4f13-b844-0e14e2aef915</entry>
|
||||
<entry>Home Partition</entry>
|
||||
<entry>The first home partition on the disk the root partition is located on is mounted to <filename>/home</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>3b8f8425-20e0-4f3b-907f-1a25a76f98e8</entry>
|
||||
<entry>Server Data Partition</entry>
|
||||
<entry>The first server data partition on the disk the root partition is located on is mounted to <filename>/srv</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>0657fd6d-a4ab-43c4-84e5-0933c84b4f4f</entry>
|
||||
<entry>Swap</entry>
|
||||
<entry>All swap partitions located on the disk the root partition is located on are enabled.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</table>
|
||||
<table>
|
||||
<title>Partition Type GUIDs</title>
|
||||
<tgroup cols='3' align='left' colsep='1' rowsep='1'>
|
||||
<colspec colname="guid" />
|
||||
<colspec colname="name" />
|
||||
<colspec colname="explanation" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Partition Type GUID</entry>
|
||||
<entry>Name</entry>
|
||||
<entry>Explanation</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>44479540-f297-41b2-9af7-d131d5f0458a</entry>
|
||||
<entry><filename>Root Partition (x86)</filename></entry>
|
||||
<entry>On 32-bit x86 systems, the first x86 root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>4f68bce3-e8cd-4db1-96e7-fbcaf984b709</entry>
|
||||
<entry><filename>Root Partition (x86-64)</filename></entry>
|
||||
<entry>On 64-bit x86 systems, the first x86-64 root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>69dad710-2ce4-4e3c-b16c-21a1d49abed3</entry>
|
||||
<entry><filename>Root Partition (32-bit ARM)</filename></entry>
|
||||
<entry>On 32-bit ARM systems, the first ARM root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>b921b045-1df0-41c3-af44-4c6f280d3fae</entry>
|
||||
<entry><filename>Root Partition (64-bit ARM)</filename></entry>
|
||||
<entry>On 64-bit ARM systems, the first ARM root partition on the disk the EFI ESP is located on is mounted to the root directory <filename>/</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>933ac7e1-2eb4-4f13-b844-0e14e2aef915</entry>
|
||||
<entry>Home Partition</entry>
|
||||
<entry>The first home partition on the disk the root partition is located on is mounted to <filename>/home</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>3b8f8425-20e0-4f3b-907f-1a25a76f98e8</entry>
|
||||
<entry>Server Data Partition</entry>
|
||||
<entry>The first server data partition on the disk the root partition is located on is mounted to <filename>/srv</filename>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>0657fd6d-a4ab-43c4-84e5-0933c84b4f4f</entry>
|
||||
<entry>Swap</entry>
|
||||
<entry>All swap partitions located on the disk the root partition is located on are enabled.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</table>
|
||||
|
||||
<para>The <filename>/home</filename> and
|
||||
<filename>/srv</filename> partitions may be encrypted
|
||||
in LUKS format. In this case a device mapper device is
|
||||
set up under the names
|
||||
<filename>/dev/mapper/home</filename> and
|
||||
<filename>/dev/mapper/srv</filename>. Note that this
|
||||
might create conflicts if the same partition is listed
|
||||
in <filename>/etc/crypttab</filename> with a different
|
||||
device mapper device name.</para>
|
||||
<para>The <filename>/home</filename> and <filename>/srv</filename>
|
||||
partitions may be encrypted in LUKS format. In this case a device
|
||||
mapper device is set up under the names
|
||||
<filename>/dev/mapper/home</filename> and
|
||||
<filename>/dev/mapper/srv</filename>. Note that this might create
|
||||
conflicts if the same partition is listed in
|
||||
<filename>/etc/crypttab</filename> with a different device mapper
|
||||
device name.</para>
|
||||
|
||||
<para>Also note that
|
||||
<citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
will mount the EFI System Partition (ESP) to
|
||||
<filename>/boot</filename> if not otherwise mounted.</para>
|
||||
<para>Also note that
|
||||
<citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
will mount the EFI System Partition (ESP) to
|
||||
<filename>/boot</filename> if not otherwise mounted.</para>
|
||||
|
||||
<para>When using this generator in conjunction with
|
||||
btrfs file systems, make sure to set the correct
|
||||
default subvolumes on them, using <command>btrfs
|
||||
subvolume set-default</command>.</para>
|
||||
<para>When using this generator in conjunction with btrfs file
|
||||
systems, make sure to set the correct default subvolumes on them,
|
||||
using <command>btrfs subvolume set-default</command>.</para>
|
||||
|
||||
<para><filename>systemd-gpt-auto-generator</filename>
|
||||
implements the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/Generators">Generator
|
||||
Specification</ulink>.</para>
|
||||
</refsect1>
|
||||
<para><filename>systemd-gpt-auto-generator</filename> implements
|
||||
the
|
||||
<ulink url="http://www.freedesktop.org/wiki/Software/systemd/Generators">Generator
|
||||
Specification</ulink>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>btrfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.mount</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.swap</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-fstab-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-efi-boot-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-cryptsetup@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>cryptsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>btrfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,103 +23,96 @@
|
||||
|
||||
<refentry id="systemd-halt.service">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-halt.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-halt.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-halt.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-halt.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-halt.service</refname>
|
||||
<refname>systemd-poweroff.service</refname>
|
||||
<refname>systemd-reboot.service</refname>
|
||||
<refname>systemd-kexec.service</refname>
|
||||
<refname>systemd-shutdown</refname>
|
||||
<refpurpose>System shutdown logic</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-halt.service</refname>
|
||||
<refname>systemd-poweroff.service</refname>
|
||||
<refname>systemd-reboot.service</refname>
|
||||
<refname>systemd-kexec.service</refname>
|
||||
<refname>systemd-shutdown</refname>
|
||||
<refpurpose>System shutdown logic</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-halt.service</filename></para>
|
||||
<para><filename>systemd-poweroff.service</filename></para>
|
||||
<para><filename>systemd-reboot.service</filename></para>
|
||||
<para><filename>systemd-kexec.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-shutdown</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-halt.service</filename></para>
|
||||
<para><filename>systemd-poweroff.service</filename></para>
|
||||
<para><filename>systemd-reboot.service</filename></para>
|
||||
<para><filename>systemd-kexec.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-shutdown</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-halt.service</filename> is a
|
||||
system service that is pulled in by
|
||||
<filename>halt.target</filename> and is responsible
|
||||
for the actual system halt. Similarly,
|
||||
<filename>systemd-poweroff.service</filename> is
|
||||
pulled in by <filename>poweroff.target</filename>,
|
||||
<filename>systemd-reboot.service</filename> by
|
||||
<filename>reboot.target</filename> and
|
||||
<filename>systemd-kexec.service</filename> by
|
||||
<filename>kexec.target</filename> to execute the
|
||||
respective actions.</para>
|
||||
<para><filename>systemd-halt.service</filename> is a system
|
||||
service that is pulled in by <filename>halt.target</filename> and
|
||||
is responsible for the actual system halt. Similarly,
|
||||
<filename>systemd-poweroff.service</filename> is pulled in by
|
||||
<filename>poweroff.target</filename>,
|
||||
<filename>systemd-reboot.service</filename> by
|
||||
<filename>reboot.target</filename> and
|
||||
<filename>systemd-kexec.service</filename> by
|
||||
<filename>kexec.target</filename> to execute the respective
|
||||
actions.</para>
|
||||
|
||||
<para>When these services are run, they ensure that PID
|
||||
1 is replaced by the
|
||||
<filename>/usr/lib/systemd/systemd-shutdown</filename>
|
||||
tool which is then responsible for the actual
|
||||
shutdown. Before shutting down, this binary will try to
|
||||
unmount all remaining file systems, disable all
|
||||
remaining swap devices, detach all remaining storage
|
||||
devices and kill all remaining processes.</para>
|
||||
<para>When these services are run, they ensure that PID 1 is
|
||||
replaced by the
|
||||
<filename>/usr/lib/systemd/systemd-shutdown</filename> tool which
|
||||
is then responsible for the actual shutdown. Before shutting down,
|
||||
this binary will try to unmount all remaining file systems,
|
||||
disable all remaining swap devices, detach all remaining storage
|
||||
devices and kill all remaining processes.</para>
|
||||
|
||||
<para>It is necessary to have this code in a separate binary
|
||||
because otherwise rebooting after an upgrade might be broken —
|
||||
the running PID 1 could still depend on libraries which are not
|
||||
available any more, thus keeping the file system busy, which
|
||||
then cannot be re-mounted read-only.</para>
|
||||
<para>It is necessary to have this code in a separate binary
|
||||
because otherwise rebooting after an upgrade might be broken — the
|
||||
running PID 1 could still depend on libraries which are not
|
||||
available any more, thus keeping the file system busy, which then
|
||||
cannot be re-mounted read-only.</para>
|
||||
|
||||
<para>Immediately before executing the actual system
|
||||
halt/poweroff/reboot/kexec
|
||||
<filename>systemd-shutdown</filename> will run all
|
||||
executables in
|
||||
<filename>/usr/lib/systemd/system-shutdown/</filename>
|
||||
and pass one arguments to them: either
|
||||
<literal>halt</literal>,
|
||||
<literal>poweroff</literal>,
|
||||
<literal>reboot</literal> or
|
||||
<literal>kexec</literal>, depending on the chosen
|
||||
action. All executables in this directory are executed
|
||||
in parallel, and execution of the action is not
|
||||
continued before all executables finished.</para>
|
||||
<para>Immediately before executing the actual system
|
||||
halt/poweroff/reboot/kexec <filename>systemd-shutdown</filename>
|
||||
will run all executables in
|
||||
<filename>/usr/lib/systemd/system-shutdown/</filename> and pass
|
||||
one arguments to them: either <literal>halt</literal>,
|
||||
<literal>poweroff</literal>, <literal>reboot</literal> or
|
||||
<literal>kexec</literal>, depending on the chosen action. All
|
||||
executables in this directory are executed in parallel, and
|
||||
execution of the action is not continued before all executables
|
||||
finished.</para>
|
||||
|
||||
<para>Note that
|
||||
<filename>systemd-halt.service</filename> (and the
|
||||
related units) should never be executed
|
||||
directly. Instead, trigger system shutdown with a
|
||||
command such as <literal>systemctl halt</literal> or
|
||||
suchlike.</para>
|
||||
</refsect1>
|
||||
<para>Note that <filename>systemd-halt.service</filename> (and the
|
||||
related units) should never be executed directly. Instead, trigger
|
||||
system shutdown with a command such as <literal>systemctl
|
||||
halt</literal> or suchlike.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>reboot</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>reboot</refentrytitle><manvolnum>2</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-suspend.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,73 +21,73 @@
|
||||
-->
|
||||
<refentry id="systemd-hibernate-resume-generator">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-hibernate-resume-generator</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-hibernate-resume-generator</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Ivan</firstname>
|
||||
<surname>Shapovalov</surname>
|
||||
<email>intelfx100@gmail.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Ivan</firstname>
|
||||
<surname>Shapovalov</surname>
|
||||
<email>intelfx100@gmail.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-hibernate-resume-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-hibernate-resume-generator</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-hibernate-resume-generator</refname>
|
||||
<refpurpose>Unit generator for resume= kernel parameter</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-hibernate-resume-generator</refname>
|
||||
<refpurpose>Unit generator for resume= kernel parameter</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-hibernate-resume-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>/usr/lib/systemd/system-generators/systemd-hibernate-resume-generator</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-hibernate-resume-generator</filename> is
|
||||
a generator that instantiates
|
||||
<citerefentry><refentrytitle>systemd-hibernate-resume@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
unit according to the value of <option>resume=</option>
|
||||
parameter specified on the kernel command line.</para>
|
||||
</refsect1>
|
||||
<para><filename>systemd-hibernate-resume-generator</filename> is a
|
||||
generator that instantiates
|
||||
<citerefentry><refentrytitle>systemd-hibernate-resume@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
unit according to the value of <option>resume=</option> parameter
|
||||
specified on the kernel command line.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
|
||||
<para><filename>systemd-hibernate-resume-generator</filename> understands
|
||||
the following kernel command line parameters:</para>
|
||||
<para><filename>systemd-hibernate-resume-generator</filename>
|
||||
understands the following kernel command line parameters:</para>
|
||||
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
|
||||
<varlistentry>
|
||||
<term><varname>resume=</varname></term>
|
||||
<varlistentry>
|
||||
<term><varname>resume=</varname></term>
|
||||
|
||||
<listitem><para>Takes a path to the resume
|
||||
device. Both persistent block device paths like
|
||||
<filename>/dev/disk/by-foo/bar</filename> and
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>-style
|
||||
specifiers like <literal>FOO=bar</literal>
|
||||
are supported.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a path to the resume device. Both
|
||||
persistent block device paths like
|
||||
<filename>/dev/disk/by-foo/bar</filename> and
|
||||
<citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>-style
|
||||
specifiers like <literal>FOO=bar</literal> are
|
||||
supported.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hibernate-resume@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hibernate-resume@.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>kernel-command-line</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,62 +21,61 @@
|
||||
-->
|
||||
<refentry id="systemd-hibernate-resume@.service">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-hibernate-resume@.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-hibernate-resume@.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Ivan</firstname>
|
||||
<surname>Shapovalov</surname>
|
||||
<email>intelfx100@gmail.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Ivan</firstname>
|
||||
<surname>Shapovalov</surname>
|
||||
<email>intelfx100@gmail.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-hibernate-resume@.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-hibernate-resume@.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-hibernate-resume@.service</refname>
|
||||
<refname>systemd-hibernate-resume</refname>
|
||||
<refpurpose>Resume from hibernation</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-hibernate-resume@.service</refname>
|
||||
<refname>systemd-hibernate-resume</refname>
|
||||
<refpurpose>Resume from hibernation</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-hibernate-resume@.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-hibernate-resume</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-hibernate-resume@.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-hibernate-resume</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-hibernate-resume@.service</filename>
|
||||
initiates the resume from hibernation. It is
|
||||
instantiated with the device to resume from as the
|
||||
template argument.</para>
|
||||
<para><filename>systemd-hibernate-resume@.service</filename>
|
||||
initiates the resume from hibernation. It is instantiated with the
|
||||
device to resume from as the template argument.</para>
|
||||
|
||||
<para><filename>systemd-hibernate-resume</filename> only supports
|
||||
the in-kernel hibernation implementation, known as
|
||||
<ulink url="https://www.kernel.org/doc/Documentation/power/swsusp.txt">swsusp</ulink>.
|
||||
Internally, it works by writing the major:minor of specified
|
||||
device node to <filename>/sys/power/resume</filename>.</para>
|
||||
<para><filename>systemd-hibernate-resume</filename> only supports
|
||||
the in-kernel hibernation implementation, known as
|
||||
<ulink url="https://www.kernel.org/doc/Documentation/power/swsusp.txt">swsusp</ulink>.
|
||||
Internally, it works by writing the major:minor of specified
|
||||
device node to <filename>/sys/power/resume</filename>.</para>
|
||||
|
||||
<para>Failing to initiate a resume is not an error condition.
|
||||
It may mean that there was no resume image (e. g. if the
|
||||
system has been simply powered off and not hibernated). In
|
||||
such case, the boot is ordinarily continued.</para>
|
||||
</refsect1>
|
||||
<para>Failing to initiate a resume is not an error condition. It
|
||||
may mean that there was no resume image (e. g. if the system has
|
||||
been simply powered off and not hibernated). In such case, the
|
||||
boot is ordinarily continued.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hibernate-resume-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-hibernate-resume-generator</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,65 +23,63 @@
|
||||
|
||||
<refentry id="systemd-hostnamed.service" conditional='ENABLE_HOSTNAMED'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-hostnamed.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-hostnamed.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-hostnamed.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-hostnamed.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-hostnamed.service</refname>
|
||||
<refname>systemd-hostnamed</refname>
|
||||
<refpurpose>Host name bus mechanism</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-hostnamed.service</refname>
|
||||
<refname>systemd-hostnamed</refname>
|
||||
<refpurpose>Host name bus mechanism</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-hostnamed.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-hostnamed</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-hostnamed.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-hostnamed</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-hostnamed</filename> is a system
|
||||
service that may be used as a mechanism to change the
|
||||
system's hostname. <filename>systemd-hostnamed</filename> is
|
||||
automatically activated on request and terminates
|
||||
itself when it is unused.</para>
|
||||
<para><filename>systemd-hostnamed</filename> is a system service
|
||||
that may be used as a mechanism to change the system's hostname.
|
||||
<filename>systemd-hostnamed</filename> is automatically activated
|
||||
on request and terminates itself when it is unused.</para>
|
||||
|
||||
<para>The tool
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
is a command line client to this service.</para>
|
||||
<para>The tool
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
is a command line client to this service.</para>
|
||||
|
||||
<para>See the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/hostnamed">
|
||||
developer documentation</ulink> for information about
|
||||
the APIs <filename>systemd-hostnamed</filename>
|
||||
provides.</para>
|
||||
</refsect1>
|
||||
<para>See the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/hostnamed">
|
||||
developer documentation</ulink> for information about the APIs
|
||||
<filename>systemd-hostnamed</filename> provides.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sethostname</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostname</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-info</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>hostnamectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sethostname</refentrytitle><manvolnum>2</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,173 +22,156 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-inhibit"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-inhibit</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-inhibit</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-inhibit</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-inhibit</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-inhibit</refname>
|
||||
<refpurpose>Execute a program with an inhibition lock taken</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-inhibit</refname>
|
||||
<refpurpose>Execute a program with an inhibition lock taken</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-inhibit <arg choice="opt" rep="repeat">OPTIONS</arg> <arg>COMMAND</arg> <arg choice="opt" rep="repeat">ARGUMENTS</arg></command>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-inhibit <arg choice="opt" rep="repeat">OPTIONS</arg> --list</command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-inhibit <arg choice="opt" rep="repeat">OPTIONS</arg> <arg>COMMAND</arg> <arg choice="opt" rep="repeat">ARGUMENTS</arg></command>
|
||||
</cmdsynopsis>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-inhibit <arg choice="opt" rep="repeat">OPTIONS</arg> --list</command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-inhibit</command> may be used
|
||||
to execute a program with a shutdown, sleep or idle
|
||||
inhibitor lock taken. The lock will be acquired before
|
||||
the specified command line is executed and released
|
||||
afterwards.</para>
|
||||
<para><command>systemd-inhibit</command> may be used to execute a
|
||||
program with a shutdown, sleep or idle inhibitor lock taken. The
|
||||
lock will be acquired before the specified command line is
|
||||
executed and released afterwards.</para>
|
||||
|
||||
<para>Inhibitor locks may be used to block or delay
|
||||
system sleep and shutdown requests from the user, as well
|
||||
as automatic idle handling of the OS. This is useful
|
||||
to avoid system suspends while an optical disc is
|
||||
being recorded, or similar operations that should not
|
||||
be interrupted.</para>
|
||||
<para>Inhibitor locks may be used to block or delay system sleep
|
||||
and shutdown requests from the user, as well as automatic idle
|
||||
handling of the OS. This is useful to avoid system suspends while
|
||||
an optical disc is being recorded, or similar operations that
|
||||
should not be interrupted.</para>
|
||||
|
||||
<para>For more information see the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/inhibit">Inhibitor
|
||||
Lock Developer Documentation</ulink>.</para>
|
||||
</refsect1>
|
||||
<para>For more information see the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/inhibit">Inhibitor
|
||||
Lock Developer Documentation</ulink>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--what=</option></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--what=</option></term>
|
||||
|
||||
<listitem><para>Takes a colon-separated
|
||||
list of one or more
|
||||
operations to inhibit:
|
||||
<literal>shutdown</literal>,
|
||||
<literal>sleep</literal>,
|
||||
<literal>idle</literal>,
|
||||
<literal>handle-power-key</literal>,
|
||||
<literal>handle-suspend-key</literal>,
|
||||
<literal>handle-hibernate-key</literal>,
|
||||
<literal>handle-lid-switch</literal>,
|
||||
for inhibiting
|
||||
reboot/power-off/halt/kexec,
|
||||
suspending/hibernating, the automatic
|
||||
idle detection, or the low-level
|
||||
handling of the power/sleep key and
|
||||
the lid switch, respectively. If omitted,
|
||||
defaults to
|
||||
<literal>idle:sleep:shutdown</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a colon-separated list of one or more
|
||||
operations to inhibit:
|
||||
<literal>shutdown</literal>,
|
||||
<literal>sleep</literal>,
|
||||
<literal>idle</literal>,
|
||||
<literal>handle-power-key</literal>,
|
||||
<literal>handle-suspend-key</literal>,
|
||||
<literal>handle-hibernate-key</literal>,
|
||||
<literal>handle-lid-switch</literal>,
|
||||
for inhibiting reboot/power-off/halt/kexec,
|
||||
suspending/hibernating, the automatic idle detection, or the
|
||||
low-level handling of the power/sleep key and the lid switch,
|
||||
respectively. If omitted, defaults to
|
||||
<literal>idle:sleep:shutdown</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--who=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--who=</option></term>
|
||||
|
||||
<listitem><para>Takes a short,
|
||||
human-readable descriptive string for the
|
||||
program taking the lock. If not passed,
|
||||
defaults to the command line
|
||||
string.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a short, human-readable descriptive
|
||||
string for the program taking the lock. If not passed,
|
||||
defaults to the command line string.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--why=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--why=</option></term>
|
||||
|
||||
<listitem><para>Takes a short,
|
||||
human-readable descriptive string for the
|
||||
reason for taking the lock. Defaults
|
||||
to "Unknown reason".</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes a short, human-readable descriptive
|
||||
string for the reason for taking the lock. Defaults to
|
||||
"Unknown reason".</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--mode=</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--mode=</option></term>
|
||||
|
||||
<listitem><para>Takes either
|
||||
<literal>block</literal> or
|
||||
<literal>delay</literal> and describes
|
||||
how the lock is applied. If
|
||||
<literal>block</literal> is used (the
|
||||
default), the lock prohibits any of
|
||||
the requested operations without time
|
||||
limit, and only privileged users may
|
||||
override it. If
|
||||
<literal>delay</literal> is used, the
|
||||
lock can only delay the requested
|
||||
operations for a limited time. If the
|
||||
time elapses, the lock is ignored and
|
||||
the operation executed. The time limit
|
||||
may be specified in
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. Note
|
||||
that <literal>delay</literal> is only
|
||||
available for <literal>sleep</literal>
|
||||
and
|
||||
<literal>shutdown</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Takes either <literal>block</literal> or
|
||||
<literal>delay</literal> and describes how the lock is
|
||||
applied. If <literal>block</literal> is used (the default),
|
||||
the lock prohibits any of the requested operations without
|
||||
time limit, and only privileged users may override it. If
|
||||
<literal>delay</literal> is used, the lock can only delay the
|
||||
requested operations for a limited time. If the time elapses,
|
||||
the lock is ignored and the operation executed. The time limit
|
||||
may be specified in
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
||||
Note that <literal>delay</literal> is only available for
|
||||
<literal>sleep</literal> and
|
||||
<literal>shutdown</literal>.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>--list</option></term>
|
||||
<varlistentry>
|
||||
<term><option>--list</option></term>
|
||||
|
||||
<listitem><para>Lists all active
|
||||
inhibition locks instead of acquiring
|
||||
one.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Lists all active inhibition locks instead of
|
||||
acquiring one.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>Returns the exit status of the executed program.</para>
|
||||
</refsect1>
|
||||
<para>Returns the exit status of the executed program.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
<refsect1>
|
||||
<title>Example</title>
|
||||
|
||||
<programlisting># systemd-inhibit wodim foobar.iso</programlisting>
|
||||
<programlisting># systemd-inhibit wodim foobar.iso</programlisting>
|
||||
|
||||
<para>This burns the ISO image
|
||||
<filename>foobar.iso</filename> on a CD using
|
||||
<citerefentry project='man-pages'><refentrytitle>wodim</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
and inhibits system sleeping, shutdown and idle while
|
||||
doing so.</para>
|
||||
</refsect1>
|
||||
<para>This burns the ISO image
|
||||
<filename>foobar.iso</filename> on a CD using
|
||||
<citerefentry project='man-pages'><refentrytitle>wodim</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
and inhibits system sleeping, shutdown and idle while
|
||||
doing so.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,54 +23,54 @@
|
||||
|
||||
<refentry id="systemd-initctl.service">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-initctl.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-initctl.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-initctl.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-initctl.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-initctl.service</refname>
|
||||
<refname>systemd-initctl.socket</refname>
|
||||
<refname>systemd-initctl</refname>
|
||||
<refpurpose>/dev/initctl compatibility</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-initctl.service</refname>
|
||||
<refname>systemd-initctl.socket</refname>
|
||||
<refname>systemd-initctl</refname>
|
||||
<refpurpose>/dev/initctl compatibility</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-initctl.service</filename></para>
|
||||
<para><filename>systemd-initctl.socket</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-initctl</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-initctl.service</filename></para>
|
||||
<para><filename>systemd-initctl.socket</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-initctl</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-initctl</filename> is a system
|
||||
service that implements compatibility with the
|
||||
<filename>/dev/initctl</filename> FIFO file system
|
||||
object, as implemented by the SysV init system. <filename>systemd-initctl</filename> is
|
||||
automatically activated on request and terminates
|
||||
itself when it is unused.</para>
|
||||
</refsect1>
|
||||
<para><filename>systemd-initctl</filename> is a system service
|
||||
that implements compatibility with the
|
||||
<filename>/dev/initctl</filename> FIFO file system object, as
|
||||
implemented by the SysV init system.
|
||||
<filename>systemd-initctl</filename> is automatically activated on
|
||||
request and terminates itself when it is unused.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,253 +23,228 @@
|
||||
|
||||
<refentry id="systemd-journald.service">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-journald.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-journald.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-journald.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-journald.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-journald.service</refname>
|
||||
<refname>systemd-journald.socket</refname>
|
||||
<refname>systemd-journald-dev-log.socket</refname>
|
||||
<refname>systemd-journald</refname>
|
||||
<refpurpose>Journal service</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-journald.service</refname>
|
||||
<refname>systemd-journald.socket</refname>
|
||||
<refname>systemd-journald-dev-log.socket</refname>
|
||||
<refname>systemd-journald</refname>
|
||||
<refpurpose>Journal service</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-journald.service</filename></para>
|
||||
<para><filename>systemd-journald.socket</filename></para>
|
||||
<para><filename>systemd-journald-dev-log.socket</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-journald</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-journald.service</filename></para>
|
||||
<para><filename>systemd-journald.socket</filename></para>
|
||||
<para><filename>systemd-journald-dev-log.socket</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-journald</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-journald</filename> is a
|
||||
system service that collects and stores logging data.
|
||||
It creates and maintains structured, indexed journals
|
||||
based on logging information that is received from a
|
||||
variety of sources:</para>
|
||||
<para><filename>systemd-journald</filename> is a system service
|
||||
that collects and stores logging data. It creates and maintains
|
||||
structured, indexed journals based on logging information that is
|
||||
received from a variety of sources:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>Kernel log messages, via kmsg</para></listitem>
|
||||
<itemizedlist>
|
||||
<listitem><para>Kernel log messages, via kmsg</para></listitem>
|
||||
|
||||
<listitem><para>Simple system log messages, via the
|
||||
libc <citerefentry
|
||||
project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call</para></listitem>
|
||||
<listitem><para>Simple system log messages, via the libc
|
||||
<citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>
|
||||
call</para></listitem>
|
||||
|
||||
<listitem><para>Structured system log messages via the
|
||||
native Journal API, see
|
||||
<citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>4</manvolnum></citerefentry></para></listitem>
|
||||
<listitem><para>Structured system log messages via the native
|
||||
Journal API, see
|
||||
<citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>4</manvolnum></citerefentry></para></listitem>
|
||||
|
||||
<listitem><para>Standard output and
|
||||
standard error of system
|
||||
services</para></listitem>
|
||||
<listitem><para>Standard output and standard error of system
|
||||
services</para></listitem>
|
||||
|
||||
<listitem><para>Audit records, via the audit subsystem</para></listitem>
|
||||
</itemizedlist>
|
||||
<listitem><para>Audit records, via the audit
|
||||
subsystem</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>The daemon will implicitly collect numerous
|
||||
metadata fields for each log messages in a secure and
|
||||
unfakeable way. See
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
for more information about the collected metadata.
|
||||
</para>
|
||||
<para>The daemon will implicitly collect numerous metadata fields
|
||||
for each log messages in a secure and unfakeable way. See
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
|
||||
for more information about the collected metadata.
|
||||
</para>
|
||||
|
||||
<para>Log data collected by the journal is primarily
|
||||
text-based but can also include binary data where
|
||||
necessary. All objects stored in the journal can be up
|
||||
to 2^64-1 bytes in size.</para>
|
||||
<para>Log data collected by the journal is primarily text-based
|
||||
but can also include binary data where necessary. All objects
|
||||
stored in the journal can be up to 2^64-1 bytes in size.</para>
|
||||
|
||||
<para>By default, the journal stores log data in
|
||||
<filename>/run/log/journal/</filename>. Since
|
||||
<filename>/run/</filename> is volatile, log data is
|
||||
lost at reboot. To make the data persistent, it
|
||||
is sufficient to create
|
||||
<filename>/var/log/journal/</filename> where
|
||||
<filename>systemd-journald</filename> will then store
|
||||
the data.</para>
|
||||
<para>By default, the journal stores log data in
|
||||
<filename>/run/log/journal/</filename>. Since
|
||||
<filename>/run/</filename> is volatile, log data is lost at
|
||||
reboot. To make the data persistent, it is sufficient to create
|
||||
<filename>/var/log/journal/</filename> where
|
||||
<filename>systemd-journald</filename> will then store the
|
||||
data.</para>
|
||||
|
||||
<para><filename>systemd-journald</filename> will
|
||||
forward all received log messages to the <constant>AF_UNIX</constant>/<constant>SOCK_DGRAM</constant> socket
|
||||
<filename>/run/systemd/journal/syslog</filename>, if it exists, which
|
||||
may be used by Unix syslog daemons to process the data
|
||||
further.</para>
|
||||
<para><filename>systemd-journald</filename> will forward all
|
||||
received log messages to the
|
||||
<constant>AF_UNIX</constant>/<constant>SOCK_DGRAM</constant>
|
||||
socket <filename>/run/systemd/journal/syslog</filename>, if it
|
||||
exists, which may be used by Unix syslog daemons to process the
|
||||
data further.</para>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for information about the configuration of this
|
||||
service.</para>
|
||||
</refsect1>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for information about the configuration of this service.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Signals</title>
|
||||
<refsect1>
|
||||
<title>Signals</title>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>SIGUSR1</term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>SIGUSR1</term>
|
||||
|
||||
<listitem><para>Request that journal
|
||||
data from <filename>/run/</filename>
|
||||
is flushed to
|
||||
<filename>/var/</filename> in order to
|
||||
make it persistent (if this is
|
||||
enabled). This must be used after
|
||||
<filename>/var/</filename> is mounted,
|
||||
as otherwise log data from
|
||||
<filename>/run</filename> is never
|
||||
flushed to <filename>/var</filename>
|
||||
regardless of the
|
||||
configuration.</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Request that journal data from
|
||||
<filename>/run/</filename> is flushed to
|
||||
<filename>/var/</filename> in order to make it persistent (if
|
||||
this is enabled). This must be used after
|
||||
<filename>/var/</filename> is mounted, as otherwise log data
|
||||
from <filename>/run</filename> is never flushed to
|
||||
<filename>/var</filename> regardless of the
|
||||
configuration.</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>SIGUSR2</term>
|
||||
<varlistentry>
|
||||
<term>SIGUSR2</term>
|
||||
|
||||
<listitem><para>Request immediate
|
||||
rotation of the journal
|
||||
files.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para>Request immediate rotation of the journal
|
||||
files.</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
<refsect1>
|
||||
<title>Kernel Command Line</title>
|
||||
|
||||
<para>A few configuration parameters from
|
||||
<filename>journald.conf</filename> may be overridden on
|
||||
the kernel command line:</para>
|
||||
<para>A few configuration parameters from
|
||||
<filename>journald.conf</filename> may be overridden on the kernel
|
||||
command line:</para>
|
||||
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<varlistentry>
|
||||
<term><varname>systemd.journald.forward_to_syslog=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_kmsg=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_console=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_wall=</varname></term>
|
||||
<variablelist class='kernel-commandline-options'>
|
||||
<varlistentry>
|
||||
<term><varname>systemd.journald.forward_to_syslog=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_kmsg=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_console=</varname></term>
|
||||
<term><varname>systemd.journald.forward_to_wall=</varname></term>
|
||||
|
||||
<listitem><para>Enables/disables
|
||||
forwarding of collected log messages
|
||||
to syslog, the kernel log buffer, the
|
||||
system console or wall.
|
||||
</para>
|
||||
<listitem><para>Enables/disables forwarding of collected log
|
||||
messages to syslog, the kernel log buffer, the system console
|
||||
or wall.
|
||||
</para>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for information about these settings.</para>
|
||||
</listitem>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for information about these settings.</para>
|
||||
</listitem>
|
||||
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Access Control</title>
|
||||
<refsect1>
|
||||
<title>Access Control</title>
|
||||
|
||||
<para>Journal files are, by default, owned and readable
|
||||
by the <literal>systemd-journal</literal> system group
|
||||
but are not writable. Adding a user to this group thus
|
||||
enables her/him to read the journal files.</para>
|
||||
<para>Journal files are, by default, owned and readable by the
|
||||
<literal>systemd-journal</literal> system group but are not
|
||||
writable. Adding a user to this group thus enables her/him to read
|
||||
the journal files.</para>
|
||||
|
||||
<para>By default, each logged in user will get her/his
|
||||
own set of journal files in
|
||||
<filename>/var/log/journal/</filename>. These files
|
||||
will not be owned by the user, however, in order to
|
||||
avoid that the user can write to them
|
||||
directly. Instead, file system ACLs are used to ensure
|
||||
the user gets read access only.</para>
|
||||
<para>By default, each logged in user will get her/his own set of
|
||||
journal files in <filename>/var/log/journal/</filename>. These
|
||||
files will not be owned by the user, however, in order to avoid
|
||||
that the user can write to them directly. Instead, file system
|
||||
ACLs are used to ensure the user gets read access only.</para>
|
||||
|
||||
<para>Additional users and groups may be granted
|
||||
access to journal files via file system access control
|
||||
lists (ACL). Distributions and administrators may
|
||||
choose to grant read access to all members of the
|
||||
<literal>wheel</literal> and <literal>adm</literal>
|
||||
system groups with a command such as the
|
||||
following:</para>
|
||||
<para>Additional users and groups may be granted access to journal
|
||||
files via file system access control lists (ACL). Distributions
|
||||
and administrators may choose to grant read access to all members
|
||||
of the <literal>wheel</literal> and <literal>adm</literal> system
|
||||
groups with a command such as the following:</para>
|
||||
|
||||
<programlisting># setfacl -Rnm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx /var/log/journal/</programlisting>
|
||||
<programlisting># setfacl -Rnm g:wheel:rx,d:g:wheel:rx,g:adm:rx,d:g:adm:rx /var/log/journal/</programlisting>
|
||||
|
||||
<para>Note that this command will update the ACLs both
|
||||
for existing journal files and for future journal
|
||||
files created in the
|
||||
<filename>/var/log/journal/</filename>
|
||||
directory.</para>
|
||||
</refsect1>
|
||||
<para>Note that this command will update the ACLs both for
|
||||
existing journal files and for future journal files created in the
|
||||
<filename>/var/log/journal/</filename> directory.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Files</title>
|
||||
<refsect1>
|
||||
<title>Files</title>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><filename>/etc/systemd/journald.conf</filename></term>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><filename>/etc/systemd/journald.conf</filename></term>
|
||||
|
||||
<listitem><para>Configure
|
||||
<command>systemd-journald</command>
|
||||
behaviour. See
|
||||
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<listitem><para>Configure
|
||||
<command>systemd-journald</command>
|
||||
behaviour. See
|
||||
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><filename>/run/log/journal/<replaceable>machine-id</replaceable>/*.journal</filename></term>
|
||||
<term><filename>/run/log/journal/<replaceable>machine-id</replaceable>/*.journal~</filename></term>
|
||||
<term><filename>/var/log/journal/<replaceable>machine-id</replaceable>/*.journal</filename></term>
|
||||
<term><filename>/var/log/journal/<replaceable>machine-id</replaceable>/*.journal~</filename></term>
|
||||
<varlistentry>
|
||||
<term><filename>/run/log/journal/<replaceable>machine-id</replaceable>/*.journal</filename></term>
|
||||
<term><filename>/run/log/journal/<replaceable>machine-id</replaceable>/*.journal~</filename></term>
|
||||
<term><filename>/var/log/journal/<replaceable>machine-id</replaceable>/*.journal</filename></term>
|
||||
<term><filename>/var/log/journal/<replaceable>machine-id</replaceable>/*.journal~</filename></term>
|
||||
|
||||
<listitem><para><command>systemd-journald</command>
|
||||
writes entries to files in
|
||||
<filename>/run/log/journal/<replaceable>machine-id</replaceable>/</filename>
|
||||
or
|
||||
<filename>/var/log/journal/<replaceable>machine-id</replaceable>/</filename>
|
||||
with the <literal>.journal</literal>
|
||||
suffix. If the daemon is stopped
|
||||
uncleanly, or if the files are found
|
||||
to be corrupted, they are renamed
|
||||
using the <literal>.journal~</literal>
|
||||
suffix, and
|
||||
<command>systemd-journald</command>
|
||||
starts writing to a new
|
||||
file. <filename>/run</filename> is
|
||||
used when
|
||||
<filename>/var/log/journal</filename>
|
||||
is not available, or when
|
||||
<option>Storage=volatile</option> is
|
||||
set in the
|
||||
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
configuration file.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
<listitem><para><command>systemd-journald</command> writes
|
||||
entries to files in
|
||||
<filename>/run/log/journal/<replaceable>machine-id</replaceable>/</filename>
|
||||
or
|
||||
<filename>/var/log/journal/<replaceable>machine-id</replaceable>/</filename>
|
||||
with the <literal>.journal</literal> suffix. If the daemon is
|
||||
stopped uncleanly, or if the files are found to be corrupted,
|
||||
they are renamed using the <literal>.journal~</literal>
|
||||
suffix, and <command>systemd-journald</command> starts writing
|
||||
to a new file. <filename>/run</filename> is used when
|
||||
<filename>/var/log/journal</filename> is not available, or
|
||||
when <option>Storage=volatile</option> is set in the
|
||||
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
configuration file. </para></listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-coredump</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>setfacl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
|
||||
<command>pydoc systemd.journal</command>.
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-coredump</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>setfacl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>sd_journal_print</refentrytitle><manvolnum>4</manvolnum></citerefentry>,
|
||||
<command>pydoc systemd.journal</command>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,67 +23,65 @@
|
||||
|
||||
<refentry id="systemd-localed.service" conditional='ENABLE_LOCALED'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-localed.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-localed.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-localed.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-localed.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-localed.service</refname>
|
||||
<refname>systemd-localed</refname>
|
||||
<refpurpose>Locale bus mechanism</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-localed.service</refname>
|
||||
<refname>systemd-localed</refname>
|
||||
<refpurpose>Locale bus mechanism</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-localed.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-localed</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-localed.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-localed</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-localed</filename> is a system
|
||||
service that may be used as mechanism to change the
|
||||
system locale settings, as well as the console key
|
||||
mapping and default X11 key
|
||||
mapping. <filename>systemd-localed</filename> is
|
||||
automatically activated on request and terminates
|
||||
itself when it is unused.</para>
|
||||
<para><filename>systemd-localed</filename> is a system service
|
||||
that may be used as mechanism to change the system locale
|
||||
settings, as well as the console key mapping and default X11 key
|
||||
mapping. <filename>systemd-localed</filename> is automatically
|
||||
activated on request and terminates itself when it is
|
||||
unused.</para>
|
||||
|
||||
<para>The tool
|
||||
<citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
is a command line client to this service.</para>
|
||||
<para>The tool
|
||||
<citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
is a command line client to this service.</para>
|
||||
|
||||
<para>See the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/localed">
|
||||
developer documentation</ulink> for information about
|
||||
the APIs <filename>systemd-localed</filename>
|
||||
provides.</para>
|
||||
</refsect1>
|
||||
<para>See the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/localed">
|
||||
developer documentation</ulink> for information about the APIs
|
||||
<filename>systemd-localed</filename> provides.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>locale.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loadkeys</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>locale.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>vconsole.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>localectl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loadkeys</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -23,109 +23,99 @@
|
||||
|
||||
<refentry id="systemd-logind.service" conditional='ENABLE_LOGIND'>
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-logind.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-logind.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-logind.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-logind.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-logind.service</refname>
|
||||
<refname>systemd-logind</refname>
|
||||
<refpurpose>Login manager</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-logind.service</refname>
|
||||
<refname>systemd-logind</refname>
|
||||
<refpurpose>Login manager</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-logind.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-logind</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-logind.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-logind</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-logind</command> is a system
|
||||
service that manages user logins. It is responsible
|
||||
for:</para>
|
||||
<para><command>systemd-logind</command> is a system service that
|
||||
manages user logins. It is responsible for:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>Keeping track of users and
|
||||
sessions, their processes and their idle
|
||||
state</para></listitem>
|
||||
<itemizedlist>
|
||||
<listitem><para>Keeping track of users and sessions, their
|
||||
processes and their idle state</para></listitem>
|
||||
|
||||
<listitem><para>Providing PolicyKit-based access
|
||||
for users to operations such as system
|
||||
shutdown or sleep</para></listitem>
|
||||
<listitem><para>Providing PolicyKit-based access for users to
|
||||
operations such as system shutdown or sleep</para></listitem>
|
||||
|
||||
<listitem><para>Implementing a shutdown/sleep
|
||||
inhibition logic for
|
||||
applications</para></listitem>
|
||||
<listitem><para>Implementing a shutdown/sleep inhibition logic
|
||||
for applications</para></listitem>
|
||||
|
||||
<listitem><para>Handling of power/sleep
|
||||
hardware keys</para></listitem>
|
||||
<listitem><para>Handling of power/sleep hardware
|
||||
keys</para></listitem>
|
||||
|
||||
<listitem><para>Multi-seat
|
||||
management</para></listitem>
|
||||
<listitem><para>Multi-seat management</para></listitem>
|
||||
|
||||
<listitem><para>Session
|
||||
switch management</para></listitem>
|
||||
<listitem><para>Session switch management</para></listitem>
|
||||
|
||||
<listitem><para>Device access management for
|
||||
users</para></listitem>
|
||||
<listitem><para>Device access management for
|
||||
users</para></listitem>
|
||||
|
||||
<listitem><para>Automatic spawning of text
|
||||
logins (gettys) on virtual console activation
|
||||
and user runtime directory
|
||||
management</para></listitem>
|
||||
</itemizedlist>
|
||||
<listitem><para>Automatic spawning of text logins (gettys) on
|
||||
virtual console activation and user runtime directory
|
||||
management</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>User sessions are registered in logind via the
|
||||
<citerefentry><refentrytitle>pam_systemd</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
PAM module.</para>
|
||||
<para>User sessions are registered in logind via the
|
||||
<citerefentry><refentrytitle>pam_systemd</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
PAM module.</para>
|
||||
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for information about the configuration of this
|
||||
service.</para>
|
||||
<para>See
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for information about the configuration of this service.</para>
|
||||
|
||||
<para>See <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/multiseat">Multi-Seat
|
||||
on Linux</ulink> for an introduction into basic
|
||||
concepts of logind such as users, sessions and seats.</para>
|
||||
<para>See <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/multiseat">Multi-Seat
|
||||
on Linux</ulink> for an introduction into basic concepts of logind
|
||||
such as users, sessions and seats.</para>
|
||||
|
||||
<para>See the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/logind">
|
||||
logind D-Bus API Documentation</ulink> for information about
|
||||
the APIs <filename>systemd-logind</filename>
|
||||
provides.</para>
|
||||
<para>See the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/logind">
|
||||
logind D-Bus API Documentation</ulink> for information about the
|
||||
APIs <filename>systemd-logind</filename> provides.</para>
|
||||
|
||||
<para>For more information on the inhibition logic see
|
||||
the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/inhibit">Inhibitor
|
||||
Lock Developer Documentation</ulink>.</para>
|
||||
</refsect1>
|
||||
<para>For more information on the inhibition logic see the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/inhibit">Inhibitor
|
||||
Lock Developer Documentation</ulink>.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-user-sessions.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>pam_systemd</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-user-sessions.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>loginctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>pam_systemd</refentrytitle><manvolnum>8</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -21,81 +21,80 @@
|
||||
-->
|
||||
<refentry id="systemd-machine-id-commit.service">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-machine-id-commit.service</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-machine-id-commit.service</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Didier</firstname>
|
||||
<surname>Roche</surname>
|
||||
<email>didrocks@ubuntu.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Didier</firstname>
|
||||
<surname>Roche</surname>
|
||||
<email>didrocks@ubuntu.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-machine-id-commit.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-machine-id-commit.service</refentrytitle>
|
||||
<manvolnum>8</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-machine-id-commit.service</refname>
|
||||
<refpurpose>Commit transient machine-id to disk</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-machine-id-commit.service</refname>
|
||||
<refpurpose>Commit transient machine-id to disk</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-machine-id-commit.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-machine-id-commit</filename></para>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<para><filename>systemd-machine-id-commit.service</filename></para>
|
||||
<para><filename>/usr/lib/systemd/systemd-machine-id-commit</filename></para>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><filename>systemd-machine-id-commit.service</filename> is
|
||||
a service responsible for committing any transient
|
||||
<filename>/etc/machine-id</filename> file to a writable file
|
||||
system. See
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for more information about this file.</para>
|
||||
<para><filename>systemd-machine-id-commit.service</filename> is a
|
||||
service responsible for committing any transient
|
||||
<filename>/etc/machine-id</filename> file to a writable file
|
||||
system. See
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for more information about this file.</para>
|
||||
|
||||
<para>This service is started shortly after
|
||||
<filename>local-fs.target</filename> if
|
||||
<filename>/etc/machine-id</filename> is an independent mount
|
||||
point (probably a tmpfs one) and /etc is writable.
|
||||
<command>systemd-machine-id-commit</command> will then
|
||||
write current machine ID to disk and unmount the transient
|
||||
<filename>/etc/machine-id</filename> file in a race-free
|
||||
manner to ensure that file is always valid for other
|
||||
processes.</para>
|
||||
<para>This service is started shortly after
|
||||
<filename>local-fs.target</filename> if
|
||||
<filename>/etc/machine-id</filename> is an independent mount point
|
||||
(probably a tmpfs one) and /etc is writable.
|
||||
<command>systemd-machine-id-commit</command> will then write
|
||||
current machine ID to disk and unmount the transient
|
||||
<filename>/etc/machine-id</filename> file in a race-free manner to
|
||||
ensure that file is always valid for other processes.</para>
|
||||
|
||||
<para>Note that the traditional way to initialize the machine
|
||||
ID in <filename>/etc/machine-id</filename> is to use
|
||||
<command>systemd-machine-id-setup</command> by system
|
||||
installer tools. You can also use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the machine ID on mounted (but not
|
||||
booted) system images. The main use case for that service is
|
||||
<filename>/etc/machine-id</filename> being an empty file at
|
||||
boot and initrd chaining to systemd giving it a read only file
|
||||
system that will be turned read-write later during the boot
|
||||
process.</para>
|
||||
<para>Note that the traditional way to initialize the machine ID
|
||||
in <filename>/etc/machine-id</filename> is to use
|
||||
<command>systemd-machine-id-setup</command> by system installer
|
||||
tools. You can also use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the machine ID on mounted (but not booted) system
|
||||
images. The main use case for that service is
|
||||
<filename>/etc/machine-id</filename> being an empty file at boot
|
||||
and initrd chaining to systemd giving it a read only file system
|
||||
that will be turned read-write later during the boot
|
||||
process.</para>
|
||||
|
||||
<para>There is no consequence if that service fails other than
|
||||
a newer machine-id will be generated during next system boot.
|
||||
</para>
|
||||
</refsect1>
|
||||
<para>There is no consequence if that service fails other than a
|
||||
newer machine-id will be generated during next system boot.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-commit</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-commit</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,104 +22,102 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-machine-id-commit"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-machine-id-commit</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-machine-id-commit</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Didier</firstname>
|
||||
<surname>Roche</surname>
|
||||
<email>didrocks@ubuntu.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Didier</firstname>
|
||||
<surname>Roche</surname>
|
||||
<email>didrocks@ubuntu.com</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-machine-id-commit</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-machine-id-commit</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-machine-id-commit</refname>
|
||||
<refpurpose>Commit transient machine ID to /etc/machine-id</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-machine-id-commit</refname>
|
||||
<refpurpose>Commit transient machine ID to /etc/machine-id</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-machine-id-commit</command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-machine-id-commit</command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-machine-id-commit</command> may
|
||||
be used to write on disk any transient machine ID
|
||||
mounted as a temporary file system in
|
||||
<filename>/etc/machine-id</filename> at boot time. See
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for more information about this file.</para>
|
||||
<para><command>systemd-machine-id-commit</command> may be used to
|
||||
write on disk any transient machine ID mounted as a temporary file
|
||||
system in <filename>/etc/machine-id</filename> at boot time. See
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for more information about this file.</para>
|
||||
|
||||
<para>This tool will execute no operation if
|
||||
<filename>/etc/machine-id</filename> doesn't contain any
|
||||
valid machine ID, isn't mounted as an independent temporary
|
||||
file system, of <filename>/etc</filename> is read-only. If
|
||||
those conditions are met, it will then write current machine ID
|
||||
to disk and unmount the transient
|
||||
<filename>/etc/machine-id</filename> file in a race-free
|
||||
manner to ensure that this file is always valid for other
|
||||
processes.</para>
|
||||
<para>This tool will execute no operation if
|
||||
<filename>/etc/machine-id</filename> doesn't contain any valid
|
||||
machine ID, isn't mounted as an independent temporary file system,
|
||||
of <filename>/etc</filename> is read-only. If those conditions are
|
||||
met, it will then write current machine ID to disk and unmount the
|
||||
transient <filename>/etc/machine-id</filename> file in a race-free
|
||||
manner to ensure that this file is always valid for other
|
||||
processes.</para>
|
||||
|
||||
<para>Note that the traditional way to initialize the machine
|
||||
ID in <filename>/etc/machine-id</filename> is to use
|
||||
<command>systemd-machine-id-setup</command> by system
|
||||
installer tools. You can also use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the machine ID on mounted (but not
|
||||
booted) system images.</para>
|
||||
</refsect1>
|
||||
<para>Note that the traditional way to initialize the machine ID
|
||||
in <filename>/etc/machine-id</filename> is to use
|
||||
<command>systemd-machine-id-setup</command> by system installer
|
||||
tools. You can also use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the machine ID on mounted (but not booted) system
|
||||
images.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--root=<replaceable>root</replaceable></option></term>
|
||||
<listitem><para>Takes a directory path
|
||||
as an argument. All paths will be
|
||||
prefixed with the given alternate
|
||||
<replaceable>root</replaceable> path,
|
||||
including config search paths.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--root=<replaceable>root</replaceable></option></term>
|
||||
<listitem><para>Takes a directory path
|
||||
as an argument. All paths will be
|
||||
prefixed with the given alternate
|
||||
<replaceable>root</replaceable> path,
|
||||
including config search paths.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-commit.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-commit.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-machine-id-setup</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version='1.0'?> <!--*-nxml-*-->
|
||||
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
|
||||
|
||||
<!--
|
||||
This file is part of systemd.
|
||||
@@ -22,115 +22,109 @@
|
||||
-->
|
||||
|
||||
<refentry id="systemd-machine-id-setup"
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
xmlns:xi="http://www.w3.org/2001/XInclude">
|
||||
|
||||
<refentryinfo>
|
||||
<title>systemd-machine-id-setup</title>
|
||||
<productname>systemd</productname>
|
||||
<refentryinfo>
|
||||
<title>systemd-machine-id-setup</title>
|
||||
<productname>systemd</productname>
|
||||
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
<authorgroup>
|
||||
<author>
|
||||
<contrib>Developer</contrib>
|
||||
<firstname>Lennart</firstname>
|
||||
<surname>Poettering</surname>
|
||||
<email>lennart@poettering.net</email>
|
||||
</author>
|
||||
</authorgroup>
|
||||
</refentryinfo>
|
||||
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-machine-id-setup</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
<refmeta>
|
||||
<refentrytitle>systemd-machine-id-setup</refentrytitle>
|
||||
<manvolnum>1</manvolnum>
|
||||
</refmeta>
|
||||
|
||||
<refnamediv>
|
||||
<refname>systemd-machine-id-setup</refname>
|
||||
<refpurpose>Initialize the machine ID in /etc/machine-id</refpurpose>
|
||||
</refnamediv>
|
||||
<refnamediv>
|
||||
<refname>systemd-machine-id-setup</refname>
|
||||
<refpurpose>Initialize the machine ID in /etc/machine-id</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-machine-id-setup</command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
<refsynopsisdiv>
|
||||
<cmdsynopsis>
|
||||
<command>systemd-machine-id-setup</command>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para><command>systemd-machine-id-setup</command> may
|
||||
be used by system installer tools to initialize the
|
||||
machine ID stored in
|
||||
<filename>/etc/machine-id</filename> at install time
|
||||
with a randomly generated ID. See
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for more information about this file.</para>
|
||||
<para><command>systemd-machine-id-setup</command> may be used by
|
||||
system installer tools to initialize the machine ID stored in
|
||||
<filename>/etc/machine-id</filename> at install time with a
|
||||
randomly generated ID. See
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>
|
||||
for more information about this file.</para>
|
||||
|
||||
<para>This tool will execute no operation if
|
||||
<filename>/etc/machine-id</filename> is already
|
||||
initialized.</para>
|
||||
<para>This tool will execute no operation if
|
||||
<filename>/etc/machine-id</filename> is already
|
||||
initialized.</para>
|
||||
|
||||
<para>If a valid D-Bus machine ID is already
|
||||
configured for the system, the D-Bus machine ID is
|
||||
copied and used to initialize the machine ID in
|
||||
<filename>/etc/machine-id</filename>.</para>
|
||||
<para>If a valid D-Bus machine ID is already configured for the
|
||||
system, the D-Bus machine ID is copied and used to initialize the
|
||||
machine ID in <filename>/etc/machine-id</filename>.</para>
|
||||
|
||||
<para>If run inside a KVM virtual machine and a UUID
|
||||
is passed via the <option>-uuid</option> option, this
|
||||
UUID is used to initialize the machine ID instead of a
|
||||
randomly generated one. The caller must ensure that the
|
||||
UUID passed is sufficiently unique and is different
|
||||
for every booted instanced of the VM.</para>
|
||||
<para>If run inside a KVM virtual machine and a UUID is passed via
|
||||
the <option>-uuid</option> option, this UUID is used to initialize
|
||||
the machine ID instead of a randomly generated one. The caller
|
||||
must ensure that the UUID passed is sufficiently unique and is
|
||||
different for every booted instanced of the VM.</para>
|
||||
|
||||
<para>Similar, if run inside a Linux container
|
||||
environment and a UUID is set for the container this
|
||||
is used to initialize the machine ID. For details see
|
||||
the documentation of the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface">Container
|
||||
Interface</ulink>.</para>
|
||||
<para>Similar, if run inside a Linux container environment and a
|
||||
UUID is set for the container this is used to initialize the
|
||||
machine ID. For details see the documentation of the <ulink
|
||||
url="http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface">Container
|
||||
Interface</ulink>.</para>
|
||||
|
||||
<para>Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the machine ID on mounted (but not
|
||||
booted) system images.</para>
|
||||
<para>Use
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
to initialize the machine ID on mounted (but not booted) system
|
||||
images.</para>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
<refsect1>
|
||||
<title>Options</title>
|
||||
|
||||
<para>The following options are understood:</para>
|
||||
<para>The following options are understood:</para>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--root=<replaceable>root</replaceable></option></term>
|
||||
<listitem><para>Takes a directory path
|
||||
as an argument. All paths will be
|
||||
prefixed with the given alternate
|
||||
<replaceable>root</replaceable> path,
|
||||
including config search paths.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>--root=<replaceable>root</replaceable></option></term>
|
||||
<listitem><para>Takes a directory path as an argument. All
|
||||
paths will be prefixed with the given alternate
|
||||
<replaceable>root</replaceable> path, including config search
|
||||
paths. </para></listitem>
|
||||
</varlistentry>
|
||||
<xi:include href="standard-options.xml" xpointer="help" />
|
||||
<xi:include href="standard-options.xml" xpointer="version" />
|
||||
</variablelist>
|
||||
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
<refsect1>
|
||||
<title>Exit status</title>
|
||||
|
||||
<para>On success, 0 is returned, a non-zero failure
|
||||
code otherwise.</para>
|
||||
</refsect1>
|
||||
<para>On success, 0 is returned, a non-zero failure code
|
||||
otherwise.</para>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>dbus-uuidgen</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
<refsect1>
|
||||
<title>See Also</title>
|
||||
<para>
|
||||
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>dbus-uuidgen</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
||||
<citerefentry><refentrytitle>systemd-firstboot</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refentry>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user