Ralf Tempel wrote:
Hi! Ich habe festgestellt, dass der Ordner /tmp auf nahezu 30 GB angewachsen ist. Nur durch löschen eines Files woanders, konnte ich das System wieder zum laufen bringen, da einige Dienste mangels Speichersplatz nicht starteten. Meine Frage: kann ich den Inhalt des Ordners /tmp gefahrlos löschen?
Jein. Ich kenne Unix-Systeme, die beim Systemstart in /tmp gnadenlos aufräumen. Andererseits kann das löschen im laufenden Betrieb die das File evtl. benutzende Applikation aus dem Tritt bringen. Vorschlag: a) feststellen, von wem der Kram kommt und dann erstmal defensiv löschen (nach Alter des Files / User usw.) b) irgendwann via reboot oder "init 1" alles stoppen und dann konsequent aufräumen c) Sicherstellen, das /tmp ein eigenes FS ist. Ich lege /tmp NIE im Root-FS an (und habe auch /var/tmp nach /tmp verlinkt, so das auch /var so nicht vollaufen kann). Dann bleibt die Kiste zumindest nicht stehen.
Andererseits: Der SUSE-9.0-Server läuft erst seit ca. 2 Wochen - woher kommt diese Menge an temporären Dateien in so kurzer Zeit?
Gute Frage, die wohl nur Du beantworten kannst. Andreas
Kyek, Andreas, VF-DE wrote: [Thursday 02 September 2004 12:51]
Ich kenne Unix-Systeme, die beim Systemstart in /tmp gnadenlos aufräumen.
Der FHS hat dazu klare Richtlinien: http://www.pathname.com/fhs/pub/fhs-2.3.html#TMPTEMPORARYFILES "Programs must not assume that any files or directories in /tmp are preserved between invocations of the program." "Although data stored in /tmp may be deleted in a site-specific manner, it is recommended that files and directories located in /tmp be deleted whenever the system is booted." Dagegen erhält /var/tmp die Daten auch nach Reboots: http://www.pathname.com/fhs/pub/fhs-2.3.html#VARTMPTEMPORARYFILESPRESERVEDBE... "The /var/tmp directory is made available for programs that require temporary files or directories that are preserved between system reboots. Therefore, data stored in /var/tmp is more persistent than data in /tmp." "Files and directories located in /var/tmp must not be deleted when the system is booted. Although data stored in /var/tmp is typically deleted in a site-specific manner, it is recommended that deletions occur at a less frequent interval than /tmp." Thomas.
Am Donnerstag, 2. September 2004 12:51 schrieb Kyek, Andreas, VF-DE:
Meine Frage: kann ich den Inhalt des Ordners /tmp gefahrlos löschen? Jein. Ich kenne Unix-Systeme, die beim Systemstart in /tmp gnadenlos aufräumen.
So isses auch gedacht.
Andererseits kann das löschen im laufenden Betrieb die das File evtl. benutzende Applikation aus dem Tritt bringen.
Dürfte nicht passieren. wenn ein geöffnetes File gelöscht wird, merkt die benutzende Anwendung davon erstmal gar nichts, kann brav weiter aus der Datei lesen und in sie schreiben usw. Erst wenn sie vom letzten Programm geschlossen wird, ist sie entgültig weg. Man merkt das halt daran, dass auf der Platte nach dem "Löschen" kein zusätzlicher Platz frei wird. :-)
c) Sicherstellen, das /tmp ein eigenes FS ist. Ich lege /tmp NIE im Root-FS an (und habe auch /var/tmp nach /tmp verlinkt, so das auch /var so nicht vollaufen kann). Dann bleibt die Kiste zumindest nicht stehen.
Doch, wenn /tmp voll wird, starten auch sehr viele Dienste nicht mehr. <g> -- Dipl.-Ing. Jens Benecke http://www.hitchhikers.de - Europas kostenlose Mitfahrzentrale seit 1998 http://www.rb-hosting.de - Webhosting mit Extras - PHP ab €9 - SSH ab €19 http://www.spamfreemail.de - 100% saubere Postfächer, garantiert!
Jens Benecke wrote: [Thursday 02 September 2004 15:38]
Am Donnerstag, 2. September 2004 12:51 schrieb Kyek, Andreas, VF-DE:
Andererseits kann das löschen im laufenden Betrieb die das File evtl. benutzende Applikation aus dem Tritt bringen.
Dürfte nicht passieren. wenn ein geöffnetes File gelöscht wird, merkt die benutzende Anwendung davon erstmal gar nichts, kann brav weiter aus der Datei lesen und in sie schreiben usw. Erst wenn sie vom letzten Programm geschlossen wird, ist sie entgültig weg.
Das ist zwar an sich richtig, aber man kann trotzdem nicht davon ausgehen, daß man temporäre Files im Betrieb bedenkenlos löschen kann. Das geht genau dann, wenn die Applikation nie versucht, die betreffenden Files nochmal zu öffnen oder sonstwie zu manipulieren - viele Files, die gerne in /tmp angelegt werden, sind aber genau dafür da, z.B. Sockets oder Pipes. Thomas.
Jens Benecke wrote:
Am Donnerstag, 2. September 2004 12:51 schrieb Kyek, Andreas, VF-DE:
[...] Andererseits kann das löschen im laufenden Betrieb die das File evtl. benutzende Applikation aus dem Tritt bringen.
Dürfte nicht passieren.
Naja, das stimmt so generell ja nicht. Du kannst gerne einen Selbstversuch machen und z.B. mal die netten ksocket Verzeichnisse in /tmp im laufenden KDE-Betrieb loeschen... Ich wuerde im laufenden Betrieb Sachen in /tmp nur nach vorheriger Sichtpruefung loeschen (also kein "rm -rf /tmp/*"), im Zweifelsfalle dann eher nicht. Bei Systemstart hingegen sollten sich theoretisch alle Files in /tmp gefahrlos loeschen lassen. CU, Th.
Thomas Hertweck schrieb:
Jens Benecke wrote:
Am Donnerstag, 2. September 2004 12:51 schrieb Kyek, Andreas, VF-DE:
[...] Andererseits kann das löschen im laufenden Betrieb die das File evtl. benutzende Applikation aus dem Tritt bringen.
Dürfte nicht passieren.
Hallo, ist das nicht das Richtige? Starte YAST unter System öffnest du den Editor für /etc/sysconfig-Editor dort suchst du nach dem Begriff tmp und gehst in der erscheinenden Liste zu dem Punkt CLEAR-TMP-DIRS-AT_BOOTUP. Dort yes eingeben und speichern mit Bestätigung der Sicherheitsabfrage. Das wars. Damit werden künftig die temporären Dateien gelöscht. Also nie im laufenden Betrieb! Michael
participants (5)
-
Jens Benecke
-
Kyek, Andreas, VF-DE
-
Michael Grummel
-
Thomas Hertweck
-
Thomas Hofer