Introducción al problema de inodos agotados en Linux
Uno de los dolores de cabeza más comunes para los administradores de sistemas Linux ocurre cuando comandos como df -h muestran que aún hay espacio disponible en el disco duro, pero el sistema operativo sigue arrojando errores de 'Dispositivo sin espacio' o no permite crear nuevos archivos. Este fenómeno ocurre cuando se agotan los inodos (inodes), estructuras de datos que almacenan la metainformación de cada archivo y directorio.
Causas principales del agotamiento de inodos
El sistema de archivos de Linux asigna un número fijo de inodos al momento de formatear la partición. Cada archivo, directorio y enlace simbólico consume exactamente un inodo. Las causas más frecuentes de este problema son:
- Acumulación masiva de archivos pequeños, como cachés de aplicaciones web (Magento, WordPress).
- Millones de archivos de sesión de PHP antiguos no eliminados automáticamente.
- Sistemas de correo electrónico mal configurados que generan miles de ficheros pequeños en el directorio
/var/mail. - Registros (logs) descontrolados divididos en miles de pequeños reportes diarios.
Método 1: Identificar qué directorio está consumiendo todos los inodos
Antes de borrar archivos al azar, debes localizar exactamente dónde se encuentra el foco del problema. Ejecuta el siguiente comando en tu terminal para listar el uso de inodos por directorio:
sudo du --inodes -s /* | sort -hrAnaliza la salida para identificar la carpeta con mayor cantidad de inodos utilizados (por ejemplo, /var o /home). Repite el proceso ingresando a esa carpeta hasta dar con el subdirectorio exacto.
Método 2: Limpiar archivos temporales y sesiones de PHP
Si el problema proviene de archivos temporales acumulados, puedes eliminarlos de forma segura. Por ejemplo, para borrar sesiones de PHP que tengan más de 7 días de antigüedad sin usar, ejecuta:
find /var/lib/php/sessions/ -type f -mtime +7 -deleteEste comando buscará y eliminará únicamente los archivos obsoletos, liberando miles de inodos de manera inmediata.
Método 3: Purgar logs del sistema o cachés de aplicaciones
Si el consumo excesivo proviene de logs o cachés, vacía el contenido de los directorios afectados. Asegúrate de reiniciar el servicio correspondiente tras la limpieza. Puedes verificar que el problema se haya resuelto ejecutando:
df -iRevisa la columna de porcentaje de uso (IUse%). Si el valor ha disminuido considerablemente, tu sistema Linux volverá a operar con normalidad.