Tiene un sistema de archivos VZFS, lo que significa que su VPS es una máquina virtual Parallels Virtuozzo. En Virtuozzo, el proveedor de alojamiento puede establecer límites en muchos parámetros, incluidas las asignaciones que obtiene con VZFS.
Causa: Fuera de Inodes (más común)
Después de años de trabajar con cientos de clientes de Virtuozzo VPS que han tenido el problema de no poder crear archivos, a pesar de que parecía haber mucho espacio libre, la gran mayoría de ellos había alcanzado su límite de inodo. Ejecute este comando para ver la asignación de inodes ( Inodes
), los inodes utilizados ( IUsed
), los inodes restantes ( IFree
) y el porcentaje de inodes utilizados ( IUse%
):
df -i
Tener un 100% de uso de inodo sucede mucho. Causas comunes en mi experiencia:
- Rebote de correos electrónicos no deseados
- Correos electrónicos salientes salientes en cola
- Muchos correos electrónicos entrantes almacenados
- Algunos usuarios configuran su recolección de basura de sesión PHP (
session.gc_maxlifetime
) en más de cien años
- Demasiados archivos de caché generales
- Caché de objetos habilitada en el plugin de WordPress W3 Total Cache
- Registro de errores de Magento (se genera un nuevo archivo para cada error)
- Otros programas / scripts mal configurados o mal diseñados que hacen un montón de archivos y se olvidan de eliminarlos
Solución de problemas
Si encuentra que está bajo o sin inodos pero no sabe dónde están la mayoría de ellos, tengo este Bash one-liner que busca en el directorio actual y cuenta los inodos en una profundidad de carpeta 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
Puede seguir cambiando el directorio de trabajo actual a partir de /
hasta que encuentre al culpable usando su asignación de inodo.
Explicación
Su VPS está en un sistema de archivos VZFS, que forma parte de Parallels Virtuozzo (no OpenVZ, que es similar y está basado en la misma tecnología, pero OpenVZ no estaría usando VZFS).
Debido a la forma en que Virtuozzo almacena archivos en VZFS, los inodos a menudo están más limitados de lo que lo estarían en otros sistemas de archivos como ext4 o XFS. El host rastrea todos estos archivos, y sería ventajoso para el proveedor de hosting no permitir que un solo VPS tome cientos de millones de inodos. Como resultado, el proveedor de hosting puede establecer que el límite de inodo sea bajo, como 1,000,000 de inodes.
Después de años de trabajar con cientos de clientes que agotaron su asignación de inodo en Virtuozzo, estos problemas de cuota de disco "misteriosos" ya no me sorprenden.
Causa: otros límites de Virtuozzo
Un porcentaje muy pequeño de los clientes de Virtuozzo VPS con los que he trabajado tuvieron problemas con el sistema de archivos porque alcanzaron otros límites. Puede ver algunos (pero no todos) de los límites con este comando:
cat /proc/user_beancounters
Solución de problemas
Si la failcnt
columna tiene un valor mayor que 0 o un held
valor de columna es igual al limit
valor correspondiente , ha alcanzado un límite.
Puede consultar cuál es cada parámetro en la wiki de OpenVZ aquí . Un parámetro puede ser "primario", "secundario" o "auxiliar".
Debe comunicarse con su proveedor de alojamiento para obtener más ayuda si descubre que no puede disminuir el held
recuento de un límite que ha alcanzado su VPS.
Esta respuesta se puede ampliar mucho dependiendo de qué granos se hayan maximizado, ya que los diferentes límites alcanzados causan diferentes síntomas.
Causa: Límite (s) disminuido después de ser golpeado
Con respecto /proc/user_beancounters
o df -i
, a veces, un administrador del sistema Virtuozzo puede disminuir el valor limit
de un parámetro por debajo del held
valor.
Por ejemplo, si el límite original del diskinodes
parámetro era 1,500,000 y usted alcanza el límite, entonces alguien en su proveedor de alojamiento establece su límite de inodo en 1,000,000, vería un extraño informe de inodo df -i
que no tiene sentido.
Por su parte, podría ver un número irrazonablemente grande, como 18,446,744,069,620,218,961 .
Considero que este es un comportamiento siniestro del proveedor de alojamiento, especialmente si no le informan, porque los valores inusuales que ve van en contra del conocimiento de los súper usuarios que no tienen experiencia con Virtuozzo / OpenVZ, lo que conduce a engaño consejo ( ejemplo , otro ejemplo ).
Solución de problemas
Póngase en contacto con su proveedor de alojamiento. Muéstreles lo que encontró y trabaje con ellos para que sus granos se mantengan por debajo del límite.
Si se niegan a ayudarlo, abandone a su proveedor de alojamiento y busque otro que no use la virtualización Virtuozzo / OpenVZ. La virtualización KVM, la virtualización VMware, la virtualización Xen o los servidores básicos estarán sujetos a muchos menos límites que Virtuozzo / OpenVZ.
Explicación
Su proveedor de alojamiento puede haber estado auditando o respondiendo a una alerta y descubrió que su VPS estaba usando demasiado recurso específico (casi siempre el límite de inodes, que es el diskinodes
parámetro en su extremo).
Un administrador inexperto de Virtuozzo en el proveedor de alojamiento cree que puede limitar el problema al reducir el límite a algo más bajo que el uso real de los recursos. En el caso de los inodos, puede tener una asignación más baja, como 1,000,000, a pesar de que su uso actual real puede ser mayor, como 1,500,000.
El administrador de Virtuozzo en su panel de control vería su uso real y el nuevo límite, pero vería números falsos que posiblemente sean irrazonablemente altos debido a la forma en que Virtuozzo virtualiza.
Un administrador negligente de Virtuozzo no le informará sobre este cambio, por lo que debe comunicarse con su proveedor de alojamiento si le sucede esto.