Vous avez un système de fichiers VZFS, ce qui signifie que votre VPS est une machine virtuelle Parallels Virtuozzo. Dans Virtuozzo, le fournisseur d'hébergement peut définir des limites sur de nombreux paramètres, y compris les allocations que vous obtenez avec VZFS.
Cause: hors des inodes (le plus courant)
Après des années de travail avec des centaines de clients Virtuozzo VPS qui ont eu le problème de ne pas pouvoir créer de fichiers, même s'il semblait y avoir beaucoup d'espace libre, la grande majorité d'entre eux avaient atteint leur limite d'inode. Exécutez cette commande pour voir l'allocation des Inodes
inodes ( ), les inodes utilisés ( IUsed
), les inodes restants ( IFree
) et le pourcentage d'inodes utilisés ( IUse%
):
df -i
Avoir une utilisation à 100% de l'inode se produit souvent. Causes courantes dans mon expérience:
- Rebonds des courriers électroniques indésirables
- E-mails de spam sortants en file d'attente
- Beaucoup d'e-mails entrants stockés
- Certains utilisateurs définissent leur garbage collection (
session.gc_maxlifetime
) de session PHP sur plus de cent ans
- Beaucoup trop de fichiers de cache généraux
- Cache d'objets activé dans le plugin WordPress W3 Total Cache
- Journal des erreurs de Magento (un nouveau fichier est généré pour chaque erreur)
- Autres programmes / scripts mal configurés ou mal conçus qui créent un tas de fichiers et oublient de les supprimer
Dépannage
Si vous trouvez que vous êtes faible ou hors des inodes mais que vous ne savez pas où la plupart d'entre eux se trouvent, j'ai cette ligne unique Bash qui recherche dans le répertoire en cours et compte les inodes à une profondeur de dossier de 1:
for i in $(find $(pwd) -maxdepth 1 -type d | sort); do echo -e "$(find "$i" | wc -l)\t: $(readlink -f "$i")"; done | sort -nr
Vous pouvez continuer à modifier le répertoire de travail actuel à partir de /
jusqu'à ce que vous trouviez le coupable en utilisant votre allocation d'inode.
Explication
Votre VPS est sur un système de fichiers VZFS, qui fait partie de Parallels Virtuozzo (pas OpenVZ, qui est similaire et basé sur la même technologie, mais OpenVZ n'utiliserait pas VZFS).
En raison de la façon dont Virtuozzo stocke les fichiers dans VZFS, les inodes sont souvent plus limités qu'ils ne le seraient sur d'autres systèmes de fichiers comme ext4 ou XFS. L'hôte suit tous ces fichiers, et il serait avantageux pour le fournisseur d'hébergement de ne pas laisser un seul VPS prendre des centaines de millions d'inodes. En conséquence, le fournisseur d'hébergement peut définir la limite d'inode à un niveau bas, comme 1 000 000 d'inodes.
Après des années de travail avec des centaines de clients qui ont épuisé leur allocation d'inodes sur Virtuozzo, ces problèmes de quota de disque "mystérieux" ne me surprennent plus.
Cause: autres limites de Virtuozzo
Un très petit pourcentage des clients Virtuozzo VPS avec lesquels j'ai travaillé avaient des problèmes de système de fichiers car ils atteignaient d'autres limites. Vous pouvez voir certaines (mais pas toutes) des limites avec cette commande:
cat /proc/user_beancounters
Dépannage
Si la failcnt
colonne a une valeur supérieure à 0 ou si une held
valeur de colonne est égale à la limit
valeur correspondante , vous avez atteint une limite.
Vous pouvez rechercher ce que chaque paramètre est sur le wiki d'OpenVZ ici . Un paramètre peut être "primaire", "secondaire" ou "auxiliaire".
Vous devez contacter votre hébergeur pour obtenir une assistance supplémentaire si vous constatez que vous ne pouvez pas diminuer le held
nombre de limites que votre VPS a atteint.
Cette réponse peut être beaucoup développée en fonction des haricots qui ont été maximisés, car différentes limites atteintes provoquent des symptômes différents.
Cause: limite (s) diminuée après avoir été touché
En ce qui concerne /proc/user_beancounters
ou df -i
, parfois, un administrateur système Virtuozzo peut diminuer le limit
paramètre en dessous de la held
valeur.
Par exemple, si la limite d'origine du diskinodes
paramètre était de 1 500 000 et que vous atteignez la limite, alors quelqu'un chez votre fournisseur d'hébergement définit votre limite d'inode à 1 000 000, vous verrez un rapport d'inode bizarre df -i
qui n'a aucun sens.
De votre côté, vous pouvez voir un nombre déraisonnablement élevé, comme 18 446 744 069 620 220 1861 .
Je considère que c'est un comportement sinistre de la part du fournisseur d'hébergement, surtout s'il ne vous informe pas, car les valeurs inhabituelles que vous voyez vont à l'encontre des connaissances des super utilisateurs qui n'ont pas d'expérience avec Virtuozzo / OpenVZ, ce qui conduit à des informations trompeuses. des conseils ( exemple , un autre exemple ).
Dépannage
Contactez votre hébergeur. Montrez-leur ce que vous avez trouvé et travaillez avec eux pour obtenir vos haricots détenus en dessous de la limite.
S'ils refusent de vous aider, abandonnez votre hébergeur et trouvez-en un autre qui n'utilise pas la virtualisation Virtuozzo / OpenVZ. La virtualisation KVM, la virtualisation VMware, la virtualisation Xen ou les serveurs bare metal seraient soumis à beaucoup moins de limites que Virtuozzo / OpenVZ.
Explication
Votre hébergeur a peut-être audité ou répondu à une alerte et a constaté que votre VPS utilisait trop d'une ressource spécifique (presque toujours la limite des inodes, qui est le diskinodes
paramètre de leur côté).
Un administrateur Virtuozzo inexpérimenté chez le fournisseur d'hébergement estime qu'il peut limiter le problème en réduisant la limite à quelque chose de inférieur à l'utilisation réelle des ressources. Dans le cas des inodes, vous pouvez avoir une allocation inférieure, comme 1 000 000, même si votre utilisation actuelle réelle peut être plus élevée, comme 1 500 000.
L'administrateur de Virtuozzo dans son panneau de contrôle verrait votre utilisation réelle et la nouvelle limite, mais vous verriez des nombres faux qui sont peut-être très déraisonnablement élevés en raison de la façon dont Virtuozzo se virtualise.
Un administrateur Virtuozzo négligent ne vous informera pas de ce changement, c'est pourquoi vous devez contacter votre hébergeur si cela vous arrive.