Sie haben ein VZFS-Dateisystem, dh Ihr VPS ist eine virtuelle Maschine von Parallels Virtuozzo. In Virtuozzo kann der Hosting-Provider eine Reihe von Parametern festlegen, einschließlich der Zuordnungen, die Sie mit VZFS erhalten.
Ursache: Outodes (am häufigsten)
Nach jahrelanger Zusammenarbeit mit Hunderten von Virtuozzo-VPS-Kunden, die das Problem hatten, keine Dateien erstellen zu können, obwohl es schien, dass genügend freier Speicherplatz vorhanden war, hatte die große Mehrheit von ihnen ihr Inode-Limit erreicht. Führen Sie diesen Befehl aus, um die Inode-Zuordnung ( Inodes
), die verwendeten Inodes ( IUsed
), die verbleibenden Inodes ( IFree
) und den Prozentsatz der verwendeten Inodes ( IUse%
) anzuzeigen :
df -i
Mit 100% Inode-Nutzung passiert viel. Häufige Ursachen in meiner Erfahrung:
- Spam-E-Mail-Rücksprünge
- Ausgehende Spam-E-Mails wurden in die Warteschlange gestellt
- Viele eingehende E-Mails werden gespeichert
- Einige Benutzer setzen ihre Garbage Collection (
session.gc_maxlifetime
) für ihre PHP-Sitzung auf über hundert Jahre - Viel zu viele allgemeine Cache-Dateien
- Objektcache im WordPress-Plugin aktiviert W3 Total Cache
- Magento-Fehlerprotokoll (für jeden Fehler wird eine neue Datei generiert)
- Andere schlecht konfigurierte oder schlecht gestaltete Programme / Skripts, die eine Reihe von Dateien bilden und vergessen, sie zu löschen
Fehlerbehebung
Wenn Sie feststellen, dass Sie keine oder nur wenige Inodes haben, aber nicht wissen, wo sich die meisten befinden, habe ich diesen Bash-Einzeiler, der das aktuelle Verzeichnis durchsucht und die Inodes mit einer Ordnertiefe von 1 zählt:
for i in $(find $(pwd) -maxdepth 1 -type d | sort); do echo -e "$(find "$i" | wc -l)\t: $(readlink -f "$i")"; done | sort -nr
Sie können das aktuelle Arbeitsverzeichnis so lange ändern, /
bis Sie den Täter anhand Ihrer Inode-Zuordnung gefunden haben.
Erläuterung
Ihr VPS befindet sich in einem VZFS-Dateisystem, das Teil von Parallels Virtuozzo ist (nicht OpenVZ, das ähnlich ist und auf der gleichen Technologie basiert, aber OpenVZ würde VZFS nicht verwenden).
Aufgrund der Art und Weise, wie Virtuozzo Dateien in VZFS speichert, sind Inodes oft mehr als in anderen Dateisystemen wie ext4 oder XFS beschränkt. Der Host verfolgt alle diese Dateien und es wäre für den Hosting-Anbieter von Vorteil, nicht zuzulassen, dass ein einzelner VPS Hunderte Millionen Inodes beansprucht. Infolgedessen kann der Hosting-Provider das Inode-Limit wie in 1.000.000 Inodes auf ein niedriges Niveau setzen.
Nach jahrelanger Zusammenarbeit mit Hunderten von Kunden, die ihre Inode-Zuweisung auf Virtuozzo erschöpft haben, überraschen mich diese "mysteriösen" Festplattenquoten nicht mehr.
Ursache: Andere Virtuozzo-Grenzen
Ein sehr kleiner Prozentsatz der Virtuozzo-VPS-Kunden, mit denen ich gearbeitet habe, hatte Probleme mit dem Dateisystem, weil sie andere Grenzen überschritten hatten. Mit diesem Befehl können Sie einige (aber nicht alle) Grenzwerte sehen:
cat /proc/user_beancounters
Fehlerbehebung
Wenn die failcnt
Spalte einen Wert größer als 0 hat oder ein held
Spaltenwert dem entsprechenden limit
Wert entspricht, haben Sie ein Limit erreicht.
Sie können die einzelnen Parameter im OpenVZ-Wiki hier nachschlagen . Ein Parameter kann "primär", "sekundär" oder "hilfsbereit" sein.
Wenden Sie sich an Ihren Hosting-Provider, um weitere Unterstützung zu erhalten, wenn Sie feststellen, dass Sie die held
Anzahl für ein Limit, das Ihr VPS erreicht hat, nicht verringern können .
Diese Antwort kann in Abhängigkeit von den maximal ausgelagerten Bohnen erheblich erweitert werden, da unterschiedliche Grenzwerte unterschiedliche Symptome verursachen.
Ursache: Limit (s) nach dem Treffer gesenkt
In Bezug auf /proc/user_beancounters
oder df -i
manchmal kann ein Virtuozzo-Systemadministrator den limit
Parameterwert unter den held
Wert verringern .
Wenn zum Beispiel das ursprüngliche Limit des diskinodes
Parameters 1,500.000 betrug und Sie das Limit erreicht haben, dann setzt jemand bei Ihrem Hosting-Provider Ihr Inode-Limit auf 1.000.000. Sie würden einen bizarren Inode-Bericht sehen df -i
, der keinen Sinn macht.
An Ihrem Ende könnten Sie eine unangemessen große Anzahl sehen, wie 18.446.744.069.620.218.961 .
Ich halte dies für ein unheimliches Verhalten des Hosting-Providers, insbesondere wenn er Sie nicht informiert, denn die ungewöhnlichen Werte, die Sie sehen, stehen im Widerspruch zu dem Wissen von Super-Usern, die keine Erfahrung mit Virtuozzo / OpenVZ haben, was zu irreführenden Ergebnissen führt Beratung ( Beispiel, ein anderes Beispiel ).
Fehlerbehebung
Wenden Sie sich an Ihren Hosting-Provider. Zeigen Sie ihnen, was Sie gefunden haben, und arbeiten Sie mit ihnen zusammen, um Ihre Bohnen unter das Limit zu bringen.
Wenn sie sich weigern, Ihnen zu helfen, geben Sie Ihrem Hosting-Provider die Hand und suchen Sie einen anderen Anbieter, der keine Virtuozzo / OpenVZ-Virtualisierung verwendet. KVM-Virtualisierung, VMware-Virtualisierung, Xen-Virtualisierung oder Bare-Metal-Server unterliegen weitaus weniger Beschränkungen als Virtuozzo / OpenVZ.
Erläuterung
Ihr Hosting-Provider hat möglicherweise eine Warnung geprüft oder darauf geantwortet und festgestellt, dass Ihr VPS eine bestimmte Ressource zu stark beansprucht (fast immer die Grenze für Inodes, die der diskinodes
Parameter an ihrem Ende ist).
Ein unerfahrener Virtuozzo-Administrator des Hosting-Providers glaubt, dass er das Problem einschränken kann, indem er das Limit auf etwas weniger als die tatsächliche Ressourcennutzung reduziert. Im Fall von Inodes haben Sie möglicherweise eine geringere Zuweisung (1.000.000), auch wenn Ihre derzeitige Nutzung höher ist (1.500.000).
Der Virtuozzo-Administrator in seinem Steuerungsfeld würde Ihre tatsächliche Nutzung und das neue Limit sehen, aber Sie würden falsche Zahlen sehen, die aufgrund der Art, wie Virtuozzo virtualisiert, möglicherweise sehr unangemessen hoch sind.
Ein nachlässiger Virtuozzo-Administrator würde Sie nicht über diese Änderung informieren. In diesem Fall sollten Sie sich an Ihren Hosting-Anbieter wenden, wenn Ihnen dies passiert.