linux - verificar - no queda espacio en el dispositivo
ver tamaño total de disco en linux (4)
Para enumerar los procesos que contienen archivos eliminados en un sistema Linux que no tiene lsof
, aquí está mi truco:
pushd /proc ; for i in [1-9]* ; do ls -l $i/fd | grep "(deleted)" && (echo -n "used by: " ; ps -p $i | grep -v PID ; echo ) ; done ; popd
Cuando intenté scp algunos archivos en una máquina centos, aparece el error "No queda espacio en el dispositivo"
Lo intenté
[root@...]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol01 18G 18G 0 100% /
Y cuando lo haga
du -sh /
-> da sólo 5G
[... ~]$ df -i /
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/mapper/VolGroup00-LogVol01
4685824 209516 4476308 5% /
Parece que el sistema de archivos está lleno. ¿Cómo puedo encontrar cuál está tomando tanto tamaño?
Puede ejecutar los siguientes comandos.
lsof / | grep eliminado
mata los ID de proceso, lo que libera espacio en el disco.
Tal diferencia entre la salida de du -sh
y df -h
puede suceder si se ha eliminado algún archivo grande, pero aún se abre por algún proceso. Compruebe con el comando lsof | grep deleted
lsof | grep deleted
para ver qué procesos han abierto los descriptores de los archivos eliminados. Puede reiniciar el proceso y el espacio será liberado.
Tal vez te has quedado sin inodos. Prueba df -i
2591792 136322 2455470 6% /home
/dev/sdb1 1887488 1887488 0 100% /data
Disco usado 6% pero tabla de inodo completa.