jammy (5) sysctl.d.5.gz

Provided by: manpages-de_4.13-4_all bug

BEZEICHNUNG

       sysctl.d - Kernel-Parameter beim Systemstart konfigurieren

ÜBERSICHT

       /etc/sysctl.d/*.conf

       /run/sysctl.d/*.conf

       /usr/lib/sysctl.d/*.conf

       Schlüssel.Name.unter.proc.sys = ein Wert
       Schlüssel/Name/unter/proc/sys = ein Wert
       Schlüssel/mittel.Teil.mit.Punkten/foo = 123
       Schlüssel.mittel/Teil/mit/Punkten.foo = 123
       -Schlüssel.der.nicht.fehlschlagen.wird = Wert
       Schlüssel.Muster.*.mit.Glob = irgendwas
       -Schlüssel.Muster.ausgeschlossen.mit.Glob
       Schlüssel.Muster.außerkraftgesetzt.mit.Glob = angepasst

BESCHREIBUNG

       Beim Systemstart liest systemd-sysctl.service(8) Konfigurationsdateien aus den obigen Verzeichnissen, um
       sysctl(8)-Kernelparameter zu konfigurieren.

KONFIGURATIONSFORMAT

       Die Konfigurationsdateien enthalten eine Liste von durch Zeilenumbrüchen getrennten Variablenzuweisungen.
       Leere Zeilen und Zeilen, deren erstes von Leerraumzeichen verschiedenes Zeichen ein »#« oder »;« ist,
       werden ignoriert.

       Beachten Sie, dass entweder »/« oder ».« als Trenner innerhalb von Sysctl-Variablennamen benutzt werden
       kann. Falls der erste Trenner ein Schrägstrich ist, werden die restlichen Schrägstriche und Punkte
       unverändert gelassen. Falls der erste Trenner ein Punkt ist, werden Punkte und Schrägstriche
       ausgetauscht. »kernel.domainname=foo« und »kernel/domainname=foo« sind äquivalent und führen dazu, dass
       »foo« nach /proc/sys/kernel/domainname geschrieben wird. Sowohl »net.ipv4.conf.enp3s0/200.forwarding« als
       auch »net/ipv4/conf/enp3s0.200/forwarding« beziehen sich auf
       /proc/sys/net/ipv4/conf/enp3s0.200/forwarding. Zum Schreiben des gleichen Wertes in alle passenden
       Schlüssel kann ein glob(7)-Muster benutzt werden. Schlüssel, für die ein explizites Muster existiert,
       werden von sämtlichen Glob-Vergleichen ausgeschlossen. Zusätzlich kann das Setzen eines Schlüssels
       explizit ausgeschlossen werden, indem der Schlüsselname mit vorangestelltem »-« angegeben wird und ihm
       kein »=« folgt, siehe ÜBERSICHT.

       Sämtliche Berechtigungsfehler und Versuche, Variablen zu schreiben, die auf dem lokalen System nicht
       vorhanden sind, werden auf der Debug-Stufe protokolliert, führen aber nicht zum Fehlschlag des Dienstes.
       Andere Fehlertypen beim Setzen von Variablen werden mit höherer Priorität protokolliert und führen dazu,
       dass der Dienst am Ende einen Fehlschlag zurückliefert (nachdem andere Variablen verarbeitet wurden).
       Wird einer Variablenzuweisung ein einzelnes »-«-Zeichen vorangestellt, so werden abweichend davon Fehler
       aus beliebigen Gründen, die Variable zu setzen, auf der Stufe »debug« protokolliert und dies wird nicht
       zu einem Fehlschlag des Dienstes führen.

       Die mit den sysctl.d-Dateien konfigurierten Einstellungen werden früh während des Systemstarts angewandt.
       Die Netzwerkschnittstellen-spezifischen Optionen werden auch individuell auf jede Netzschnittstelle
       angewandt, wenn diese im System auftaucht. (Genauer net.ipv4.conf.*, net.ipv6.conf.*, net.ipv4.neigh.*
       and net.ipv6.neigh.*).

       Viele Sysctl-Parameter werden nur verfügbar, wenn bestimmte Kernelmodule geladen werden. Module werden
       normalerweise bei Bedarf geladen, z.B. wenn bestimmte Hardware eingesteckt oder das Netz aktiviert wird.
       Dies bedeutet, dass systemd-sysctl.service(8), das während der frühen Systemstartphase läuft, solche
       Parameter nicht konfigurieren wird, nachdem es ausgeführt wurde. Um solche Parameter zu setzen, wird
       empfohlen, eine udev(7)-Regel hinzuzufügen, um diese Parameter zu setzen, wenn diese verfügbar werden.
       Alternativ ist eine leicht einfachere und weniger effiziente Option, die Module zu modules-load.d(5)
       hinzuzufügen, wodurch diese statisch geladen werden, bevor die Sysctl-Einstellungen angewandt werden
       (siehe Beispiel unten).

KONFIGURATIONSVERZEICHNISSE UND RANGFOLGE

       Konfigurationsdateien werden aus Verzeichnissen in /etc/, /run/, /usr/local/lib/ und /lib/, in dieser
       Rangfolge, gelesen, wie im Abschnitt ÜBERSICHT oben aufgeführt. Dateien müssen die Endung ».conf« haben.
       Dateien in /etc/ setzen Dateien mit dem gleichen Namen in /run/, /usr/local/lib/ und /lib/ außer Kraft.
       Dateien in /run/ setzen Dateien mit dem gleichen Namen unter /usr/lib/ außer Kraft.

       Alle Konfigurationsdateien werden in lexikographischer Reihenfolge sortiert, unabhängig davon, in welchem
       Verzeichnis sie sich befinden. Falls mehrere Dateien die gleiche Option angeben, wird der Eintrag in der
       Datei mit dem lexikographisch letzten Namen Vorrang erhalten. Daher kann die Konfiguration in einer
       bestimmten Datei entweder komplett ersetzt werden (indem eine Datei mit dem gleichen Namen in einem
       Verzeichnis mit höherer Priorität abgelegt wird) oder einzelne Einstellungen können geändert werden
       (indem zusätzliche Einstellungen in einer Datei mit einem anderen Namen, der später angeordnet ist,
       angegeben werden).

       Pakete sollten ihre Konfigurationsdateien in /usr/lib/ (Distributionspakete) oder /usr/local/lib/ (lokale
       Installationen) installieren. Dateien in /etc/ sind für den lokalen Administrator reserviert, der diese
       Logik verwenden kann, um die durch die Lieferantenpakete bereitgestellten Konfigurationsdateien außer
       Kraft zu setzen. Es wird empfohlen, allen Dateinamen eine zweistellige Zahl und einen Bindestrich
       voranzustellen, um die Sortierung der Dateien zu vereinfachen.

       Falls der Administrator eine vom Lieferanten bereitgestellte Konfigurationsdatei deaktivieren möchte,
       wird empfohlen, einen Symlink im Konfigurationsverzeichnis in /etc/ mit dem gleichen Dateinamen wie die
       des Lieferanten auf /dev/null zu setzen. Falls die Lieferantendatei im Initrd-Image enthalten ist, muss
       das Image neu erstellt werden.

BEISPIELE

       Beispiel 1. Den YP-Domain-Namen des Kernels setzen

       /etc/sysctl.d/domain-name.conf:

           kernel.domainname=example.com

       Beispiel 2. Einstellungen nur anwenden, wenn ein bestimmtes Modul geladen ist (Methode eins)

       /etc/udev/rules.d/99-bridge.rules:

           ACTION=="add", SUBSYSTEM=="module", KERNEL=="br_netfilter", \
                 RUN+="/lib/systemd/systemd-sysctl --prefix=/net/bridge"

       /etc/sysctl.d/bridge.conf:

           net.bridge.bridge-nf-call-ip6tables = 0
           net.bridge.bridge-nf-call-iptables = 0
           net.bridge.bridge-nf-call-arptables = 0

       Diese Methode wendet die Einstellungen an, wenn das Modul geladen wird. Bitte beachten Sie, dass über
       Bridges weitergeleitete Pakete durch Netfilter nicht gefiltert werden, außer das Modul »br_netfilter« ist
       geladen (seit Kernel 3.18), daher reicht es aus, das Modul einfach nicht zu laden, um das Filtern zu
       vermeiden.

       Beispiel 3. Einstellungen nur anwenden, wenn ein bestimmtes Modul geladen ist (Methode zwei)

       /etc/modules-load.d/bridge.conf:

           br_netfilter

       /etc/sysctl.d/bridge.conf:

           net.bridge.bridge-nf-call-ip6tables = 0
           net.bridge.bridge-nf-call-iptables = 0
           net.bridge.bridge-nf-call-arptables = 0

       Diese Methode erzwingt, dass das Modul immer geladen wird. Bitte beachten Sie, dass über Bridges
       weitergeleitete Pakete durch Netfilter nicht gefiltert werden, außer das Modul »br_netfilter« ist geladen
       (seit Kernel 3.18), daher reicht es aus, das Modul einfach nicht zu laden, um das Filtern zu vermeiden.

       Beispiel 4. Setzen von Netzwerk-Routing-Eigenschaften für alle Schnittstellen

       /etc/sysctl.d/20-rp_filter.conf:

           net.ipv4.conf.default.rp_filter = 2
           net.ipv4.conf.*.rp_filter = 2
           -net.ipv4.conf.all.rp_filter
           net.ipv4.conf.hub0.rp_filter = 1

       Der Schlüssel rp_filter wird für alle Schnittstellen außer »hub0« auf »2« gesetzt. Wir setzen zuerst
       net.ipv4.conf.default.rp_filter, damit alle später hinzugefügten Schnittstellen diesen Wert erhalten
       (dies deckt auch alle während des Betriebs erkannten Schnittstellen ab). Der Glob passt auf alle früher
       erkannten Schnittstellen. Der Glob passt auch auf net.ipv4.conf.all.rp_filter, der überhaupt nicht
       gesetzt werden soll und daher explizit ausgeschlossen wird. Und »hub0« ist von dem Glob ausgeschlossen,
       da er eine explizite Einstellung hat.

SIEHE AUCH

       systemd(1), systemd-sysctl.service(8), systemd-delta(1), sysctl(8), sysctl.conf(5), modprobe(8)

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.

       Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE
       HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die
       Mailingliste der Übersetzer ⟨debian-l10n-german@lists.debian.org⟩.