Die Distributionen sind natürlich unterschiedlich, aber ich erwarte, dass temporäre Dateien vom System automatisch verwaltet werden. Sie würden wahrscheinlich entweder Cron-Jobs oder den systemd-tmpfiles-clean-Dienst verwenden. Wenn Sie sich Sorgen über den Speicherplatz machen, ist dies ein nützlicher Befehl, um zu prüfen, wie viel Speicherplatz jeder Stammordner belegt:
du -hs /* | sort -h
Um festzustellen, ob Ihr System den systemd-Dienst zum Verwalten temporärer Dateien verwendet, können Sie Folgendes versuchen:
systemctl status systemd-tmpfiles-clean
Unten sehen Sie so etwas wie das Folgende, das Ihnen sagt, wann der Service das letzte Mal ausgeführt wurde:
systemd-tmpfiles-clean.service - Cleanup of Temporary Directories
Loaded: loaded (/usr/lib/systemd/system/systemd-tmpfiles-clean.service; static; vendor preset: disabled)
Active: inactive (dead) since Wed 2018-07-18 15:43:36 IST; 18h ago
Docs: man:tmpfiles.d(5)
man:systemd-tmpfiles(8)
Process: 30495 ExecStart=/usr/bin/systemd-tmpfiles --clean (code=exited, status=0/SUCCESS)
Main PID: 30495 (code=exited, status=0/SUCCESS)
Jul 18 15:43:36 host-name systemd[1]: Starting Cleanup of Temporary Directories...
Jul 18 15:43:36 host-name systemd[1]: Started Cleanup of Temporary Directories.
Beachten Sie, dass dieser Dienst beendet wird, sobald die Bereinigung abgeschlossen ist. Ein Zeitgeberdienst ist dafür verantwortlich, ihn regelmäßig auszulösen. Sie können es überprüfen mit:
systemctl status systemd-tmpfiles-clean.timer
Und Sie sollten folgendes erwarten:
systemd-tmpfiles-clean.timer - Daily Cleanup of Temporary Directories
Loaded: loaded (/usr/lib/systemd/system/systemd-tmpfiles-clean.timer; static; vendor preset: disabled)
Active: active (waiting) since Tue 2018-07-03 10:56:59 IST; 2 weeks 1 days ago
Docs: man:tmpfiles.d(5)
man:systemd-tmpfiles(8)
Jul 03 10:56:59 host-name systemd[1]: Started Daily Cleanup of Temporary Directories.
Jul 03 10:56:59 host-name systemd[1]: Starting Daily Cleanup of Temporary Directories.
Wenn Sie sich noch einmal den eigentlichen Dienst ansehen, der für die Bereinigung der Dateien verantwortlich ist, werden Sie feststellen, dass nur Folgendes ausgeführt wird:
/usr/bin/systemd-tmpfiles --clean
Sie können diesen Befehl also entweder direkt ausführen oder wie folgt vorgehen, um ihn ordnungsgemäß auszuführen:
systemctl start systemd-tmpfiles-clean
Welches wird den entsprechenden Befehl für Ihr System ausführen. Beachten Sie jedoch, dass dies kein Befehl zum Löschen aller temporären Dateien ist. Es gibt verschiedene Konfigurationsdateien, die steuern, was und wann tatsächlich gelöscht wird, damit Anwendungen ihre temporären Dateien individuell konfigurieren können.
Ein Ort, an dem Sie nach einer generischen Behandlung von temporären Dateien suchen sollten /usr/lib/tmpfiles.d/tmp.conf
, könnte die folgenden relevanten Zeilen enthalten:
# Clear tmp directories separately, to make them easier to override
v /tmp 1777 root root 10d
v /var/tmp 1777 root root 30d
Sie können diese in eine kürzere Zeit ändern, wenn auf Ihrem System immer weniger Speicherplatz zur Verfügung steht. Beispiel:
v /tmp 1777 root root 12h
v /var/tmp 1777 root root 1d
man tmpfiles.d
Lesen Sie das Handbuch, um sicherzugehen, was Sie tun . Auch hier habe ich festgestellt, dass der hier vorgestellte Ansatz für ein CentOS- (RedHat-basiertes) und ein Ubuntu-System relevant ist, aber ich weiß nicht viel über andere Distributionen.
/tmp
wird es nach dem Neustart gesäubert, dies hängt jedoch vom dort gemounteten Dateisystem ab. Wasdf -h
heißt das?