«Лучшее» очень субъективно, но есть много вариантов. Вот некоторые из них:
Я много работаю с серверными средами, поэтому обычно предпочитаю простые неинтерактивные подходы, которые будут работать где угодно, ничего не устанавливая. Например. мой обычный подход был бы следующим:
du -max / | grep -P '^\d{4}' | sort -rn
Это обычно занимает некоторое время, поэтому я обычно перенаправляю вывод в файл и возвращаюсь через некоторое время. В некоторых системах я периодически запускаю это из cron, чтобы видеть изменения с течением времени.
РЕДАКТИРОВАТЬ: теперь вы добавили информацию о том, что файлы в вашей файловой системе не влияют на общее использование файлов. Похоже, у вас есть большой анонимный файл. Т.е. открытый файл, который был удален. Жестокий подход - перезагрузка, но вы также можете идентифицировать файл, просмотрев proc. Я разговариваю по телефону, но по памяти перечислите файлы в / proc / [0-9] * / fd и поищите большие. Вы можете использовать это, чтобы идентифицировать процесс с большим файлом и посмотреть его содержимое. lsof также может быть полезен.