
Ich verliere Dateien im /tmp
aktuellen 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 /tmp
ist kein tmpfs
; es ist Teil der LVM-Volume-Gruppe, die unter gemountet ist /
.
Apache wird program1
unmittelbar program2
nacheinander ausgeführt:
program1
erstellt ein neues Unterverzeichnis unter/tmp
mit 2 Dateien:file1
(eine Python-Quelldatei) undfile2
(die Ausgabe vonfile1
). Wenn Debug aktiviert ist,file1
wird beibehalten; andernfalls wird es nach der Erstellung gelöschtfile2
(mit einer C-Bibliothekremove
).program2
kehrtfile2
zum Kunden zurück
Dies alles funktioniert wie erwartet auf dem Staging-System. Wenn Debug aktiviert ist, /tmp/xxx
befindet sich das neue Verzeichnis noch immer im Dateisystem und enthält sowohl file1
als auch file2
. Wenn Debug nicht aktiviert ist, enthält es nur file2
.
Auf dem VPS:
- wenn debug istnichtaktiviert, alles funktioniert, aber es bleibt nichts übrig unter
/tmp
- wenn debuggenIstaktiviert,
program2
schlägt fehl, Meldung, diefile2
nicht existiert
Ich habe den Code „repariert“, indem ich die C-Bibliothek entfernt habe remove
, sodass diese file1
immer 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.