Quando os arquivos são excluídos no * nix, eles continuam a viver no disco (e ocupam espaço em disco) enquanto o processo os abrir. É bastante comum aproveitar isso para "proteger" arquivos temporários, criando-os com um tamanho pequeno, excluindo-os e, em seguida, usando o arquivo excluído para armazenar dados sem ter que se preocupar com outros processos (facilmente) obtendo acesso a ele. a quantidade de espaço nos arquivos excluídos pode aumentar consideravelmente se, digamos, um banco de dados temporário ou uma sessão de edição de multimídia estiver sendo manipulada dessa maneira. Outra possibilidade de como você poderia ter tanto espaço "perdido" seria se o sistema tivesse sido atualizado (várias vezes) sem reinicializar ou reiniciar os programas, resultando na abertura de todas as bibliotecas antigas do .so por programas que foram iniciados antes do atualizar e ainda estão em execução.
df
vê o espaço usado por esses arquivos porque ele apenas analisa a quantidade de espaço alocada no dispositivo, mas du
não os vê porque não há entradas de diretório correspondentes.
O espaço usado "Oculto" como esse só pode ser liberado quando os processos que tiverem arquivos excluídos abertos os fecharem. Você pode encontrar estes processos com o comando fuser
e finalizá-los (ou, para muitos daemons, enviar um sinal dizendo-lhes para fechar e reabrir qualquer arquivo aberto).