Dê uma olhada em diferença du vs. df
Veja uma explicação mais detalhada: link
Basicamente, df
lê somente o superbloco e confia nele completamente. du
lê cada objeto e os resume.
Além disso, um processo em execução pode manter um arquivo excluído aberto. Isso significa que o espaço ainda será reservado e visto por df
, mas como du
não verá mais uma referência a esse arquivo na árvore de diretórios, ele não poderá ver esses blocos reservados.