TW: /tmp wird nicht mehr bereinigt

Hinweis: In dem Thema TW: /tmp wird nicht mehr bereinigt gibt es 22 Antworten auf 3 Seiten. Der letzte Beitrag () befindet sich auf der letzten Seite.
  • Hallo,


    seit etwa Mitte Oktober wird mein /tmp anscheinend nicht mehr bereinigt und füllt so langsam die Platte. /tmp ist ein btrfs-Subvolume.


    journalctl -e -u systemd-tmpfiles-clean meldet:

    Code
    -- Logs begin at Fri 2020-11-27 06:16:50 CET, end at Fri 2020-11-27 14:49:36 CET. --
    Nov 27 06:32:05 frodo systemd[1]: Starting Cleanup of Temporary Directories...
    Nov 27 06:32:05 frodo systemd-tmpfiles[6779]: /usr/lib/tmpfiles.d/net-snmp.conf:1: Line references path below legacy directory /var/run/, updat>
    Nov 27 06:32:05 frodo systemd-tmpfiles[6779]: /etc/tmpfiles.d/tmp.conf:13: Duplicate line for path "/tmp", ignoring.
    Nov 27 06:32:05 frodo systemd-tmpfiles[6779]: /etc/tmpfiles.d/tmp.conf:14: Duplicate line for path "/var/tmp", ignoring.
    Nov 27 06:32:05 frodo systemd[1]: systemd-tmpfiles-clean.service: Succeeded.
    Nov 27 06:32:05 frodo systemd[1]: Finished Cleanup of Temporary Directories.

    Was in /etc/tmpfiles.d/tmp.conf gefällt systemd denn da nun nicht? Ich sehe da keine doppelten Einträge:



    Die Datei liegt dort unverändert, seit ich Tumbleweed installiert habe. Lt. man ist die Syntax für die Option "q" auch nicht korrekt.

    man tmpfiles.d sagt u.a.:

    "q" kennt danach eigentlich keinen Age-Parameter.

    Für den Inhalt des Beitrages 285599 haftet ausdrücklich der jeweilige Autor: Oceanwaves

  • Code
    D /directory/to/create-and-remove mode user group cleanup-age -

    vs

    Code
    q /subvolume-or-directory/to/create mode user group - -

    Nimm das D für beide........

    Für den Inhalt des Beitrages 285600 haftet ausdrücklich der jeweilige Autor: Sauerland

  • Ja, das war auch mein erster Gedanke. Aber wie gesagt: /etc/tmpfiles.d/tmp.conf liegt dort unverändert seit dem 14.07.2019, aber seit Mitte Oktober bleiben die Dateien in /tmp liegen, die älteste Datei ist vom 18.10.20. Und der Dienst systemd-tmpfiles-clean meckert ja wegen doppelter Einträge, was mich etwas verwirrt, weil ich die dort nicht finde.

    Für den Inhalt des Beitrages 285602 haftet ausdrücklich der jeweilige Autor: Oceanwaves

  • Noch mal etwas recherchiert: /etc/tmpfiles.d/tmp.conf soll ja eigentlich eine Kopie von /usr/lib/tmpfiles.d/tmp.conf sein, die man nach eigenen Wünschen anpassen kann. Aber in /usr/lib/tmpfiles.d gibt es hier keine tmp.conf (mehr). Stattdessen habe ich aber die folgenden Dateien gefunden:

    Code
    -rw-r--r-- 1 root root  26 Oct 23 12:23 fs-tmp.conf
    -rw-r--r-- 1 root root  28 Oct 23 12:23 fs-var-tmp.conf
    -rw-r--r-- 1 root root 483 Oct 23 12:23 fs-var.conf

    Die gehören zum Paket filesystem und wurden im Oktober installiert. Und fs-tmp.conf enthält einen Eintrag für /tmp:


    Code
     # cat fs-tmp.conf
    q /tmp 1777 root root 10d

    Lt. man-page wäre die Syntax auch nicht korrekt ;), aber ich habe jetzt mal /etc/tmpfiles.d/tmp.conf weggeschoben und schaue mal, was passiert.

    Vielleicht stört sich systemd ja daran, dass /tmp und /var/tmp sowohl in /etc/tmpfiles.d/tmp.conf als auch in /usr/lib/tmpfiles.d/fs-tmp.conf bzw. /usr/lib/tmpfiles.d/fs-var-tmp.conf definiert sind.

    Für den Inhalt des Beitrages 285603 haftet ausdrücklich der jeweilige Autor: Oceanwaves

  • Vielleicht stört sich systemd ja daran, dass /tmp und /var/tmp sowohl in /etc/tmpfiles.d/tmp.conf als auch in /usr/lib/tmpfiles.d/fs-tmp.conf bzw. /usr/lib/tmpfiles.d/fs-var-tmp.conf definiert sind.

    Nein.

    Wenn in /etc/tmpfiles.d/ keine config vorliegt und eine config in /usr/lib/tmpfiles.d/ vorliegt, wird die aus /usr/lib/tmpfiles.d/fs-tmp.conf natürlich benutzt.


    Wenn in beiden Verzeichnissen eine config vorliegt, wird immer die aus /etc/tmpfiles.d/ genommen.


    Ebenso verhält es ich bei systemd oder jetzt auch nach der Umstellung von /etc/ auf /usr/etc/.

    Für den Inhalt des Beitrages 285608 haftet ausdrücklich der jeweilige Autor: Sauerland

  • Nein.

    Wenn in /etc/tmpfiles.d/ keine config vorliegt und eine config in /usr/lib/tmpfiles.d/ vorliegt, wird die aus /usr/lib/tmpfiles.d/fs-tmp.conf natürlich benutzt.


    Wenn in beiden Verzeichnissen eine config vorliegt, wird immer die aus /etc/tmpfiles.d/ genommen.

    Das Löschen der /etc/tmpfiles.d/tmp.conf hat immerhin dazu geführt, dass journalctl keine Fehler mehr meldet, also keine "duplicate line". Allerdings steht im Log jetzt auch nicht mehr "Starting Cleanup of Temporary Directories...":


    Code
     # journalctl  -u systemd-tmpfiles-clean
    -- Logs begin at Fri 2020-11-27 18:24:41 CET, end at Fri 2020-11-27 18:35:06 CET. --
    -- No entries --

    Startet systemd den Prozess nur ein Mal am Tag?


    Ich habe fs-tmp.conf und fs-var-tmp.conf nach /etc/tmpfiles.d/tmp.conf kopiert und beide etwas modifiziert:

    Code
    /etc/tmpfiles.d # diff ~-/fs-tmp.conf fs-tmp.conf 
    1c1
    < q /tmp 1777 root root 10d
    ---
    > d /tmp 1777 root root 10d
    /etc/tmpfiles.d # diff ~-/fs-var-tmp.conf fs-var-tmp.conf 
    1c1
    < d /var/tmp 1777 root root -
    ---
    > d /var/tmp 1777 root root 10d

    Hat aber auch nichts gebracht, es wurde bei einem Reboot nichts gelöscht.

    Für den Inhalt des Beitrages 285616 haftet ausdrücklich der jeweilige Autor: Oceanwaves

  • Zumindest bei mir (Tumbleweed) gibt es keine /usr/lib/tmpfiles.d/tmp.conf mehr.

    Wenn ich das dort lese dann wird die /usr/lib/tmpfiles.d/tmp.conf auch immer überschrieben also kann auf die Datei verzichtet werden.

    Eine Änderung am Dienst systemd-tmpfiles ist dazu nötig. Folgende Datei wird mitgeliefert:

    /usr/lib/tmpfiles.d/tmp.conf

    Da diese Datei bei einem Update von systemd überschrieben werden würde, kann eine eigene Arbeitskopie erzeugt werden, die dann erhalten bleibt. Diese wird dann Automatisch verwendet:

    Bei openSUSE 13.2 war diese Kopie bereits vorhanden Bei Tumbleweed und Leap 42.1 musste ich die Kopie erzeugen:

    cp /usr/lib/tmpfiles.d/tmp.conf /etc/tmpfiles.d/tmp.conf


    Es reicht alleine die /etc/tmpfiles.d/tmp.conf

    Oder interpretiere ich das falsch? Ich bin auch nur ein Lehrling :)


    Gruß, Heinz-Peter

    Die Rechtschreibfehler in diesem Beitrag sind nicht urheberrechtlich geschützt. Jeder der einen findet darf ihn behalten und in eigenen Werken weiterverwenden.

    Für den Inhalt des Beitrages 285619 haftet ausdrücklich der jeweilige Autor: Heinz-Peter

  • Dateien in /usr werden bei eine Update überschrieben.

    Dateien in /etc werden nict überschrieben.

    Für den Inhalt des Beitrages 285620 haftet ausdrücklich der jeweilige Autor: Sauerland