chiark / gitweb /
man: networkd - add documentation
authorTom Gundersen <teg@jklm.no>
Sun, 10 Nov 2013 19:52:53 +0000 (20:52 +0100)
committerTom Gundersen <teg@jklm.no>
Sun, 10 Nov 2013 20:30:18 +0000 (21:30 +0100)
Makefile-man.am
make-directive-index.py
man/systemd-networkd.service.xml [new file with mode: 0644]

index 0939bc5..6239651 100644 (file)
@@ -62,6 +62,7 @@ MANPAGES += \
        man/systemd-initctl.service.8 \
        man/systemd-journald.service.8 \
        man/systemd-machine-id-setup.1 \
+       man/systemd-networkd.service.8 \
        man/systemd-notify.1 \
        man/systemd-nspawn.1 \
        man/systemd-remount-fs.service.8 \
@@ -186,6 +187,7 @@ MANPAGES_ALIAS += \
        man/systemd-journald.8 \
        man/systemd-journald.socket.8 \
        man/systemd-kexec.service.8 \
+       man/systemd-networkd.8 \
        man/systemd-poweroff.service.8 \
        man/systemd-reboot.service.8 \
        man/systemd-remount-fs.8 \
@@ -287,6 +289,7 @@ man/systemd-initctl.socket.8: man/systemd-initctl.service.8
 man/systemd-journald.8: man/systemd-journald.service.8
 man/systemd-journald.socket.8: man/systemd-journald.service.8
 man/systemd-kexec.service.8: man/systemd-halt.service.8
+man/systemd-networkd.8: man/systemd-networkd.service.8
 man/systemd-poweroff.service.8: man/systemd-halt.service.8
 man/systemd-reboot.service.8: man/systemd-halt.service.8
 man/systemd-remount-fs.8: man/systemd-remount-fs.service.8
@@ -554,6 +557,9 @@ man/systemd-journald.socket.html: man/systemd-journald.service.html
 man/systemd-kexec.service.html: man/systemd-halt.service.html
        $(html-alias)
 
+man/systemd-networkd.html: man/systemd-networkd.service.html
+       $(html-alias)
+
 man/systemd-poweroff.service.html: man/systemd-halt.service.html
        $(html-alias)
 
