En varias ocaciones nos hemos visto en la situación de que hemos borrado ciertos ficheros en linux y no se ha liberado el espacio y lo que es peor es que vemos valores diferentes al calcuar el espacio con df y ls
Voy a explicar como hacerlo de una manera muy sencilla.
Comprobamos que no se este usando el fichero y se puede liberar el espacio.
lsof | grep deleted
postdrop 9155 root 4u REG 8,2 0 114958 /var/spool/postfix/maildrop/AC9221C10E (deleted)
postdrop 9927 root 4u REG 8,2 0 118127 /var/spool/postfix/maildrop/E9A721CD6F (deleted)
postdrop 11171 root 4u REG 8,2 0 118540 /var/spool/postfix/maildrop/8F4D31CF0C (deleted)
[root@base]# ls -lh /proc/9155/fd/*
lrwx------ 1 root root 64 Jun 20 2021 /proc/9155/fd/4 -> /var/spool/postfix/maildrop/AC9221C10E (deleted)
Con los resultados obtenidos, ejecutamos el comando con el id que deseemos borrar
: > /proc/9155/fd/4
Y con estos pasos ya habremos liberado el espacio.