GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Verwalten Sie das Linux /tmp-Verzeichnis wie ein Boss

Wie viele von Ihnen möchten Ihre Server per Handzeichen neu starten? Ich sehe keine Hände.

Lange Betriebszeiten sind beeindruckend, nicht wahr? Es macht Sie zu einem der coolen Kids, die mit Ihrer Betriebszeit von 853 Tagen auf einem Produktionssystem prahlen. Was nicht so cool ist, ist, dass Ihre Benutzer gerne /tmp verwenden als ihre persönliche Müllhalde ohne Rücksicht auf die Gesundheit des Gesamtsystems oder Ihre Rechte zum Angeben der Betriebszeit. Und beim Neustart werden keine Benutzerdateien gelöscht, sondern nur Systemdateien – selbst diese Erleichterung ist vorübergehend, bis die Dienste neu gestartet werden und Benutzer Anwendungen öffnen.

Hinweis: Eine Ausnahme vom Nichtlöschen von temporären Benutzerdateien nach einem Neustart ist die Aktivierung von tmp.mount , aber das ist ein Thema für einen anderen Artikel. Außerdem gibt es Systemverwaltungsskripte für RHEL 7 und höher.

Es ist unmöglich, Benutzer zu zwingen, die Richtlinie zum Entfernen von Dateien aus /tmp einzuhalten Verzeichnis rechtzeitig. Was also soll ein frustrierter Systemadministrator tun, wenn Sie Dutzende, Hunderte oder sogar Tausende von /tmp haben Verzeichnisse und Benutzer zu behandeln? Die Antwort ist die Bereitstellung von Verwaltungsskripten für Benutzerdateien.

Sie können Haushaltsskripts erstellen und sie in crontab platzieren um regelmäßig Benutzerdateien aus /tmp zu entfernen Verzeichnis. Es ist ein unglücklicher, aber notwendiger Service, den Sie Ihren Benutzern bieten müssen. Die meisten erfahrenen Systemadministratoren werden Ihnen sagen, dass Sie keine Dateien aus /tmp entfernen sollten es sei denn, Sie wissen, dass sie nicht verwendet werden. Das ist ein guter Rat. Einige Dienste schreiben Sperrdateien nach /tmp , einige Anwendungen verwenden es und Benutzer verwenden es. Wie bestimmen Sie also, welche Dateien Ihr Verwaltungsskript problemlos entfernen kann?

[ Kostenloser Download:Spickzettel für fortgeschrittene Linux-Befehle. ]

Wie wäre es mit dem Filtern von Dateien nach der Zeit des letzten Zugriffs? Es ist eine gute Wahl, wenn Sie ein Zeitlimit für Dateien haben, die in /tmp verbleiben . Zum Beispiel, wenn Sie Ihre Benutzer warnen, dass Dateien in /tmp zurückgelassen wurden -Verzeichnis entfernt werden, wenn seit zwei Tagen nicht auf sie zugegriffen wurde, fortlaufend, sie sollten dies zur Kenntnis nehmen. Die Verwendung der letzten Zugriffszeit für Benutzerdateien löst das Problem, wenn Sie auch Dateien ausschließen, die dem Root-Benutzer gehören. Verwenden Sie zum Beispiel:

find /tmp -type f \( ! -user root \) -atime +2

Dieses Skript zeigt alle Dateien in /tmp an Verzeichnis, das nicht root gehört und auf das vor mehr als zwei Tagen zugegriffen wurde. Fügen Sie nun den Schalter zum Entfernen des Befehls hinzu:

find /tmp -type f \( ! -user root \) -atime +2 -delete

Kopieren Sie diesen Text in eine Datei, machen Sie ihn ausführbar und erstellen Sie eine crontab Eintrag, der dieses Skript alle acht Stunden ausführt. Sie können dies beispielsweise zu Ihrem crontab hinzufügen :

* */8 * * * /opt/scripts/tmp.clean.sh

Dieses Skript und dieser Zeitplan stellen sicher, dass Ihr /tmp Verzeichnis wird relativ frei von Müll gehalten. Es ist jedoch nicht narrensicher. Wenn ein Benutzer beschließt, eine große Datenmenge in die /tmp Verzeichnis kann diese Aktion andere Probleme verursachen, z. B. dass Sie sich nicht über SSH am System anmelden können.

Pflege von /tmp Verzeichnis ist nicht einfach. Benutzer lieben es, Dateien in /tmp zu kopieren und lasse sie auf unbestimmte Zeit dort. Glücklicherweise gibt es für Wiederholungstäter immer die Möglichkeit, ihr Konto zu sperren oder eine streng formulierte E-Mail über den Verlust des Zugriffs auf ein System zu senden, bis die Angelegenheit durch ihren Vorgesetzten geklärt ist. Diese Taktiken erregen normalerweise die Aufmerksamkeit des Benutzers und weitere Verstöße sind selten.


Linux
  1. Untersuchen des Linux /proc-Dateisystems

  2. Wo ist das temporäre Verzeichnis in Linux?

  3. Sollen wir den Inhalt von /tmp manuell löschen?

  4. Was ist der Unterschied zwischen /tmp und /run?

  5. So ändern Sie das Standard-/tmp in /home/user/tmp

Linux-tmp-Verzeichnis:Alles, was Sie wissen müssen

So ermitteln Sie die Größe eines Verzeichnisses in Linux

Der richtige Weg zum Bearbeiten von /etc/passwd- und /etc/group-Dateien unter Linux

Linux-Anfänger:Verwalten Sie Dateien mit dem Terminal unter CentOS 8

Die Dateien /proc/mounts, /etc/mtab und /proc/partitions verstehen

Alles, was Sie über das Linux /tmp-Verzeichnis wissen müssen