У нас есть большая файловая система, в которой полная du
(использование диска) сводка занимает более двух минут. Я хотел бы найти способ ускорить итоги использования диска для произвольных каталогов в этой файловой системе.
Для небольших веток я заметил, что du
результаты как-то кешируются, поскольку повторные запросы выполняются намного быстрее, но в больших ветвях ускорение становится незначительным.
Есть ли простой способ ускорить du
или более агрессивно кэшировать результаты для веток, которые не были изменены со времени предыдущего поиска?
Или есть альтернативная команда, которая может доставить резюме использования диска быстрее?
du
была бы плохой, но более быстрый скрипт-обертка с идентичным интерфейсом был бы очень полезен для нас. Кроме того, я ожидаю, что результаты кэширования, зависящие от времени последнего изменения (и при условии отсутствия операций на диске, например, дефрагментации), дадут точные результаты размера: я что-то упустил?
find
. Но тогда есть locate
.
StatFs
очень быструю оценку размеров каталогов. Это было почти в 1000 раз быстрее для больших и сложных каталогов, по сравнению с du
.