3 <!DOCTYPE refentry PUBLIC
"-//OASIS//DTD DocBook XML V4.5//EN"
4 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
5 <!-- SPDX-License-Identifier: LGPL-2.1-or-later -->
6 <refentry id=
"systemd-sysctl.service"
7 xmlns:
xi=
"http://www.w3.org/2001/XInclude">
10 <title>systemd-sysctl.service
</title>
11 <productname>systemd
</productname>
15 <refentrytitle>systemd-sysctl.service
</refentrytitle>
16 <manvolnum>8</manvolnum>
20 <refname>systemd-sysctl.service
</refname>
21 <refname>systemd-sysctl
</refname>
22 <refpurpose>Configure kernel parameters at boot
</refpurpose>
27 <command>/usr/lib/systemd/systemd-sysctl
</command>
28 <arg choice=
"opt" rep=
"repeat">OPTIONS
</arg>
29 <arg choice=
"opt" rep=
"repeat"><replaceable>CONFIGFILE
</replaceable></arg>
31 <para><filename>systemd-sysctl.service
</filename></para>
35 <title>Description
</title>
37 <para><filename>systemd-sysctl.service
</filename> is an early boot
38 service that configures
39 <citerefentry project='man-pages'
><refentrytitle>sysctl
</refentrytitle><manvolnum>8</manvolnum></citerefentry>
40 kernel parameters by invoking
<command>/usr/lib/systemd/systemd-sysctl
</command>.
</para>
42 <para>When invoked with no arguments,
<command>/usr/lib/systemd/systemd-sysctl
</command> applies
43 all directives from configuration files listed in
44 <citerefentry><refentrytitle>sysctl.d
</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
45 If one or more filenames are passed on the command line, only the directives in these files are
48 <para>In addition,
<option>--prefix=
</option> option may be used to limit which sysctl
49 settings are applied.
</para>
52 <citerefentry><refentrytitle>sysctl.d
</refentrytitle><manvolnum>5</manvolnum></citerefentry>
53 for information about the configuration of sysctl settings. After sysctl configuration is
54 changed on disk, it must be written to the files in
<filename>/proc/sys/
</filename> before it
55 takes effect. It is possible to update specific settings, or simply to reload all configuration,
56 see Examples below.
</para>
59 <refsect1><title>Options
</title>
61 <varlistentry id='prefix'
>
62 <term><option>--prefix=
</option></term>
64 <para>Only apply rules with the specified prefix.
</para>
66 <xi:include href=
"version-info.xml" xpointer=
"v230"/>
69 <varlistentry id='strict'
>
70 <term><option>--strict=
</option></term>
72 <para>Always return non-zero exit code on failure (including invalid sysctl variable
73 name and insufficient permissions), unless the sysctl variable name is prefixed with a
"-"
76 <xi:include href=
"version-info.xml" xpointer=
"v252"/>
80 <xi:include href=
"standard-options.xml" xpointer=
"cat-config" />
81 <xi:include href=
"standard-options.xml" xpointer=
"tldr" />
82 <xi:include href=
"standard-options.xml" xpointer=
"no-pager" />
83 <xi:include href=
"standard-options.xml" xpointer=
"help" />
84 <xi:include href=
"standard-options.xml" xpointer=
"version" />
90 <title>Credentials
</title>
92 <para><command>systemd-sysctl
</command> supports the service credentials logic as implemented by
93 <varname>ImportCredential=
</varname>/
<varname>LoadCredential=
</varname>/
<varname>SetCredential=
</varname>
94 (see
<citerefentry><refentrytitle>systemd.exec
</refentrytitle><manvolnum>1</manvolnum></citerefentry> for
95 details). The following credentials are used when passed in:
</para>
97 <variablelist class='system-credentials'
>
99 <term><varname>sysctl.extra
</varname></term>
101 <listitem><para>The contents of this credential may contain additional lines to operate on. The
102 credential contents should follow the same format as any other
<filename>sysctl.d/
</filename> drop-in
103 configuration file. If this credential is passed it is processed after all of the drop-in files read
104 from the file system. The settings configured in the credential hence take precedence over those in
105 the file system.
</para>
107 <xi:include href=
"version-info.xml" xpointer=
"v252"/></listitem>
111 <para>Note that by default the
<filename>systemd-sysctl.service
</filename> unit file is set up to inherit
112 the
<literal>sysctl.extra
</literal> credential from the service manager.
</para>
116 <title>Examples
</title>
119 <title>Reset all sysctl settings
</title>
121 <programlisting>systemctl restart systemd-sysctl
</programlisting>
125 <title>View coredump handler configuration
</title>
127 <programlisting># sysctl kernel.core_pattern
128 kernel.core_pattern = |/usr/libexec/abrt-hook-ccpp %s %c %p %u %g %t %P %I
133 <title>Update coredump handler configuration
</title>
135 <programlisting># /usr/lib/systemd/systemd-sysctl --prefix kernel.core_pattern
</programlisting>
137 <para>This searches all the directories listed in
138 <citerefentry><refentrytitle>sysctl.d
</refentrytitle><manvolnum>5</manvolnum></citerefentry>
139 for configuration files and writes
<filename>/proc/sys/kernel/core_pattern
</filename>.
</para>
143 <title>Update coredump handler configuration according to a specific file
</title>
145 <programlisting># /usr/lib/systemd/systemd-sysctl
50-coredump.conf
</programlisting>
147 <para>This applies all the settings found in
<filename>50-coredump.conf
</filename>.
148 Either
<filename>/etc/sysctl.d/
50-coredump.conf
</filename>, or
149 <filename>/run/sysctl.d/
50-coredump.conf
</filename>, or
150 <filename>/usr/lib/sysctl.d/
50-coredump.conf
</filename> will be used, in the order
151 of preference.
</para>
155 <citerefentry project='man-pages'
><refentrytitle>sysctl
</refentrytitle><manvolnum>8</manvolnum></citerefentry>
156 for various ways to directly apply sysctl settings.
</para>
160 <title>See Also
</title>
162 <citerefentry><refentrytitle>systemd
</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
163 <citerefentry><refentrytitle>sysctl.d
</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
164 <citerefentry project='man-pages'
><refentrytitle>sysctl
</refentrytitle><manvolnum>8</manvolnum></citerefentry>