/var/tmp und Dateilebensdauer

/var/tmp und Dateilebensdauer

Ich habe einen Cronjob, der jede Minute ausgeführt wird und die Existenz einer bestimmten Datei überprüft. Wenn es keine solche Datei gibt, wird der Job stillschweigend beendet. Wenn eine Datei vorhanden ist, wird ein anderes Skript gestartet. Dieses Skript entfernt die Datei, wenn es fertig ist. Die Ausführungszeit kann bis zu 20 Minuten betragen.

Meine Fragen sind: Gibt es irgendwelche Mängel in diesem Schema? Ist es in Ordnung, eine solche Datei im temporären Speicher zu speichern? Kann ich sicher sein, dass niemand versucht, sie zu entfernen?


Danke für die Antworten!

Der Zweck dieses Schemas besteht darin, das Ausführen dieses Skripts über die Weboberfläche zu ermöglichen. Das Skript selbst befindet sich im Home-Ordner des Benutzers und arbeitet mit dessen Inhalt. Ich bin nicht sicher, ob das Erstellen von PID-Dateien in /var/run angemessen ist.

Antwort1

Ich nehme an, Sie sprechen von einem Linux-System. Wenn Sie nichts zum Bereinigen von /tmp eingerichtet haben, wird dies nicht automatisch durchgeführt. Die einzige Ausnahme ist, wenn Sie das System neu starten – die meisten Linux-Distributionen bereinigen /tmp beim Neustart. Natürlich können Sie nach dem Skript suchen, das die Bereinigung durchführt, und es deaktivieren, wenn dies ein Problem darstellt.

Antwort2

Erstens ... ich glaube, Ihr Job kann bis zu 20 Mal ausgeführt werden, wenn Sie die Datei „entfernen, wenn sie fertig ist“. Nach dem, was Sie sagen, sollte die Datei verschoben/entfernt werden, sobald sie erkannt wird.

Eine ähnliche Frage wird hier gestellt.

Antwort3

Solange Sie überprüfen, ob Ihr Dateiverarbeitungsskript noch nicht ausgeführt wird, sollte alles in Ordnung sein. /tmp ist für diese Art von Dingen in Ordnung, es sei denn, es kommt zu zufälligen Neustarts, und das allein ist ein ziemlich großes Problem.

Antwort4

Sie können sich die Manpage hier ansehen. Diese Art von Flag findet sich häufig in /var/run. Sie sollten für beide Prozesse eine Markierungsdatei verwenden, um zu verhindern, dass mehrere Verarbeitungsskripte ausgeführt werden.

verwandte Informationen