Cómo Solucionar el Error 'No space left on device' en Linux de Forma Definitiva

Cómo Solucionar el Error 'No space left on device' en Linux de Forma Definitiva
Anuncio relacionado

Introducción al Error 'No space left on device' en Linux

Uno de los problemas más desconcertantes para los administradores de sistemas y usuarios avanzados de Linux es encontrarse con el mensaje de error No space left on device al intentar guardar un archivo, instalar un paquete o ejecutar un script, a pesar de que el comando df -h muestra que hay espacio disponible en el disco duro. Este comportamiento inesperado suele generar confusión, pero tiene una explicación técnica muy clara relacionada con el sistema de archivos.

Causas Principales del Problema en Linux

Este error no siempre ocurre porque la capacidad en gigabytes del disco se haya agotado. Las dos causas más comunes son:

  • Agotamiento de Inodos: Cada archivo y directorio en Linux utiliza un inodo para almacenar sus metadatos. Si creas millones de archivos pequeños (como cachés, sesiones web o nodos de node_modules), puedes agotar todos los inodos disponibles aunque tengas espacio libre en gigabytes.
  • Archivos Borrados pero Abiertos por Procesos: Si eliminas un archivo grande (como un log del sistema) mientras un proceso sigue escribiendo en él, el espacio en disco no se libera realmente hasta que se reinicia el servicio o proceso correspondiente.

Método 1: Cómo Comprobar y Liberar Inodos Agotados

Para verificar si el problema es la falta de inodos, debes ejecutar un comando específico en tu terminal y posteriormente limpiar los directorios que acumulan archivos basura.

  1. Abre tu terminal de Linux y ejecuta el siguiente comando para verificar el uso de inodos: df -i
  2. Revisa la columna IUse%. Si alguno de tus puntos de montaje muestra un 100%, has encontrado la causa del error.
  3. Identifica qué directorio está consumiendo todos los inodos ejecutando: sudo du --inodes -s /* | sort -hr
  4. Una vez detectado el directorio problemático (por ejemplo, una carpeta de caché antigua), elimina los archivos masivos o comprime el directorio para liberar inodos.

Método 2: Detectar y Detener Procesos con Archivos Abiertos Eliminados

Si el sistema de archivos tiene inodos disponibles pero sigue sin haber espacio físico, es muy probable que un proceso mantenga retenido un archivo borrado.

  1. Ejecuta el siguiente comando para listar los archivos borrados que siguen ocupando espacio: sudo lsof +L1
  2. Busca en la salida del comando aquellos archivos con un tamaño considerable y anota el ID del proceso (PID) que aparece en la columna correspondiente.
  3. Reinicia el servicio asociado a ese PID o mátalo de forma segura usando: sudo kill -9 [PID]
  4. Verifica que el espacio se haya liberado correctamente ejecutando de nuevo: df -h

Conclusión

El error No space left on device en Linux es fácil de resolver una vez identificas si el cuello de botella está en los inodos o en archivos fantasma retenidos por procesos activos. Realizar un mantenimiento periódico de cachés y logs evitará que este inconveniente vuelva a interrumpir tus operaciones en el servidor o estación de trabajo.

Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
Apps

Cómo Solucionar el Error de Pantalla Negra en Google Chrome de Forma Definitiva

La pantalla negra en Google Chrome impide la visualización correcta de tus páginas web favoritas. Aprende a solucionarlo de forma definitiva con este tutorial experto.

Leer guía completa →
Hardware

Cómo Solucionar el Error CPU Fan Error al Encender la PC de Forma Definitiva

Aprende a identificar por qué tu placa madre muestra el error de ventilador de CPU al iniciar y cómo solucionarlo fácilmente.

Leer guía completa →
Mac

Cómo Solucionar el Error de 'Aplicación Dañada y No se Puede Abrir' en macOS de Forma Definitiva

¿Tu Mac te impide abrir una aplicación asegurando que está dañada? Descubre cómo saltar esta restricción de seguridad en pocos pasos.

Leer guía completa →