SYSTEMD.SYNTAX(7)

BEZEICHNUNG
systemd.syntax - Allgemeine Syntax von Systemd-Konfigurationsdateien

EINFÜHRUNG

Diese Seite beschreibt die grundlegenden Prinzipien von durch systemd(1) und verwandten Programmen benutzten Konfigurationsdateien für:

    • Systemd-Unit-Dateien, siehe systemd.unit(5), systemd.service(5), systemd.socket(5), systemd.device(5), systemd.mount(5), systemd.automount(5), systemd.swap(5), systemd.target(5), systemd.path(5), systemd.timer(5), systemd.slice(5), systemd.scope(5)

    • Link-Dateien, siehe systemd.link(5)

    • Netdev- und Netzwerk-Dateien, siehe systemd.netdev(5), systemd.network(5)

    • Daemon-Konfigurationsdateien, siehe systemd-system.conf(5), systemd-user.conf(5), logind.conf(5), journald.conf(5), journal-remote.conf(5), journal-upload.conf(5), systemd-sleep.conf(5), timesyncd.conf(5)

    • Nspawn-Dateien, siehe systemd.nspawn(5)

Die Syntax ist durch die XDG Desktop Eintrag-Spezifikation[1] für .desktop-Dateien inspiriert, die wiederum durch Microsoft Windows .ini-Dateien inspiriert wurden.

Jede Datei ist eine reine Textdatei und in Abschnitte gegliedert, mit Konfigurationseinträgen der Art Schlüssel=Wert. Leerraum unmittelbar vor oder nach dem »=« wird ignoriert. Leere Zeilen und solche, die mit »#« oder »;« beginnen, werden ignoriert, was zum Kommentieren verwandt werden kann.

Zeilen, die in einem Rückwärtsschrägstrich enden, werden mit der nachfolgenden Zeile beim Lesen verbunden und der Rückwärtsschrägstrich wird durch ein Leerzeichen ersetzt. Dies kann zum Umbruch langer Zeilen verwandt werden. Die maximale Zeilenlänge ist sehr groß (derzeit 1 MB), aber es wird empfohlen, so lange Zeilen zu vermeiden und mehrere Anweisungen, Variablenersetzung oder andere geeignete Mechanismen für den vorgegebenen Dateityp zu verwenden. Wenn eine Kommentarzeile oder -zeilen einer auf einen Rückwärtsschrägstrich endenden Zeile folgt, wird der Kommentarblock ignoriert, so dass die fortgesetzte Zeile mit dem verbunden wird, was nach dem Kommentarblock folgt.

Beispiel 1.

    [Abschnitt A]
    Schlüssel1=Wert 1
    Schlüssel2=Wert 2
    # ein Kommentar
    [Abschnitt B]
    Einstellung="etwas" "etwas anderes" "…"
    Schlüssel2=Wert 2 \
               Wert 2 fortgesetzt
    [Abschnitt C]
    Schlüssel3=Wert 3\
    # diese Zeile wird ignoriert
    ; diese Zeile wird auch ignoriert
               Wert 3 forgesetzt

In Konfigurationsdateien verwandte logische Argumente können in verschiedenen Formaten geschrieben werden. Für positive Einstellungen sind die Zeichenketten 1, yes, true und on äquivalent. Für negative Einstellungen sind die Zeichenketten 0, no, false und off äquivalent.

In Konfigurationsdateien kodierte Zeitdauerwerte können in verschiedenen Formaten geschrieben werden. Falls ihnen eine Zeiteinheit (auf Englisch) angehängt wird, wird diese berücksichtigt. Eine Zusammenfügung mehrerer Werte mit Einheiten wird unterstützt, in diesem Fall werden die Werte aufaddiert. Beispiel: »50« bezieht sich auf 50 Sekunden; »2min 200ms« bezieht sich auf 2 Minuten und 200 Millisekunden; d. h. 120200 ms. Die folgenden Zeiteinheiten werden verstanden: »s«, »min«, »h«, »d«, »w«, »ms«, »us«. Für Details siehe systemd.time(7).

Verschiedene Einstellungen dürfen mehr als einmal festgelegt werden. In diesem Fall hängt die Interpretation von der Einstellung ab. Oft bilden mehrere Einstellungen eine Liste und das Setzen eines leeren Werts setzt die Einstellung »zurück«, was bedeutet, dass vorherige Zuweisungen ignoriert werden. Wenn dies erlaubt ist, wird es in der Beschreibung der Einstellung erwähnt. Beachten Sie, dass mehrfache Zuweisungen zu dem gleichen Wert dazu führt, dass die Datei inkompatibel zu Auswertprogrammen für das »XDG .desktop«-Format wird.

SCHÜTZEN

Bei Einstellungen, bei denen das Schützen erlaubt ist, gelten die folgenden allgemeinen Regeln: Doppelte englische Anführungszeichen ("…") und einfache englische Anführungszeichen ('…') können zum Einhüllen eines gesamten Elementes verwandt werden (die öffnenden Anführungszeichen dürfen nur am Anfang oder nach Leerraum, der nicht geschützt wird, auftauchen und auf die schließenden Anführungszeichen muss Leerraum oder das Zeilenende folgen). Dies bedeutet, dass alles bis zum nächsten passenden Anführungszeichen Teil des gleichen Elementes wird. Die Anführungszeichen selbst werden entfernt. C-artige Maskierungen werden unterstützt. Die nachfolgende Tabelle enthält die Liste der bekannten Maskiermuster. Nur Maskiermuster, die auf die in der Tabelle dargestellte Syntax passen, sind erlaubt. In der Zukunft können weitere Muster hinzugefügt werden. Unbekannte Muster führen zu einer Warnung. Insbesondere sollte jeder Rückwärtsschrägstrich verdoppelt werden. Ein abschließender Rückwärtsschrägstrich (»\«) kann schließlich zum Zusammenführen von Zeilen, wie oben beschrieben, verwandt werden. UTF-8 wird akzeptiert und daher müssen typische Unicode-Zeichen nicht maskiert werden.

Tabelle 1. Unterstützte Maskierungen
Wortsinn | Tatsächlicher Wert
"\a" | Glockenton
"\b" | Rückschritt (»backspace«)
"\f" | Seitenvorschub
"\n" | Zeilenumbruch
"\r" | Wagenrücklauf
"\t" | Tabulator
"\v" | Vertikaler Tabulator
"\\" | Rückschrägstrich (»backslash«)
"\"" | doppeltes englisches Anführungszeichen
"\'" | einfaches englisches Anführungszeichen
"\s" | Leerzeichen
"\xxx" | Zeichen Nummer xx in hexadezimaler Kodierung
"\nnn" | Zeichen Nummer nnn in oktaler Kodierung
"\unnnn" | Unicode-Code-Punkt nnnn in hexadezimaler Kodierung
"\Unnnnnnnn" | Unicode-Code-Punkt nnnnnnnn in hexadezimaler Kodierung

SIEHE AUCH

systemd.time(7)

ANMERKUNGEN

1.  XDG Desktop-Eintrag-Spezifikation
    https://standards.freedesktop.org/desktop-entry-spec/latest/

Ü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).