¿Por qué du y df no se ponen de acuerdo sobre el almacenamiento efímero de AWS?

¿Por qué du y df no se ponen de acuerdo sobre el almacenamiento efímero de AWS?

Tengo una instancia de Amazon AWS con un almacenamiento montado en /dev/xvdb, que es el /mnt/build_tmp "habitual". Se trata de 70 GB (exactamente 66.946.696 kB). Al intentar escribirle, aparentemente estaba lleno. Esto parecía poco probable, así que lo verifiqué y había alrededor de 11 GB de archivos (según 'du') pero /mnt (que contiene solo /mnt/build_tmp) estaba 100% lleno (según 'df'). Eliminé todos los archivos (aproximadamente 6 GB) excepto uno (que era un archivo tar grande de 5,5 GB) y ahora tengo aproximadamente 6 GB de espacio libre. Precisamente, en estos momentos, la situación es esta:

ubuntu@ip-172-31-60-67:/mnt$ df
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/xvda1       8115168  6083076   1596816  80% /
none                   4        0         4   0% /sys/fs/cgroup
udev             7689964       12   7689952   1% /dev
tmpfs            1540092      780   1539312   1% /run
none                5120        0      5120   0% /run/lock
none             7700456       72   7700384   1% /run/shm
none              102400        8    102392   1% /run/user
/dev/xvdb       66946696 57365136   6174200  91% /mnt
ubuntu@ip-172-31-60-67:/mnt$ du
5773532 ./build_tmp
du: cannot read directory ‘./lost+found’: Permission denied
16  ./lost+found
5773552 .
ubuntu@ip-172-31-60-67:/mnt$ ls
build_tmp/  lost+found/
ubuntu@ip-172-31-60-67:/mnt$ ll build_tmp/
total 5.6G
drwxr-xr-x 2 ubuntu 4.0K Sep 18 18:33 ./
drwxr-xr-x 4 root   4.0K Aug 25 18:43 ../
-rw-rw-r-- 1 ubuntu 5.6G Sep 17 00:38 archive.tar.gz

¿Alguien puede explicar esto? Nunca antes había visto algo así. Estoy pensando que de alguna manera es resultado de AWS, pero podría ser algo más genérico.

En cualquier caso, necesito recuperar los más de 50 GB de espacio que faltan en el disco.

[PD: ya revisé la pregunta del superusuario "¿por qué df es diferente de du?", no parecía relevante para mi problema.]

Respuesta1

Esto resulta ser una variante del problema descrito aquí:

https://serverfault.com/questions/454194/disk-space-keeps-filling-up-on-ec2-instance-with-no-apperent-files-directories

La solución descrita allí fue la solución a este problema.

Si un proceso todavía abre un archivo que ha sido eliminado, el espacio no se recuperará hasta que el proceso cierre el archivo (o lo elimine). Si no puede identificar el proceso que mantiene abierto un archivo, entonces será útil reiniciar, ya que cerrará todos los procesos en ejecución (y, por lo tanto, cerrará todos los archivos abiertos).

Una vez que ubiqué el proceso abierto y lo eliminé, se recuperó el espacio.

información relacionada