Copyright 2011 Lennart Poettering
systemd is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
+ 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
- General Public License for more details.
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
+ You should have received a copy of the GNU Lesser General Public License
along with systemd; If not, see <http://www.gnu.org/licenses/>.
-->
-<refentry id="binfmt.d">
+<refentry id="binfmt.d" conditional='ENABLE_BINFMT'>
<refentryinfo>
<title>binfmt.d</title>
<refnamediv>
<refname>binfmt.d</refname>
- <refpurpose>Configure additional binary formats at boot</refpurpose>
+ <refpurpose>Configure additional binary formats for
+ executables at boot</refpurpose>
</refnamediv>
<refsynopsisdiv>
- <para><filename>/usr/lib/binfmt.d/*.conf</filename></para>
<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>
- <para><command>systemd</command> uses
- files from the above directories to configure
- additional binary formats to register during boot in
- the kernel. Each configuration file is named in the
- style of
- <filename><program>.conf</filename>.</para>
+ <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>
+ <title>Configuration Format</title>
<para>Each file contains a list of binfmt_misc kernel
binary format rules. Consult <ulink
- url="http://www.kernel.org/doc/Documentation/binfmt_misc.txt">binfmt_misc.txt</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>
ignored. Note that this means you may not use ; and #
as delimiter in binary format rules.</para>
- <para>Files in <filename>/etc/</filename> overwrite
- files with the same name in <filename>/usr/lib/</filename>.
- Files in <filename>/run</filename> overwrite files with
- the same name in <filename>/etc/</filename> and
- <filename>/usr/lib/</filename>. Packages should install their
- configuration files in <filename>/usr/lib/</filename>, files
- in <filename>/etc/</filename> are reserved for the local
- administration, which possibly decides to overwrite the
- configurations installed from packages. All files are sorted
- by filename in alphabetical order, regardless in which of the
- directories they reside, to ensure that a specific
- configuration file takes precedence over another file with
- an alphabetically later name.</para>
+ <para>Each configuration file shall be named in the
+ style of <filename><replaceable>program</replaceable>.conf</filename>.
+ Files in <filename>/etc/</filename> override files
+ with the same name in <filename>/usr/lib/</filename>
+ and <filename>/run/</filename>. Files in
+ <filename>/run/</filename> override files with the
+ same name in <filename>/usr/lib/</filename>. 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 from vendor
+ packages. All files are sorted by their filename in
+ lexicographic order, regardless of which of the
+ directories they reside in. If multiple files specify
+ the same binary type name, the entry in the file with
+ the lexicographically latest name will be applied.</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
+ <filename>/etc/binfmt.d/</filename> bearing the
+ same filename.</para>
</refsect1>
<refsect1>
<title>See Also</title>
<para>
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>wine</refentrytitle><manvolnum>8</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>