Was bedeutet tmp?
Tmp ist eine Abkürzung für temporär. Der tmp-Ordner ist also ein Ordner für temporäre Dateien. Jedes Betriebssystem verwendet einen solchen Ordner und benötigt ihn tatsächlich. Drupal auch. Drupal versucht standardmäßig, Dateien im tmp-Ordner Ihres Betriebssystems zu speichern. Unter Linux ist dies /tmp
unter Windows der Fall C:\Windows\Temp
. Sie können diese Einstellung überprüfen und ändern Configuration > Media > File System
. Wenn Ihr temporäres Verzeichnis auf einen dieser Standardpfade festgelegt ist, sollten Sie davon ausgehen, dass es sich nicht nur um Drupals Dateien handelt, sondern auch um Dateien des Betriebssystems und mehrerer anderer Programme (Apache-Sitzungen, Drush-Downloads, Installationspakete). Wenn es sich in einem benutzerdefinierten Pfad befindet oder im Fall von OP: /sites/default/files/tmp/
(Drupals Fallback-Pfad ), sollte es nur Drupal-Dateien enthalten.
Welche Art von Dateien speichert Drupal dort?
Im Allgemeinen speichert Drupal zuerst alle hochgeladenen Dateien im temporären Ordner. Wenn etwas schief geht (z. B. die Verbindung zum Client wird unterbrochen), befindet sich eine beschädigte Datei auf dem Server. Wenn Sie diese Dateien in einem temporären Ordner aufbewahren und erst verschieben, nachdem die gesamte Datei übertragen wurde, wird sichergestellt, dass sich keine beschädigten oder nicht benötigten Dateien in Ihrem öffentlichen Dateiverzeichnis befinden sites/default/files
.
Dies umfasst auch Module und Übersetzungsdownloads, einige js-Dateien (wahrscheinlich in Aggregation verwendet) und mehrere andere Dateien.
Es gibt keine echte Liste aller Dateien, die Drupal in tmp speichert, da die bereitgestellten Module möglicherweise auch eine Datei dort speichern. Mögliche Anwendungsfälle hierfür können die bedarfsgerechte Generierung von Dateien sein (z. B. ein Modul, das eine benutzerdefinierte Auswahl von Dateien in eine Zip-Datei packt und als Download anbietet. Es ist unwahrscheinlich, dass dieselbe Datei mehrmals verwendet wird und es keine echte gibt Nutzen bei der Aufbewahrung).
Kann ich die Dateien sicher entfernen?
Nun ja und nein ... Die Idee von temporären Dateien ist, dass sie ... temporär sind. Sie werden in der Regel direkt nach ihrer Erstellung verwendet und werden möglicherweise nicht mehr benötigt. Da jedoch alle Programme in tmp schreiben können, ist es eine vernünftige Annahme, dass nicht alle Programmierer die Regeln einhalten, oder dass einige Dateien tatsächlich noch verwendet werden.
Soll ich die Dateien entfernen?
Drupal führt während der Cron-Läufe mehrere Bereinigungen alleine durch (vorausgesetzt, Cron ist eingerichtet und funktioniert). Hochgeladene Dateien, die nicht dauerhaft gespeichert wurden, werden während system_cron () entfernt . Das Herunterladen alter Module wird von update_delete_file_if_stale () (über update_clear_update_disk_cache () und update_cron () ) durchgeführt. Diese Bereinigungen sind so eingestellt, dass ältere Dateien als DRUPAL_MAXIMUM_TEMP_FILE_AGE (6 Stunden) bereinigt werden. Die tatsächliche Zeit hängt jedoch vom Cron-Intervall ab. (Wenn cron nur alle 12 Stunden ausgeführt wird, kann es bis zu 12 Stunden dauern, bis die Dateien entfernt werden.)
In den meisten Fällen sollte es nicht erforderlich sein, die Dateien manuell zu entfernen. Wenn cron in einigen Fällen nicht (alle) Dateien entfernt, können Sie versuchen, sie von Hand zu entfernen. Aber machen Sie zuerst ein Backup!
Wenn Ihr Ordner für den Ordner Ihres Betriebssystems freigegeben ist, möchten Sie möglicherweise die Tools Ihres Betriebssystems dafür verwenden (Windows-Benutzer können die temporären Dateien mit dem Disk Cleanup
Tool bereinigen .) Einige Linux-Distributionen bereinigen den Ordner während des Systemneustarts, andere nicht. )
Wenn sich der tmp-Ordner in einem benutzerdefinierten Pfad (ohne Betriebssystem) befindet, wie dies beim OP der Fall ist, sollte es relativ sicher sein, den Ordner von Hand zu leeren. Stellen Sie sicher, dass Ihr Webserver (Apache, Nginx) gestoppt ist, damit kein Benutzer der Cron-Task die Dateien berührt. Löschen Sie dann die veralteten Dateien (älter als 6 Stunden) manuell.
Fazit
Wenn Ihr System ordnungsgemäß eingerichtet ist und cron funktioniert, sollten diese Dateien nicht bereinigt werden müssen, da sie automatisch entfernt werden. Wenn dies nicht der Fall ist, können Sie sie manuell entfernen, aber die oben genannten Bedingungen berücksichtigen. Es könnte immer noch schief gehen, also machen Sie immer ein Backup!