Linux df y OSError: [Errno 28] No queda espacio en el dispositivo

Linux df y OSError: [Errno 28] No queda espacio en el dispositivo

Tengo una extraña inconsistencia (aunque probablemente me esté perdiendo algo bastante básico). Mientras ejecuto algún script que genera archivos pequeños en mi disco I, aparece este error constantemente:

OSError: [Errno 28] No space left on device

Pero cuando ejecuto df -h, obtengo:

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              15G   12G  2.2G  85% /
udev                  502M  144K  502M   1% /dev
none                  502M     0  502M   0% /dev/shm
none                  502M   72K  502M   1% /var/run
none                  502M     0  502M   0% /var/lock
none                  502M     0  502M   0% /lib/init/rw

Entonces, ¿tengo poco espacio en disco o no?

¡Gracias por cualquier aporte!

Respuesta1

Probablemente te hayas quedado sin inodos. Intentar df -i.

Respuesta2

Esto puede tener varias causas:

  • Actualmente, un proceso está escribiendo un archivo grande, por lo que las estadísticas de uso del disco no se actualizan hasta que se cierra el archivo. En este caso, debe verificar el espacio total utilizado ejecutando

sudo du -k /tu/ruta

  • hay uno o más archivos eliminados que todavía están en uso por algún proceso, por lo que la utilidad df no los tiene en cuenta al calcular el uso total del disco; Puedes encontrar estos archivos ejecutando

sudo lsof / | grep eliminado

  • el sistema de archivos se quedó sin inodos, lo cual puede verificar ejecutando

sudo df -i /tu/ruta

información relacionada