Разница между df -k и du -sh

3628
Bernard Mwagiru
df -k /dev/sda6 25396228 21249088 2836240 89% /export 21G used 

против

du -sh /export  3.4G /export 

3.4G верна, потому что мы удалили все несущественные файлы, но свободное место, о котором сообщает df, не соответствует фактическому свободному пространству, которое должно быть там.

Почему это так?

8

3 ответа на вопрос

9
Lollekk

Удаленные файлы, вероятно, все еще открыты процессом. Проверьте:

lsof -a +L1 /export 

Я думаю это потому что:

  • df проверяет доступные блоки (суперблоки)
  • du суммирует пространство каждого файла.
Гарет, большое спасибо за это ... Есть ли способ, которым я могу очистить это онлайн или это потребует перезагрузки? Bernard Mwagiru 13 лет назад 0
В любом случае, удалось убить процессы и освободить место на диске ... большое спасибо! Bernard Mwagiru 13 лет назад 0
3
Ignacio Vazquez-Abrams

Одно или несколько приложений имеют открытые файлы /export, но сами имена файлов больше не существуют (т.е. были удалены).

2
Xenoactive

Они измеряют две похожие, но немного разные вещи. df измеряет емкость файловой системы, а du измеряет дерево каталогов. Например, если у вас было следующее:

 /dev/sda6 mounted on /exports /dev/sda7 mounted on /exports/extra 

df of / export измеряет только / dev / sda6, тогда как du of / exports будет измерять / dev / sda6 и / dev / sda7. Есть некоторые флаги относительно пересечения границ файловой системы, которые могли бы изменить счет. Обработка символических ссылок также может повлиять на результаты.

Похожие вопросы