Startseite
» LINUX
»
Wie man die Größe des /tmp-Ordners unter Linux erhöht
Wie man die Größe des /tmp-Ordners unter Linux erhöht
Wenn Linux meldet, dass das Verzeichnis /tmpvoll ist, sollten Sie es nicht einfach so vergrößern. Prüfen Sie zuerst, welches Dateisystem das Verzeichnis tatsächlich unterstützt. Handelt es /tmpsich um eine tmpfs- Einbindung, können Sie die Größenbeschränkung sofort durch ein erneutes Einbinden erhöhen und diese Beschränkung dauerhaft in der Systemkonfiguration speichern /etc/fstab. Ist das Verzeichnis Teil eines ext4-, XFS-, Btrfs- oder eines anderen festplattenbasierten Dateisystems, size=ist die tmpfs-Option nicht anwendbar.
Prüfen Sie, wie /tmp eingebunden ist.
Öffnen Sie ein Terminal und führen Sie folgenden Befehl aus:
Der findmntBefehl identifiziert das Dateisystem, das die Datei enthält /tmp, und dfzeigt dessen Größe und aktuelle Nutzung an. Die zugehörige Dokumentation von findmnt empfiehlt die Verwendung der Option `target`, um das Dateisystem für einen Pfad aufzulösen.
Falls FSTYPEja tmpfs, fahren Sie mit den folgenden Schritten fort. Falls es sich um etwas wie beispielsweise ext4, xfs, oder btrfshandelt, fahren Sie mit dem Abschnitt „Festplattenbasierte Systeme“ fort.
/tmpBevor Sie das Größenlimit für tmpfs ändern, vergewissern Sie sich, dass es sich tatsächlich um eine tmpfs-Einbindung handelt.
Temporär erhöhen eines tmpfs /tmp
Sie müssen tmpfs nicht aushängen /tmp. Linux tmpfs unterstützt die Änderung seiner maximalen Größe beim erneuten Einhängen, ohne die bereits gespeicherten Dateien zu verwerfen. Um beispielsweise das Limit auf 5 GiB zu erhöhen, führen Sie folgenden Befehl aus:
sudo mount -o remount,size=5G /tmp
Überprüfen Sie anschließend das Ergebnis:
df -h /tmp
Die Dokumentation des Linux-Kernels zu tmpfs besagt, dass das size=Limit beim erneuten Einbinden geändert werden kann. Ein Wert wie beispielsweise 5Gstellt eine maximale Speicherkapazität dar und reserviert nicht sofort 5 GiB RAM. tmpfs belegt Speicher beim Speichern von Dateien und kann Swap-Speicher nutzen, wenn dieser verfügbar ist.
Setzen Sie kein unnötig hohes Limit. Eine Arbeitslast, die ein großes tmpfs-Verzeichnis füllt, kann zu starkem Speicherdruck führen. Außerdem ist ein solches Remount nur temporär: Nach einem Neustart wird die ursprüngliche Boot-Konfiguration wiederhergestellt, sofern Sie die Einstellungen für das persistente Mounten nicht ändern.
Durch ein erneutes Einbinden wird die Größenbeschränkung für das aktive tmpfs-Verzeichnis geändert, ohne dass es ausgehängt wird /tmp.
Die größere /tmp-Größe dauerhaft festlegen
Verwenden Sie diese Methode nur, nachdem Sie sichergestellt haben, dass /tmpes sich tatsächlich um tmpfs handelt. Erstellen Sie /etc/fstabvorher ein Backup:
sudo cp /etc/fstab /etc/fstab.backup
Öffnen Sie die Datei mit Ihrem bevorzugten Editor mit Root-Rechten, zum Beispiel:
sudoedit /etc/fstab
Falls bereits eine /tmptmpfs-Zeile vorhanden ist, behalten Sie deren aktuelle Sicherheits- und Kompatibilitätsoptionen bei und ändern Sie nur deren size=Wert. Wenn Ihr System die standardmäßige tmpfs-basierte Konfiguration von systemd verwendet /tmpund keinen /tmpEintrag in der Datei `/etc/tmpfs/` besitzt fstab, dokumentiert systemd, dass ein /etc/fstabEintrag verwendet werden kann, um die tmpfs-Mountoptionen zu ändern. Ein typisches Beispiel ist:
Diese mode=1777Einstellung behält die normalen Schreibrechte für temporäre Verzeichnisse (weltweit beschreibbar) mit dem Sticky-Bit bei. Fügen Sie keine Optionen wie beispielsweise noexecnur zur Größenänderung hinzu; Änderungen am Mount-Verhalten, die nicht damit zusammenhängen, können Software beeinträchtigen, die die bestehende Konfiguration erwartet. Weitere Informationen finden Sie in der Dokumentation zu Dateisystemen der systemd-API und in der zugehörigen fstab-Dokumentation .
Für ein dauerhaftes Limit, das size=in der bestehenden oder beabsichtigten tmpfs-Konfiguration für /tmp.
Bei einer auf systemd basierenden Distribution müssen die generierten Einheiten nach der Bearbeitung neu geladen werden fstab:
sudo systemctl daemon-reload
Wenn /tmptmpfs bereits eingebunden ist, können Sie die neuen fstabOptionen sofort anwenden mit:
sudo mount -o remount /tmp
Andernfalls starten Sie das System zu einem geeigneten Zeitpunkt neu. Überprüfen Sie anschließend sowohl die Mount-Optionen als auch die Kapazität.
Überprüfen Sie nach der Änderung den Dateisystemtyp, die Mount-Optionen und die gemeldete Kapazität.
Was passiert, wenn /tmp nicht tmpfs ist?
Wenn findmntangezeigt wird, dass /tmpsich das temporäre Verzeichnis auf Ihrem Root-Dateisystem oder einem anderen festplattenbasierten Dateisystem befindet, gibt es keine unabhängige Beschränkung für die Vergrößerung von tmpfs. Sie müssen Speicherplatz freigeben oder das zugrunde liegende Dateisystem, die Partition oder das logische Volume erweitern. Eine weitere Möglichkeit besteht darin, ein bestimmtes Programm auf ein größeres temporäres Verzeichnis zu verweisen, sofern es dies berücksichtigt TMPDIR.
In den Richtlinien von systemd zum temporären Verzeichnis wird darauf hingewiesen, dass Software dieses verwenden sollte, $TMPDIRwenn es eingerichtet ist, und dass /var/tmpes im Allgemeinen besser für größere temporäre Daten geeignet ist, die einen Neustart überstehen sollen.
Wenn weiterhin die Meldung „Kein Speicherplatz mehr auf dem Gerät“ angezeigt wird
Überprüfen Sie sowohl die Inode- als auch die Byte-Nutzung:
df -h /tmp
df -i /tmp
Ein Dateisystem kann einen Mangel an Inodes aufweisen, selbst wenn noch freie Bytes vorhanden sind. Untersuchen Sie außerdem, welche Anwendung die temporären Daten erzeugt, anstatt das Dateisystem wiederholt zu vergrößern /tmp. Eine Größenänderung ist angebracht, wenn die normale Arbeitslast tatsächlich mehr temporären Speicherplatz benötigt, aber unkontrolliertes Wachstum sollte in der Regel besser an der Quelle behoben werden.