Ubuntu/Apache: /tmp-Dateien wurden unerwartet entfernt

Ubuntu/Apache: /tmp-Dateien wurden unerwartet entfernt

Ich verliere Dateien im /tmpaktuellen Ubuntu (22.04.2), möglicherweise im Zusammenhang mit der Virtualisierung. Ich bin für alle Informationen dankbar. Dies ist keine normale Bereinigung; die Datei geht sofort verloren.

Ich habe zwei Systeme: ein Remote-VPS und ein lokales Staging-System, auf denen beide die gleiche Software laufen. Auf beiden Systemen /tmpist kein tmpfs; es ist Teil der LVM-Volume-Gruppe, die unter gemountet ist /.

Apache wird program1unmittelbar program2nacheinander ausgeführt:

  1. program1erstellt ein neues Unterverzeichnis unter /tmpmit 2 Dateien: file1(eine Python-Quelldatei) und file2(die Ausgabe von file1). Wenn Debug aktiviert ist, file1wird beibehalten; andernfalls wird es nach der Erstellung gelöscht file2(mit einer C-Bibliothek remove).
  2. program2kehrt file2zum Kunden zurück

Dies alles funktioniert wie erwartet auf dem Staging-System. Wenn Debug aktiviert ist, /tmp/xxxbefindet sich das neue Verzeichnis noch immer im Dateisystem und enthält sowohl file1als auch file2. Wenn Debug nicht aktiviert ist, enthält es nur file2.

Auf dem VPS:

  1. wenn debug istnichtaktiviert, alles funktioniert, aber es bleibt nichts übrig unter/tmp
  2. wenn debuggenIstaktiviert, program2schlägt fehl, Meldung, die file2nicht existiert

Ich habe den Code „repariert“, indem ich die C-Bibliothek entfernt habe remove, sodass diese file1immer erhalten bleibt, aber ich verstehe nicht, was da los ist – es scheint, dass das Entfernen der Datei irgendwo das Entfernen des gesamten Verzeichnisses ausgelöst hat.

verwandte Informationen