| <?xml version="1.0"?> <!--*- Mode: nxml; nxml-child-indent: 2; indent-tabs-mode: nil -*--> |
| <!DOCTYPE refsection PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" |
| "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"> |
| |
| <!-- |
| SPDX-License-Identifier: LGPL-2.1+ |
| |
| This file is part of systemd. |
| |
| Copyright 2015 Zbigniew Jędrzejewski-Szmek |
| Copyright 2014 Josh Triplett |
| |
| systemd is free software; you can redistribute it and/or modify it |
| under the terms of the GNU Lesser General Public License as published by |
| the Free Software Foundation; either version 2.1 of the License, or |
| (at your option) any later version. |
| |
| systemd is distributed in the hope that it will be useful, but |
| WITHOUT ANY WARRANTY; without even the implied warranty of |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| Lesser General Public License for more details. |
| |
| You should have received a copy of the GNU Lesser General Public License |
| along with systemd; If not, see <http://www.gnu.org/licenses/>. |
| --> |
| |
| <refsection> |
| <refsection id='confd'> |
| <title>Configuration Directories and Precedence</title> |
| |
| <para>Configuration files are read from directories in |
| <filename>/etc/</filename>, <filename>/run/</filename>, and |
| <filename>/usr/lib/</filename>, in order of precedence. |
| Each configuration file in these configuration directories shall be named in |
| the style of <filename><replaceable>filename</replaceable>.conf</filename>. |
| Files in <filename>/etc/</filename> override files with the same name in |
| <filename>/run/</filename> and <filename>/usr/lib/</filename>. Files in |
| <filename>/run/</filename> override files with the same name in |
| <filename>/usr/lib/</filename>.</para> |
| |
| <para>Packages should install their configuration files in |
| <filename>/usr/lib/</filename>. Files in <filename>/etc/</filename> are |
| reserved for the local administrator, who may use this logic to override the |
| configuration files installed by vendor packages. All configuration files |
| are sorted by their filename in lexicographic order, regardless of which of |
| the directories they reside in. If multiple files specify the same option, |
| the entry in the file with the lexicographically latest name will take |
| precedence. It is recommended to prefix all filenames with a two-digit number |
| and a dash, to simplify the ordering of the files.</para> |
| |
| <para>If the administrator wants to disable a configuration file supplied by |
| the vendor, the recommended way is to place a symlink to |
| <filename>/dev/null</filename> in the configuration directory in |
| <filename>/etc/</filename>, with the same filename as the vendor |
| configuration file. If the vendor configuration file is included in |
| the initrd image, the image has to be regenerated.</para> |
| </refsection> |
| |
| <refsection id='main-conf'> |
| <title>Configuration Directories and Precedence</title> |
| |
| <para>The default configuration is defined during compilation, so a |
| configuration file is only needed when it is necessary to deviate |
| from those defaults. By default, the configuration file in |
| <filename>/etc/systemd/</filename> contains commented out entries |
| showing the defaults as a guide to the administrator. This file |
| can be edited to create local overrides. |
| </para> |
| |
| <para>When packages need to customize the configuration, they can |
| install configuration snippets in |
| <filename>/usr/lib/systemd/*.conf.d/</filename>. Files in |
| <filename>/etc/</filename> are reserved for the local |
| administrator, who may use this logic to override the |
| configuration files installed by vendor packages. The main |
| configuration file is read before any of the configuration |
| directories, and has the lowest precedence; entries in a file in |
| any configuration directory override entries in the single |
| configuration file. Files in the <filename>*.conf.d/</filename> |
| configuration subdirectories are sorted by their filename in lexicographic |
| order, regardless of which of the subdirectories they reside in. When |
| multiple files specify the same option, for options which accept just a |
| single value, the entry in the file with the lexicographically latest name |
| takes precedence. For options which accept a list of values, entries are |
| collected as they occur in files sorted lexicographically. It is recommended |
| to prefix all filenames in those subdirectories with a two-digit number and |
| a dash, to simplify the ordering of the files.</para> |
| |
| <para>To disable a configuration file supplied by the vendor, the |
| recommended way is to place a symlink to |
| <filename>/dev/null</filename> in the configuration directory in |
| <filename>/etc/</filename>, with the same filename as the vendor |
| configuration file.</para> |
| </refsection> |
| </refsection> |