index b2dd2e1..2ff304f 100755 (executable)
@@ -90,7 +90,8 @@ TEMPLATE = '''\
                 <title>Network directives</title>
 
                 <para>Directives for configuring network links through the
-                net-setup-link udev builtin.</para>
+                net-setup-link udev builtin and networks through
+                systemd-networkd.</para>
 
                 <variablelist id='network-directives' />
         </refsect1>
diff --git a/man/systemd-networkd.service.xml b/man/systemd-networkd.service.xml
new file mode 100644 (file)
index 0000000..209e3be
--- /dev/null
@@ -0,0 +1,179 @@
+<?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">
+
+<!--
+  This file is part of systemd.
+
+  Copyright 2013 Tom Gundersen
+
+  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/>.
+-->
+
+<refentry id="systemd-networkd.service">
+
+        <refentryinfo>
+                <title>systemd-networkd.service</title>
+                <productname>systemd</productname>
+
+                <authorgroup>
+                        <author>
+                                <contrib>Developer</contrib>
+                                <firstname>Tom</firstname>
+                                <surname>Gundersen</surname>
+                                <email>teg@jklm.no</email>
+                        </author>
+                </authorgroup>
+        </refentryinfo>
+
+        <refmeta>
+                <refentrytitle>systemd-networkd.service</refentrytitle>
+                <manvolnum>8</manvolnum>
+        </refmeta>
+
+        <refnamediv>
+                <refname>systemd-networkd.service</refname>
+                <refname>systemd-networkd</refname>
+                <refpurpose>Network manager</refpurpose>
+        </refnamediv>
+
+        <refsynopsisdiv>
+                <para><filename>systemd-networkd.service</filename></para>
+                <para><filename>/usr/lib/systemd/systemd-networkd</filename></para>
+        </refsynopsisdiv>
+
+        <refsect1>
+                <title>Description</title>
+
+                <para><command>systemd-networkd</command> is a system
+                service that manages networks. It detects and configures
+                network devices as they appear.</para>
+
+                <para>Network devices are managed by networkd only if they
+                have the udev tag <literal>systemd-networkd</literal>.</para>
+
+                <para>Network configurations applied before networkd is started
+                are not removed, and configuration applied by networkd are not
+                removed when networkd exits. This ensures restarting networkd
+                does not cut the network connection, and in particular that it
+                is safe to transition between the initrd and the real root,
+                and back.</para>
+        </refsect1>
+
+        <refsect1><title>Network Configuration</title>
+                <para>The network files are read from the files located in the
+                system network directory <filename>/usr/lib/systemd/network</filename>,
+                the volatile runtime network directory
+                <filename>/run/systemd/network</filename> and the local administration
+                network directory <filename>/etc/systemd/network</filename>.
+                All link files are collectively sorted and processed in lexical order,
+                regardless of the directories in which they live. However, files with
+                identical filenames replace each other. Files in
+                <filename>/etc</filename> have the highest priority, files in
+                <filename>/run</filename> take precedence over files with the same
+                name in <filename>/lib</filename>. This can be used to override a
+                system-supplied network file with a local file if needed; a symlink in
+                <filename>/etc</filename> with the same name as a network file in
+                <filename>/lib</filename>, pointing to <filename>/dev/null</filename>,
+                disables the network file entirely. Network files must have the extension
+                <filename>.network</filename>; other extensions are ignored.</para>
+
+                <para>The network file contains a <literal>[Match]</literal> section,
+                which determines if a given network file may be applied to a given device;
+                and a <literal>[Network]</literal> section specifying how the device should
+                be configured. The first (in lexical order) of the network files that
+                matches a given device is applied.</para>
+
+                <para>A network file is said to match a device if each of the entries in the
+                <literal>[Match]</literal> section matches, or if the section is empty.
+                The following keys are accepted:</para>
+
+                <variablelist class='network-directives'>
+                        <varlistentry>
+                                <term><varname>MACAddress</varname></term>
+                                <listitem>
+                                        <para>The hardware address.</para>
+                                </listitem>
+                        </varlistentry>
+                        <varlistentry>
+                                <term><varname>Path</varname></term>
+                                <listitem>
+                                        <para>The persistent path, as exposed by the udev
+                                        property <literal>ID_PATH</literal>.</para>
+                                </listitem>
+                        </varlistentry>
+                        <varlistentry>
+                                <term><varname>Driver</varname></term>
+                                <listitem>
+                                        <para>The driver currently bound to the device, as
+                                        exposed by the udev property <literal>DRIVER</literal>.
+                                        </para>
+                                </listitem>
+                        </varlistentry>
+                        <varlistentry>
+                                <term><varname>Type</varname></term>
+                                <listitem>
+                                        <para>The device type, as exposed by the udev property
+                                        <literal>DEVTYPE</literal>.</para>
+                                </listitem>
+                        </varlistentry>
+                        <varlistentry>
+                                <term><varname>Name</varname></term>
+                                <listitem>
+                                        <para>The device name, as exposed by the udev property
+                                        <literal>INTERFACE</literal>.</para>
+                                </listitem>
+                        </varlistentry>
+                </variablelist>
+
+                <para>The <literal>[Network]</literal> section accepts the following keys:</para>
+
+                <variablelist class='network-directives'>
+                        <varlistentry>
+                                <term><varname>Description</varname></term>
+                                <listitem>
+                                        <para>A description of the device. This is only used for
+                                        presentation purposes.</para>
+                                </listitem>
+                        </varlistentry>
+                        <varlistentry>
+                                <term><varname>Address</varname></term>
+                                <listitem>
+                                        <para>A static IPv4 or IPv6 address and its prefix length,
+                                        separated by a '/' character. The format of the address must
+                                        be as described in
+                                        <citerefentry><refentrytitle>inet_pton</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                        .</para>
+                                </listitem>
+                        </varlistentry>
+                        <varlistentry>
+                                <term><varname>Gateway</varname></term>
+                                <listitem>
+                                        <para>The gateway address, which must be in the format described in
+                                        <citerefentry><refentrytitle>inet_pton</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+                                        .</para>
+                                </listitem>
+                        </varlistentry>
+               </variablelist>
+        </refsect1>
+
+        <refsect1>
+                <title>See Also</title>
+                <para>
+                        <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+                        <citerefentry><refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
+                </para>
+        </refsect1>
+
+</refentry>