Provided by: manpages-de_2.16-1_all bug

BEZEICHNUNG

       tmpfiles.d - Konfiguration für die Erstellung, Löschung und Bereinigung von flüchtigen und
       temporären Dateien

ÜBERSICHT

       /etc/tmpfiles.d/*.conf
       /run/tmpfiles.d/*.conf
       /usr/lib/tmpfiles.d/*.conf

       ~/.config/user-tmpfiles.d/*.conf
       $XDG_RUNTIME_DIR/user-tmpfiles.d/*.conf
       ~/.local/share/user-tmpfiles.d/*.conf
       …
       /usr/share/user-tmpfiles.d/*.conf

       #Typ  Pfad                                         Modus Benutzer Gruppe Alter         Argument
       f     /Datei/zu/erstellen                          Modus Benutzer Gruppe -             Inhalt
       F     /Datei/zu/erstellen-oder-abzuschneiden       Modus Benutzer Gruppe -             Inhalt
       w     /Datei/zu/hineinschreiben                    -    -    -     -                   Inhalt
       d     /Verzeichnis/zu/erstellen-und-aufzuräumen    Modus Benutzer Gruppe Aufräumalter  -
       D     /Verzeichnis/zu/erstellen-und-entfernen      Modus Benutzer Gruppe Aufräumalter  -
       e     /Verzeichnis/zu/aufzuräumen                  Modus Benutzer Gruppe Aufräumalter  -
       v     /subvolume/zu/erstellen                      Modus Benutzer Gruppe -             -
       v     /subvolume-oder-Verzeichnis/zu/erstellen     Modus Benutzer Gruppe -             -
       Q     /subvolume/zu/erstellen                      Modus Benutzer Gruppe -             -
       p     /FIFO/zu/erstellen                           Modus Benutzer Gruppe -             -
       L     /Symlink/zu/erstellen                        -    -    -     -                   Symlink/Ziel/Pfad
       c     /dev/zeichenorientiertes-Gerät-zu-erstellen  Modus Benutzer Gruppe -             -
       b     /dev/Blockgerät-zu-erstellen                 Modus Benutzer Gruppe -             -
       # p+, L+, c+, b+ erstellen Ziel bedingungslos
       C     /Ziel/zu/erstellen                           -     -        -      -             /Quelle/zu/kopieren
       x     /Pfad-oder-Glob/zu/ignorieren                -     -        -      -             -
       X     /Pfad-oder-Glob/zu/ignorieren/rekursiv       -     -        -      -             -
       r     /leeres/Verzeichnis/zu/entfernen             -     -        -      -             -
       R     /Verzeichnis/zu/entfernen/rekursiv           -     -        -      -             -
       z     /Pfad-oder-Glob/zu/anpassen/Modus            Modus Benutzer Gruppe -             MAC-Kontext
       Z     /Pfad-oder-Glob/zu/anpassen/Modus/rekursiv   Modus Benutzer Gruppe -             MAC-Kontext
       t     /Pfad-oder-Glob/zu/setzen/Xattrs             -     -        -      -             Xattrs
       T     /Pfad-oder-Glob/zu/setzen/Xattrs/rekursiv    -     -        -      -             Xattrs
       h     /Pfad-oder-Glob/zu/setzen/Attrs              -     -        -      -             Datei-Attrs
       H     /Pfad-oder-Glob/zu/setzen/Attrs/rekursiv     -     -        -      -             Datei-Attrs
       a     /Pfad-oder-Glob/zu/setzen/ACLs               -     -        -      -             POSIX ACLs
       A     /Pfad-oder-Glob/zu/setzen/ACLs/rekursiv      -     -        -      -             POSIX ACLs
       # a+, A+ ACLs anhängen

BESCHREIBUNG

       tmpfiles.d-Konfigurationsdateien bieten einen generischen Mechanismus an, um die
       Erstellung regulärer Dateien, Verzeichnisse, Pipes und Geräteknoten, Anpassungen ihres
       Zugriffsmodus, ihrer Eigentümerschaft, Attribute, Kontingente, Zuweisungen und ihres
       Kontextes und schließlich ihrer zeitbasierten Entfernung zu definieren. Es wird am
       häufigsten für flüchtige und temporäre Dateien und Verzeichnisse benutzt (wie solchen, die
       sich unterhalb von /run, /tmp, /var/tmp, den API-Dateisystemen wie /sys oder /proc, sowie
       einigen anderen Verzeichnissen unterhalb von /var befinden).

       systemd-tmpfiles verwendet diese Konfiguration, um während des Systemstarts und
       nachfolgenden periodischen Bereinigungen flüchtige Dateien und Verzeichnisse zu erstellen.
       Siehe systemd-tmpfiles(5) für eine Beschreibung von systemd-tmpfiles-setup.service,
       systemd-tmpfiles-cleanup.service und zugehörigen Units.

       System-Daemons benötigen häufig private Laufzeitverzeichnisse unterhalb von /run, um
       Kommunikations-Sockets und ähnliches abzuspeichern. Dafür sollte besser RuntimeDirectory=
       in ihren Unit-Dateien verwandt werden (siehe systemd.exec(5) für Details), falls die durch
       tmpfiles.d bereitgestellte Flexibilität nicht benötigt wird. Der Vorteil ist, dass die
       durch die Unit benötigte Konfiguration an einer Stelle zentralisiert ist und dass die
       Lebensdauer des Verzeichnisses an die Lebensdauer des Dienstes selbst gekoppelt ist.
       Ähnlich sollten StateDirectory=, CacheDirectory=, LogsDirectory= und
       ConfigurationDirectory= zur Erstellung von Verzeichnisse unterhalb von /var/lib/,
       /var/cache/, /var/log/ und /etc/ verwandt werden. tmpfiles.d sollte für Dateien verwandt
       werden, deren Lebensdauer unabhängig von irgendeinem Dienst ist oder die kompliziertere
       Konfiguration benötigen.

KONFIGURATIONSVERZEICHNISSE UND RANGFOLGE

       Jede Konfigurationsdatei muss in der Art Paket.conf oder Paket-Teil.conf benannt werden.
       Die zweite Variante sollte genutzt werden, wenn es wünschenswert ist, es leicht zu machen,
       nur diesen Teil der Konfiguration außer Kraft zu setzen.

       Dateien in /etc/tmpfiles.d setzen Dateien mit dem gleichen Namen in /usr/lib/tmpfiles.d
       und /run/tmpfiles.d außer Kraft. Dateien in /run/tmpfiles.d setzen Dateien mit dem
       gleichen Namen in /usr/lib/tmpfiles.d außer Kraft. Pakete sollten ihre
       Konfigurationsdateien in /usr/lib/tmpfiles.d installieren. Dateien in /etc/tmpfiles.d sind
       für den lokalen Administrator reserviert, der diese Logik dazu verwenden kann, um vom
       Lieferanten installierte Pakete außer Kraft zu setzen. Alle Konfigurationsdateien werden
       in lexikographischer Reihenfolge nach ihrem Dateinamen sortiert, unabhängig davon, in
       welchem der Verzeichnisse sie sich befinden. Falls mehrere Dateien den gleichen Pfad
       festlegen, wird der Eintrag in der Datei mit dem lexikographisch kleinsten Namen
       angewandt. Alle anderen im Konflikt stehenden Einträge werden als Fehler protokolliert.
       Wenn zwei Zeilen Präfix- und Suffixpfad von dem jeweils anderen sind, wird das Präfix
       zuerst, das Suffix später erstellt (und falls das Entfernen für die Zeile gilt, ist die
       Reihenfolge umgedreht: das Suffix wird zuerst entfernt, das Präfix später). Zeilen, die
       Globs akzeptieren werden nach solchen, die keine Globs akzeptieren, verarbeitet. Falls
       mehrere Aktionen auf die gleiche Datei angewandt werden sollen (wie ACL, Xattr,
       Dateiatributsanpassungen), werden diese immer in der gleichen festen Reihenfolge
       vorgenommen. Außer für diese Fälle werden die Dateien/Verzeichnisse in der Reihenfolge
       verarbeitet, in der sie aufgeführt sind.

       Falls der Administrator eine vom Lieferanten bereitgestellte Konfigurationsdatei außer
       Kraft setzen möchte, wird empfohlen, einen Symlink auf /dev/null in /etc/tmpfiles.d/, der
       den gleichen Dateinamen trägt, anzulegen.

KONFIGURATIONSDATEIFORMAT

       Das Konfigurationsformat ist eine Zeile pro Pfad und enthält Typ-, Pfad-, Modus-,
       Eigentümerschaft-, Alter- und Argumentfelder:

           #Typ  Pfad        Modus Benutzer Gruppe Alter Argument
           d     /run/user   0755  root     root   10d   -
           L     /tmp/foobar -     -        -      -     /dev/null

       Felder dürfen in Anführungszeichen eingeschlossen werden und C-artige Maskierungen
       enthalten.

   Typ
       Der Typ besteht aus einem einzelnen Buchstaben und optional einem Ausrufezeichen und/oder
       einem Minuszeichen.

       Die folgenden Zeilentypen werden verstanden:

       f
           Erstellt eine Datei, falls sie noch nicht existiert. Falls der Argumentparameter
           angegeben ist und die Datei noch nicht existierte, wird sie in die Datei geschrieben.
           Folgt keinen Symlinks.

       F
           Erstellt eine Datei oder schneidet sie ab. Falls der Argumentparameter angegeben ist,
           wird er in die Datei geschrieben. Folgt keinen Symlinks.

       w
           Schreibt den Argumentparameter in eine Datei, falls die Datei existiert. Zeilen dieses
           Typs akzeptieren Shell-artige Globs anstelle von normalen Pfadnamen. Der
           Argumentparameter wird ohne abschließenden Zeilenumbruch geschrieben. C-artige
           Rückwärtsschrägstrichmaskierungen werden interpretiert. Folgt Symlinks.

       d
           Erstellt ein Verzeichnis. Der Modus und die Eigentümerschaft werden angepasst, falls
           angegeben. Inhalte dieses Verzeichnisses unterliegen einer zeitbasierten Bereinigung,
           falls das Argument »Alter« festgelegt ist.

       D
           Ähnlich zu d, aber zusätzlich werden die Inhalte des Verzeichnisses entfernt, wenn
           --remove verwandt wird.

       e
           Passt den Modus und die Eigentümerschaft eines bestehenden Verzeichnisses an und
           entfernt altersbasiert die Inhalte darin. Zeilen von diesem Typ akzeptieren
           Shell-artige Globs anstelle von normalen Pfadnamen. Inhalte dieser Verzeichnisse
           unterliegen zeitbasierter Bereinigung, falls das Altersargument festgelegt ist. Falls
           das Altersargument »0« ist, werden die Inhalte bei jedem Aufruf von systemd-tmpfiles
           --clean bedingungslos gelöscht.

           Damit dieser Eintrag nützlich ist, muss mindestens eines der Argumente Modus,
           Benutzer, Gruppe oder Alter festgelegt sein, da andernfalls dieser Eintrag keinen
           Effekt hat. Als Ausnahme kann ein Eintrag ohne Effekt bei der Kombination mit !
           nützlich sein, siehe Beispiele.

       v
           Erstellt ein Subvolume, falls der Pfad noch nicht existiert, das Dateisystem
           Subvolumes unterstützt (Btrfs) und das System selbst in ein Subvolume installiert ist
           (konkret: das Wurzelverzeichnis / ist selbst ein Subvolume). Andernfalls wird wie bei
           d ein normales Verzeichnis erstellt.

           Ein mit diesem Zeilentyp erstelltes Subvolume wird keiner abstrakteren
           Kontingentgruppe zugeordnet. Verwenden Sie dafür q oder Q, die die Erstellung
           einfacher Kontingentgruppenhierarchien erlauben, siehe unten.

       q
           Erstellt wie bei v ein Subvolume oder Verzeichnis, weist das Subvolume aber der
           gleichen abstrakteren Kontingentgruppe wie dem Eltern-Subvolume zu. Dies stellt
           sicher, dass abstraktere Begrenzungen und Buchführungen auf das Eltern-Subvolume auch
           das festgelegte Subvolume einschließen. Auf von Btrfs verschiedenen Dateisystemen ist
           diese Zeile zu d identisch.

           Falls das Subvolume bereits existiert, erfolgen an der Kontingenthierarchie keine
           Änderungen, unabhängig davon, ob das Subvolume bereits an die Kontingentgruppe
           angehängt ist. Siehe auch Q unten. Siehe btrfs-qgroup(8) für Details über das
           Btrfs-Kontingentgruppenkonzept.

       Q
           Erstellt wie bei v ein Subvolume oder Verzeichnis, weist dem neuen Subvolume eine neue
           Blatt-Kontingentgruppe zu. Statt wie bei q die abstraktere Kontingentgruppenzuweisung
           vom Eltern-Subvolume zu kopieren, wird die niedrigste Kontingentgruppe des
           Eltern-Subvolumes bestimmt, die nicht in der Blatt-Kontingentgruppe ist. Dann wird
           eine »Zwischen«-Kontingentgruppe eingefügt, die eine Stufe unterhalb dieser Stufe ist
           und sich den Kennungsteil mit der festgelegten Subvolume teilt. Falls keine
           abstraktere Kontingentgruppe für das Eltern-Subvolume existiert, wird stattdessen eine
           neue Kontingentgruppe auf Stufe 255 eingefügt, die die gleiche Kennung wie das
           festgelegte Subvolume hat. Diese neue Zwischenkontingentgruppe wird dann der
           abstrakten Kontingentgruppe des Eltern-Subvolumes zugewiesen und die festgelegte
           Blatt-Kontingentgruppe des Subvolume wird dieser zugewiesen.

           Effektiv hat dies eine ähnliche Wirkung wie q, führt allerdings eine neue abstrakte
           Kontingentgruppe für das festgelegte Subvolume ein, die zum Durchsetzen von
           Begrenzungen und Buchführungen für das festgelegte Subvolume und innerhalb darin
           erstellter Kinder-Subvolumes verwandt werden kann. Werden daher Subvolumes nur mittels
           q und Q erstellt, wird ein »Unterbaumkontingente«-Konzept implementiert. Für jedes
           Subvolume, für das Q gesetzt ist, wird eine »Unterbaum«-Kontingentgruppe erstellt und
           alle darin erstellten Kinder-Subvolumes werden ihr zugewiesen. Jedes Subvolume, für
           das q gesetzt ist, wird keine solche »Unterbaum«-Kontingentgruppe erhalten, aber es
           wird sichergestellt, dass sie zu der gleichen »Unterbaum«-Kontingentgruppe wie ihr
           direktes Eltern-Subvolume zugewiesen wird.

           Es wird empfohlen, Q für Subvolumes zu verwenden, die typischerweise weitere
           Subvolumes enthalten und bei denen es wünschenswert ist, Buchführung und
           Kontingentbegrenzungen auf allen Kind-Subvolumes zusammen zu haben. Beispiele für Q
           sind typischerweise /home oder /var/lib/machines. q sollte dagegen für Subvolumes
           verwandt werden, die entweder normalerweise keine weiteren Subvolumes enthalten oder
           bei denen keine Buchführung und Kontingentbegrenzungen benötigt werden, die auf alle
           Kind-Subvolumes zusammen angewandt werden sollen. Beispiele für q sind typischerweise
           /var oder /var/tmp.

           Wie mit q hat Q keine Wirkung auf die Kontingentgruppenhierarchie, falls das Subvolume
           bereits existiert, unabhängig davon, ob das Subvolume bereits zu der Kontingentgruppe
           gehört.

       p, p+
           Erstellt eine benannte Pipe (FIFO), falls sie noch nicht existiert. Falls + angehängt
           ist und eine Datei bereits existiert, wo die Pipe erstellt werden soll, wird sie
           entfernt und durch die Pipe ersetzt.

       L, L+
           Erstellt einen Symlink, falls er noch nicht existiert. Falls + angehängt ist und eine
           Datei bereits existiert, wo der Symlink erstellt werden soll, wird sie entfernt und
           durch den Symlink ersetzt. Falls das Argument nicht angegeben wird werden Symlinks auf
           Dateien mit dem gleichen Namen, die in /usr/share/factory/ liegen, erstellt. Beachten
           Sie, dass Berechtigungen und Eigentümerschaften bei Symlinks ignoriert werden.

       c, c+
           Erstellt einen Zeichengeräteknoten, falls er noch nicht existiert. Falls + angehängt
           ist und eine Datei bereits existiert, wo der Geräteknoten erstellt werden soll, wird
           sie entfernt und durch den Geräteknoten ersetzt. Es wird empfohlen, an diesen Eintrag
           ein Ausrufezeichen anzuhängen, um statische Geräteknoten nur beim Systemstart zu
           erstellen, da Udev keine statischen Geräteknoten verwalten wird, die zur Laufzeit
           erstellt wurden.

       b, b+
           Erstellt einen Blockgeräteknoten, falls er noch nicht existiert. Falls + angehängt ist
           und eine Datei bereits existiert, wo der Geräteknoten erstellt werden soll, wird sie
           entfernt und durch den Geräteknoten ersetzt. Es wird empfohlen, an diesen Eintrag ein
           Ausrufezeichen anzuhängen, um statische Geräteknoten nur beim Systemstart zu
           erstellen, da Udev keine statischen Geräteknoten verwalten wird, die zur Laufzeit
           erstellt wurden.

       C
           Kopiert eine Datei oder ein Verzeichnis rekursiv, falls die Zieldateien oder
           -verzeichnisse noch nicht existieren oder das Zielverzeichnis leer ist. Beachten Sie,
           dass dieser Befehl nicht in Unterverzeichnisse absteigen wird, falls das
           Zielverzeichnis bereits existiert und nicht leer ist. Stattdessen wird die gesamte
           Kopieraktion übersprungen. Falls das Argument weggelassen wird, werden Dateien aus dem
           Quellverzeichnis /usr/share/factory/ mit dem gleichen Namen kopiert. Folgt keinen
           Symlinks.

       x
           Ignoriert während der Bereinigung einen Pfad. Verwenden Sie diesen Typ, um Pfade von
           der Reinigung, wie sie mit dem Parameter Age gesteuert wird, auszuschließen. Beachten
           Sie, dass Zeilen von diesem Typ nicht den Effekt von r- und R-Zeilen beeinflussen.
           Zeilen von diesem Typ akzeptieren Shell-artige Globs anstelle von normalen Pfadnamen.

       X
           Ignoriert während der Bereinigung einen Pfad. Verwenden Sie diesen Typ, um Pfade von
           der Reinigung, wie sie mit dem Parameter Age gesteuert wird, auszuschließen. Anders
           als x wird der Parameter keinen Inhalt ausschließen, falls Pfad ein Verzeichnis ist,
           sondern nur Verzeichnisse selbst. Beachten Sie, dass Zeilen von diesem Typ nicht den
           Effekt von r- und R-Zeilen beeinflussen. Zeilen von diesem Typ akzeptieren
           Shell-artige Globs anstelle von normalen Pfadnamen.

       r
           Entfernt eine Datei oder ein Verzeichnis, falls sie/es bereits existiert. Dies kann
           nur zur Entfernung leerer Verzeichnisse verwandt werden, verwenden Sie andernfalls R.
           Zeilen von diesem Typ akzeptieren Shell-artige Globs anstelle von normalen Pfadnamen.
           Folgt keinen Symlinks.

       R
           Entfernt einen Pfad und alle seine Unterverzeichnisse (falls es ein Verzeichnis ist)
           rekursiv. Zeilen von diesem Typ akzeptieren Shell-artige Globs anstelle von normalen
           Pfadnamen. Folgt keinen Symlinks.

       z
           Passt den Zugriffsmodus, die Benutzer- und Gruppeneigentümerschaft an und stellt den
           SELinux-Sicherheitskontext einer Datei oder eines Verzeichnisses, falls sie/es
           existiert, wieder her. Zeilen von diesem Typ akzeptieren Shell-artige Globs anstelle
           von normalen Pfadnamen. Folgt keinen Symlinks.

       Z
           Setzt rekursiv den Zugriffsmodus, die Benutzer- und Gruppeneigentümerschaft und stellt
           den SELinux-Sicherheitskontext einer Datei oder eines Verzeichnisses, falls sie/es
           existiert, sowie, falls zutreffend, seiner Unterverzeichnisse und der darin
           enthaltenen Dateien, wieder her. Zeilen von diesem Typ akzeptieren Shell-artige Globs
           anstelle von normalen Pfadnamen. Folgt keinen Symlinks.

       t
           Setzt erweiterte Attribute, siehe attr(5) für Details. Das Argumentenfeld sollte eine
           oder mehrere Zuweisungen in der Form Namensraum.Attribut=Wert akzeptieren, Beispiele
           finden Sie weiter unten. Zeilen von diesem Typ akzeptieren Shell-artige Globs anstelle
           von normalen Pfadnamen. Dies kann zum Setzen von SMACK-Label nützlich sein. Folgt
           keinen Symlinks.

           Bitte beachten Sie, dass erweiterte Attribute, die mit diesem Zeilentyp setzbar sind,
           ein anderes Konzept als die mit h/H setzbaren Linux-Dateiattribute sind, siehe unten.

       T
           Identisch zu t, arbeitet aber rekursiv.

       h
           Setzt Linux-Datei-/Verzeichnisattribute. Zeilen von diesem Typ akzeptieren
           Shell-artige Globs anstelle von normalen Pfadnamen.

           Das Format des Argumentenfelds lautet [+-=][aAcCdDeijPsStTu]. Das Präfix + (die
           Vorgabe) führt dazu, dass die Attribute hinzugfügt werden, - führt dazu, dass die
           Attribute entfernt werden, = führt dazu, dass die Attribute genau auf die
           nachfolgenden Buchstaben gesetzt werden. Die Buchstaben »aAcCdDeijPsStTu« wählen die
           neuen Attribute für die Dateien aus, siehe chattr(1) für weitere Informationen.

           Wird nur = übergeben, werden alle oben aufgeführten Dateiattribute zurückgesetzt. Es
           muss daraufhingewiesen werden, dass sich das Präfix = auf die Attribute beschränkt,
           die den hier aufgeführten Buchstaben entsprechen. Alle weiteren Attribute bleiben
           unverändert. Folgt keinen Symlinks.

           Bitte beachten Sie, dass die Linux-Datei-Attribute, die mit diesem Zeilentyp setzbar
           sind, ein anderes Konzept als die mit t/T setzbaren erweiterten Attribute sind, siehe
           oben.

       H
           Identisch zu h, arbeitet aber rekursiv.

       a, a+
           Setzt POSIX ACLs (Zugriffsteuerungslisten), siehe acl(5). Falls + vorangestellt wird,
           werden die angegebenen Einträge zu der bestehenden Menge hinzugefügt. systemd-tmpfiles
           wird automatisch die benötigten Basiseinträge für Benutzer und Gruppen basierend auf
           dem Zugriffsmodus der Datei hinzufügen, außer die Basiseinträge existieren bereits
           oder werden explizit festgelegt. Die Maske wird hinzugefügt, falls sie nicht explizit
           festgelegt oder bereits vorhanden ist. Zeilen von diesem Typ akzeptieren Shell-artige
           Globs anstelle von normalen Pfadnamen. Dies kann zum Erlauben von zusätzlichen
           Zugriffen auf bestimmte Dateien nützlich sein. Folgt keinen Symlinks.

       A, A+
           Identisch zu a und a+, aber rekursiv. Folgt keinen Symlinks.

       Falls das Ausrufezeichen verwandt wird, ist diese Zeile nur bei der Ausführung während des
       Systemstarts sicher und kann ein laufendes System beschädigen. Bei Zeilen ohne
       Ausrufezeichen wird angenommen, dass ihr Aufruf jederzeit sicher ist, z.B. bei
       Paket-Upgrades. systemd-tmpfiles wird Zeilen mit einem Ausrufezeichen nur ausführen, falls
       die Option --boot angegeben ist.

       Beispiel:

           # Sicherstellen, dass diese standardmäßig erstellt werden, so dass es
           # kein anderer machen kann
           d /tmp/.X11-unix 1777 root root 10d

           # Lösen des X11-Sperrdatei-Links
           r! /tmp/.X[0-9]*-lock

       Im Gegensatz zur ersten Zeile würde die zweite Zeile ein laufendes System beschädigen und
       wird daher nur mit --boot ausgeführt.

       Falls das Minuszeichen verwandt wird, wird ein Fehlschlag bei der Ausführung dieser Zeile
       während der Erstellung (und nur der Erstellung) nicht zu der Ausführung von
       systemd-tmpfiles führen und einen Fehler zurückliefern.

       Beispiel:

           # Verändert sysfs, aber schlägt nicht fehl, falls es sich in einem Container mit schreibgeschütztem /proc befindet
           w- /proc/sys/vm/swappiness - - - - 10

       Beachten Sie, dass für alle Zeilentypen, die zur Erstellung irgendeiner Art von Dateimodus
       führen (d.h. f/F, d/D/v/q/Q, p, L, c/b und C) führende Verzeichnisse implizit falls
       notwendig erstellt werden, die root gehören und den Zugriffsmodus 0755 haben. Um
       sicherzustellen, dass Sie sie mit anderen Modi oder Eigentümerschaften erstellen,
       verwenden Sie geeignete d-Zeilen.

   Pfad
       Die Dateisystempfadfestlegung unterstützt einfache Kennzeichnererweiterungen, siehe unten.
       Der Pfad muss (nach Erweiterung) absolut sein.

   Modus
       Der bei der Erstellung der Datei oder des Verzeichnisses zu verwendende
       Dateizugriffsmodus. Falls weggelassen oder auf »-« gesetzt, wird die Vorgabe benutzt: 0755
       für Verzeichnisse, 0644 für alle anderen Dateiobjekte. Für z-, Z-Zeilen, weggelassen oder
       auf »-« gesetzt, wird der Dateizugriffsmodus nicht verändert. Dieser Parameter wird für
       x-, r-, R-, L-, t- und a-Zeilen ignoriert.

       Falls optional »~« vorangestellt wird, wird der Zugriffsmodus basierend auf Zugriffsbits
       von bereits bestehenden Dateien oder Verzeichnissen maskiert: falls die bestehende Datei
       alle Ausführ-Bits nicht gesetzt hat, werden auch alle Ausführ-Bits von dem neuen
       Zugriffsmodus entfernt. Ähnlicherweise werden alle Lese-Bits auch von dem neuen
       Zugriffsmodus entfernt, falls alle Lese-Bits von dem alten Zugriffsmodus entfernt sind und
       falls alle Schreib-Bits entfernt wurden, werden sie auch von dem neuen Zugriffsmodus
       entfernt. Zusätzlich wird auch das Bit sticky/SUID/SGID entfernt, außer es wird auf ein
       Verzeichnis angewandt. Diese Funktionalität ist insbesondere im Zusammenspiel mit Z
       nützlich.

   Benutzer, Gruppe
       Die für diese Datei oder dieses Verzeichnis zu verwendenden Benutzer und Gruppe. Dies kann
       entweder eine numerische Kennung oder ein Benutzer- oder Gruppenname sein. Falls
       weggelassen oder auf »-« gesetzt, wird der Benutzer und die Gruppe des Benutzers, der
       systemd-tmpfiles aufgerufen hat, verwandt. Für z- und Z-Zeilen, falls weggelassen oder auf
       »-« gesetzt, wird die Dateieigentümerschaft nicht geändert. Diese Parameter werden für x-,
       r-, R-, L-, t- und a-Zeilen ignoriert.

       Dieses Feld sollte im Allgemeinen nur Systembenutzer/-gruppen, d.h. Benutzer/Gruppen, die
       während des frühen Systemstarts garantiert aufgelöst werden können, referenzieren. Falls
       dieses Feld Benutzer/Gruppen referenziert, die erst während des späteren Systemstarts
       auflösbar werden (d.h. nachdem NIS, LDAP oder ähnliche netzbasierte Verzeichnisdienste
       verfügbar werden), wird die Ausführung von Aktionen, die durch diese Zeile festgelegt
       werden, wahrscheinlich fehlschlagen. Siehe auch Hinweise zur Auflösbarkeit von Benutzer-
       und Gruppennamen[1] für weitere Informationen über die Anforderungen an die Definition von
       Systembenutzer/-gruppen.

   Alter
       Das Datumsfeld, falls gesetzt, wird zur Entscheidung, welche Dateien beim Bereinigen
       gelöscht werden sollen, verwandt. Falls eine Datei oder ein Verzeichnis älter als die
       aktuelle Zeit minus des Feldes »Alter« ist, wird sie gelöscht. Das Feldformat ist eine
       Serie von Ganzzahlen, an die eine der nachfolgenden entsprechenden Zeiteinheiten angehängt
       ist: s (Sekunden), m oder min (Minuten), h (Stunden), d (Tage), w (Wochen), ms
       (Millisekunden) und us (Mikrosekunden). Es können auch die ausgeschriebenen englischen
       Namen verwandt werden.

       Falls mehrere Ganzzahlen und Einheiten festgelegt werden, werden die Zeitwerte
       aufsummiert. Falls eine Ganzzahl ohne Einheit angegeben wird, wird s angenommen.

       Wird das Alter auf Null gesetzt, werden die Dateien bedingungslos bereinigt.

       Das Feld »Alter« wird nur auf Zeilen, die mit d, D, e, v, q, Q, C, x und X beginnen,
       angewandt. Falls weggelassen oder auf »-« gesetzt, erfolgt keine automatische Bereinigung.

       Falls das Feld »Alter« mit einem Tildezeichen »~« beginnt, erfolgt die Bereinigung nur auf
       Dateien und Verzeichnisse eine Stufe innerhalb des festgelegten Verzeichnisses, aber nicht
       auf Dateien und Verzeichnisse direkt innerhalb davon.

       Das Alter des Dateisystemeintrags wird von seinem letzten Änderungszeitstempel (mtime),
       seinem letzten Zugriffszeitstempel (atime) und (außer für Verzeichnisse) seinem letzten
       Statusänderungszeitstempel (ctime) bestimmt. Jeder der drei (oder zwei) Werte wird die
       Bereinigung verhindern, falls er neuer als die aktuelle Zeit minus des Feldes »Alter« ist.

       Beachten Sie, dass während der Ausführung des Alterungsalgorithmus eine gemeinsame
       BSD-Dateisperre (siehe flock(2)) auf jedem Verzeichnis, in das der Algorithmus absteigt
       (und jedes Verzeichnis darunter usw.), erlangt wird. Falls der Alterungsalgorithmus eine
       bereits erlangte Sperre auf einem Verzeichnis findet, wird es (und alles darunter)
       übersprungen. Anwendungen können dies dazu verwenden, temporär bestimmte
       Verzeichnisunterbäume von dem Alterungsalgorithmus auszuschließen: die Anwendungen können
       selbst eine BSD-Dateisperre erlangen und solange sie diese behalten, wird das Altern des
       Verzeichnisses und alles darunter ausgeschaltet.

   Argument
       Für L-Zeilen bestimmt es den Zielpfad des Symlinks. Für c und b-Zeilen bestimmt es den
       Major/Minor des Geräteknotens, wobei Major und Minor als Ganzzahlen getrennt durch »:«
       formatiert sind, z.B. »1:3«. Für f, F und w kann das Argument zur Festlegung einer kurzen
       Zeichenkette, die in eine Datei (abgeschlossen durch einen Zeilenumbruch) geschrieben
       wird, verwandt werden. Für C legt es die Quelldatei oder das Quellverzeichnis fest. Für t
       und T bestimmt es die zu setzenden erweiterten Attribute. Für a und A bestimmt es die zu
       setzenden ACL-Attribute. Für h und H bestimmt es die zu setzenden Dateiattribute. Für alle
       anderen Zeilen ignoriert.

       Dieses Feld kann Kennzeichner enthalten, siehe unten.

KENNZEICHNER

       Kennzeichner können in den Feldern »Pfad« und »Argument« verwandt werden. Ein unbekannter
       oder unauflösbarer Kennzeichner wird als ungültige Konfiguration behandelt. Die folgenden
       Erweiterungen werden verstanden:

       Tabelle 1. Verfügbare Kennzeichner
       ┌─────────────┬─────────────────────────────────────┬──────────────────────────┐
       │KennzeichnerBedeutungDetails                  │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%b"         │ Boot-Kennung                        │ Die Boot-Kennung des     │
       │             │                                     │ laufenden Systems,       │
       │             │                                     │ formatiert als           │
       │             │                                     │ Zeichenkette. Siehe      │
       │             │                                     │ random(4) für weitere    │
       │             │                                     │ Informationen.           │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%C"         │ System- oder                        │ Im Modus --user ist dies │
       │             │ Benutzerzwischenspeicherverzeichnis │ identisch zu             │
       │             │                                     │ $XDG_CACHE_HOME,         │
       │             │                                     │ andernfalls /var/cache.  │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%h"         │ Benutzer-Home-Verzeichnis.          │ Dies ist das             │
       │             │                                     │ Home-Verzeichnis des     │
       │             │                                     │ Benutzers, der den       │
       │             │                                     │ Befehl ausführt. Im      │
       │             │                                     │ Falle der Systeminstanz  │
       │             │                                     │ löst sich dies auf       │
       │             │                                     │ »/root« auf.             │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%H"         │ Rechnername                         │ Der Rechnername des      │
       │             │                                     │ laufenden Systems.       │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%L"         │ System- oder                        │ Im Modus --user ist dies │
       │             │ Benutzerprotokollierverzeichnis     │ identisch zu             │
       │             │                                     │ $XDG_CONFIG_HOME mit     │
       │             │                                     │ angehängtem /log,        │
       │             │                                     │ andernfalls /var/log.    │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%m"         │ Maschinenkennung                    │ Die Maschinenkennung des │
       │             │                                     │ laufenden Systems,       │
       │             │                                     │ formatiert als           │
       │             │                                     │ Zeichenkette. Siehe      │
       │             │                                     │ machine-id(5) für        │
       │             │                                     │ weitere Informationen.   │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%S"         │ System- oder                        │ Im Modus --user ist dies │
       │             │ Benutzerzustandsverzeichnis         │ identisch zu             │
       │             │                                     │ $XDG_CONFIG_HOME,        │
       │             │                                     │ andernfalls /var/lib.    │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%t"         │ System- oder                        │ Im Modus --user ist dies │
       │             │ Benutzerlaufzeitverzeichnis         │ identisch zu             │
       │             │                                     │ $XDG_RUNTIME_DIR,        │
       │             │                                     │ andernfalls /run.        │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%T"         │ Verzeichnis für temporäre Dateien   │ Dies ist entweder /tmp   │
       │             │                                     │ oder der Pfad, auf den   │
       │             │                                     │ »$TMPDIR«, »$TEMP« oder  │
       │             │                                     │ »$TMP« gesetzt ist.      │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%g"         │ Benutzergruppe                      │ Dies ist der Name der    │
       │             │                                     │ Gruppe, die den Befehl   │
       │             │                                     │ ausführt. Im Falle der   │
       │             │                                     │ Systeminstanz löst sich  │
       │             │                                     │ dies auf »root« auf.     │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%G"         │ Benutzer-GID                        │ Dies ist die numerische  │
       │             │                                     │ GID der Gruppe, die den  │
       │             │                                     │ Befehl ausführt. Im      │
       │             │                                     │ Falle der Systeminstanz  │
       │             │                                     │ löst sich dies auf 0     │
       │             │                                     │ auf.                     │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%u"         │ Benutzername                        │ Dies ist der Name des    │
       │             │                                     │ Benutzers, der den       │
       │             │                                     │ Befehl ausführt. Im      │
       │             │                                     │ Falle der Systeminstanz  │
       │             │                                     │ löst sich dies auf       │
       │             │                                     │ »root« auf.              │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%U"         │ Benutzer-UID                        │ Dies ist die numerische  │
       │             │                                     │ UID des Benutzers, der   │
       │             │                                     │ den Befehl ausführt. Im  │
       │             │                                     │ Falle der Systeminstanz  │
       │             │                                     │ löst sich dies auf 0     │
       │             │                                     │ auf.                     │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%v"         │ Kernelveröffentlichung              │ Identisch zur Ausgabe    │
       │             │                                     │ von uname -r.            │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%V"         │ Verzeichnis für größere und         │ Dies ist entweder        │
       │             │ dauerhafte temporäre Dateien        │ /var/tmp oder der Pfad,  │
       │             │                                     │ auf den »$TMPDIR«,       │
       │             │                                     │ »$TEMP« oder »$TMP«      │
       │             │                                     │ gesetzt ist.             │
       ├─────────────┼─────────────────────────────────────┼──────────────────────────┤
       │"%%"         │ Maskiertes »%«                      │ Einzelnes                │
       │             │                                     │ Prozentzeichen.          │
       └─────────────┴─────────────────────────────────────┴──────────────────────────┘

BEISPIELE

       Beispiel 1. Erstellt Verzeichnisse mit festgelegtem Modus und Eigentümerschaft

       screen(1) benötigt beim Systemstart zwei Verzeichnisse mit bestimmten Modi und
       Eigentümerschaften:

           # /usr/lib/tmpfiles.d/screen.conf
           d /run/screens  1777 root screen 10d
           d /run/uscreens 0755 root screen 10d12h

       Inhalte von /run/screens und /run/uscreens werden nach 10 bzw. 10 Tagen und 12 Stunden
       bereinigt.

       Beispiel 2. Erstellt ein Verzeichnis mit einem SMACK-Attribut

           D /run/cups - - - -
           t /run/cups - - - - security.SMACK64=printing user.attr-with-spaces="foo bar"

       Das Verzeichnis wird root gehören und den Standardmodus haben. Seine Inhalte unterliegen
       nicht der zeitbasierten Bereinigung, werden aber gelöscht, wenn systemd-tmpfiles --remove
       ausgeführt wird.

       Beispiel 3. Erstellt ein Verzeichnis und verhindert die Bereinigung seiner Inhalte

       abrt(1) benötigt ein beim Systemstart erstelltes Verzeichnis mit bestimmten Modi und
       Eigentümerschaften, dessen Inhalte vor der automatischen, auf /var/tmp angewandten
       Bereinigung geschützt werden sollten:

           # /usr/lib/tmpfiles.d/tmp.conf
           d /var/tmp 1777 root root 30d

           # /usr/lib/tmpfiles.d/abrt.conf
           d /var/tmp/abrt 0755 abrt abrt -

       Beispiel 4. Wendet Bereinigung beim Systemstart und zeitbasiert an

           # /usr/lib/tmpfiles.d/dnf.conf
           r! /var/cache/dnf/*/*/download_lock.pid
           r! /var/cache/dnf/*/*/metadata_lock.pid
           r! /var/lib/dnf/rpmdb_lock.pid
           e  /var/cache/dnf/ - - - 30d

       Die Sperrdateien werden während des Systemstarts entfernt. Alle Dateien und Verzeichnisse
       in /var/cache/dnf/ werden entfernt, nachdem in 30 Tagen nicht auf sie zugegriffen wurde.

       Beispiel 5. Den Inhalt eines Zwischenspeicherverzeichnisses beim Systemstart leeren

           # /usr/lib/tmpfiles.d/krb5rcache.conf
           e! /var/cache/krb5rcache - - - 0

       Alle Dateien und Unterverzeichnisse in /var/cache/krb5rcache/ werden beim Systemstart
       entfernt. Das Verzeichnis wird nicht erstellt.

/RUN/ UND /VAR/RUN/

       /var/run/ ist ein veralteter Symlink auf /run/ und Anwendungen sollten Letzteres
       verwenden. systemd-tmpfiles wird bei der Verwendung von /var/run warnen.

SIEHE AUCH

       systemd(1), systemd-tmpfiles(8), systemd-delta(1), systemd.exec(5), attr(5), getfattr(1),
       setfattr(1), setfacl(1), getfacl(1), chattr(1), btrfs-subvolume(8), btrfs-qgroup(8)

ANMERKUNGEN

        1. Hinweise zur Auflösbarkeit von Benutzer- und Gruppennamen
           https://systemd.io/UIDS-GIDS.html#notes-on-resolvability-of-user-and-group-names

Ü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 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 <debian-l10n-german@lists.debian.org>.