/tmp wächst ohne Dateien

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo zusammen,

    ich beobachte ein krasses Phänomen für das ich bisher keine Erklärung gefunden habe. Die Installation ist auf einem Raspberry Pi 2B mit einer Jessie Version 8.0

    Das /tmp Verzeichnis ist als tmpfs gemounted:


    Ein Problem tritt regelmäßig auf indem das /tmp Verzeichnis mit der Zeit voll läuft und es dann zu Fehlfunktionen kommt. Komisch ist jedoch, dass ich keine Dateien erkennen kann, die den Platz /tmp in Anspruch nehmen könnten:



    Das sind nur ein paar weinige Bytes (mit ls -alR), die sich laut df auf 464K summieren (steigend über die Zeit).

    Wie wird dieser Platz in Anspruch genommen und wie kriege ich das Anwachsen in den Griff?

    Ich habe den zyklisch laufenden Prozess Verdacht, der in /tmp die SE_* Dateien aktualisiert. Kann über diesen Prozess durch unsaubere Programmierung so etwas wie Memory Leaks auf /tmp entstehen?

    Vielen Dank für einen Hinweis, wie ich das Problem weiter eingrenzen könnte.

    Gruß

    Gerhard

  • Nach ".." sind Verzeichnisse .ICE-unix bis .font-unix
    Hast du dessen Größe in deine Rechnung mit einbezogen? :-/

    Code
    du -sh /tmp/*


    Ein Problem tritt regelmäßig auf indem das /tmp Verzeichnis mit der Zeit voll läuft und es dann zu Fehlfunktionen kommt.

    Was für Fehlfunktionen? Wie machen sich die bemerkbar?

    tmpfs ist was anderes als ramfs

  • Die .*-unix Verzeichnisse hatte ich auch im Verdacht, weshalb ich sie mit ls -alR gleich mit gepostet habe. Die Verzeichnisse sind leer. du habe ich eingegeben. Es zeigt wie zu erwarten 4K pro Datei, in der Summe 16K an.

    Als Fehlfunktion fällt vordergründig auf, dass tab Extension nicht mehr funktioniert.

    Danke für den Hinweis mit tmpfs und ramfs. Da muss ich mich mal einlesen, ob ramfs eine bessere Alternative wäre.

    Am Ende bleibt die Frage: Durch was wird /tmp immer voller, ohne dass ich Dateien sehe, die diesen Plaz belegen ?!?


  • Danke für den Hinweis mit tmpfs und ramfs. Da muss ich mich mal einlesen, ob ramfs eine bessere Alternative wäre.

    Nein.
    Ich wollte nur erwähnt haben das es gewisse Details gibt die ggf bisher noch nicht bekannt sind.
    tmpfs nutzt ebenso wie ramfs primär den Arbeitsspeicher, aber im Unterschied zu ramfs weicht es irgendwann auf SWAP aus sofern kein RAM mehr frei ist - das macht ramfs nicht. Bedeutet: Wenn du kein SWAP hast kriegst du dein Problem schneller als wenn du eben SWAP hättest. Wobei das eben auch keine Lösung des Problems wäre, was anzustreben wäre, sondern nur ein mögliches Problem ignoriert.... Zumal SWAP wiederum auf der SD oder einem anderen Datenträger läge und diesen dann belasten würde (SD Karten vertragen nicht unendlich viele Schreibzugriffe).

    Am Ende bleibt die Frage: Durch was wird /tmp immer voller, ohne dass ich Dateien sehe, die diesen Plaz belegen ?!?

    Normal ist das jedenfalls nicht. Es muss also etwas sein das speziell nur bei Dir läuft... Da Wir aber nicht wissen was du alles eingerichtet hast können wir nur raten oder aufwendig mit Deiner Hilfe recherchieren.
    Weiß du zu welcher Zeit das auftritt? Also zum Beispiel alle 5 Minuten? Wenn ja dann lass zB "iotop" parallel laufen und beobachte es für die ganze Zeit

  • Das ist in der Tat ein sehr merkwürdiges Verhalten. Hast Du mal versucht, /tmp vorübergehend auf die SD-Karte zu verlagern? Wäre interessant, ob es da genauso vollläuft. Ansonsten wüsste ich zwar nicht, wo und wie sich was verstecken sollte, aber hast Du trotzdem mal die Ausgabe von 'find /tmp/' gegen die von ls gegengecheckt?

  • Vielen Dank für die Hinweise mit iotop und find. Das probiere ich mal aus.

    Mein Verdacht bezuglich des Übeltäters scheint sich zu verdichten. Es ist ein proproetäres Programm und ich werde jetzt der Hersteller mal anschreiben. Ich vermute ja. dass er beim Aktualisieren der gelisteten 4 Dateien in /tmp einen Fehler macht. Vielleicht so in dem Stil wie alte Dateien verschieben / sichern, neue Dateien schreiben, alte Dateien nicht korrekt löschen. Wie und ob das unter Unix geht weiss ich nicht. Es fühlt sich dann jedenfalls an, wie nicht korrekt freigegebener Speicher.

    Ciao

    Gerhard

  • Der Platz bleibt solange belegt, wie ein Prozess die Dateien noch geoeffnet hat, auch dann, wenn die Dateien schon gelöscht sind. Wirklich gelöscht werden die dann erst, wenn der letzte Prozess die Dateien schliesst. Wenn also im Hintergrund irgendwas laeuft, was noch tmp-Dateien geöffnet hat, dann kann das schon sein. Auf diese Weise kann man unsichtbare Dateien erzeugen, also solche, die keinen Dateisystemeintrag mehr haben, nur noch intern einen inode.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!