Esta pode não ser uma resposta completa, mas eu sei de duas fontes para tais discrepâncias:
-
df
mostrando mais espaço quedu
(ou seja, arquivos impossivelmente grandes)
Arquivos esparsos podem causar isso. Por exemplo: / var / log / lastlog é relatado como impossivelmente grande (como 1,2 TB) em muitas VMs devido a um bug no VMWare. Não é tão grande assim, é apenas um arquivo esparso. O manuseio é ignorá-los. df
é sempre mais preciso que du
para espaço livre em disco real.
-
df
mostrando o disco completo quedu
indica (também arquivos invisíveis comendo espaço em disco)
A causa comum para isso são arquivos excluídos que ainda são mantidos abertos por processos. Esse é frequentemente o caso após uma atualização e antes de uma reinicialização - todos os arquivos de biblioteca antigos ainda são mantidos abertos pelos processos que possuem as alças de arquivo, mesmo que sejam "excluídos" e não sejam exibidos de du
ou ls
.
O manuseio fácil é reinicializar, mas você pode lidar com isso mais cirurgicamente. Por exemplo, comece com lsof | grep -c DEL
e veja quantos arquivos excluídos ainda estão abertos. (Uma certa quantidade é relativamente normal, não necessariamente patológica, mas ainda é o lugar certo para entender a discrepância do espaço em disco.)