du - Disk Usage

du Пример вывода:

8 ./share/gegl-0.2/plug-ins
12 ./share/gegl-0.2
16 ./share/rhythmbox
56 ./share/icons/hicolor/16x16/apps
60 ./share/icons/hicolor/16x16
208 ./share/icons/hicolor/256x256/apps
212 ./share/icons/hicolor/256x256
64 ./share/icons/hicolor/48x48/apps
68 ./share/icons/hicolor/48x48
56 ./share/icons/hicolor/32x32/apps
60 ./share/icons/hicolor/32x32
404 ./share/icons/hicolor
408 ./share/icons

Для того, чтобы вывести такую же информацию об определенной папке, укажите её при вызове команды, например:

$ du ~/.local $ du /home

Чтобы получить значения размеров папок в более удобном для восприятия формате, а именно в килобайтах (K), мегабайтах (M) или гигабайтах (G) используйте ключ -h:

$ du -h $ du -h /home

Пример вывода:

8.0K ./.vim
24K ./scripts
48K ./.ssh
16K ./.keychain
2.2M ./.lftp
2.4M .

Для того, чтобы узнать общий размер, который занимает определенная папка вызовите команду du с ключем -s:

$ du -s /home

Пример результатов:

291210112 /home/

Лучше будет запустить команду du с ключами -s и -h совместно:

$ du -hs /home

Тогда вывод воспринять легче:

278G /home/

Ключ -c используется для подсчета общей суммы размеров папок так:

du -chs /etc /root/ Результат:

56M /etc
62M /root/
118M итого

Другая удобная опция команды du это ключ –max-depth, который задает глубину папок для просмотра. Если задать глубину равной единице, то можно посмотреть общие размеры всех папок по указанному пути. Выполните:

$ du -h --max-depth=1 du -h --max-depth=1 ./| sort -hr

Если отсутствует на сервере версия du с возможностью использовать –max-depth=1

$ find ./ -maxdepth 1 -type d -exec du -hs {} \;

Пример результатов работы:

2.9M ./.nbi
948K ./.local
104K ./.gconf
12K ./.gnome2
4.0K ./.gnome2_private
44K ./.filezilla
356K ./.cache
12K ./Desktop
4.0K ./.gvfs
1.2M ./.gem
12K ./.dbus
86M ./.cpan
26M ./perl5
1.5M ./.java
80K ./.config
16K ./.ssh
4.0K ./.pulse
165M .

Ключи команды du

Ключ	Действие
-a, –all	Вывести размер для всех файлов, а не только папок
–apparent-size	Вывести действительные размеры, а не занимаемое на диске место; хотя действительный размер обычно меньше, иногда он может быть больше из-за дыр в файлах, внутренней фрагментации, косвенных блоков и тому подобного
-B, –block-size=РАЗМЕР	Выводить результаты в определенных единицах измерения. Например, -BM выводит размеры в единицах, равных 1,048,576 байтам, т.е. в мегабайтах
-b, –bytes	Эквивалентно –apparent-size –block-size=1
-c, –total	Выводить общий итог
-D, –dereference-args	Следовать только по символьным ссылкам, которые перечислены в командной строке
–files0-from=ФАЙЛ	Вывести отчёт об использовании диска, чьи имена файлов перечислены в файле ФАЙЛ
-H	Эквивалентен ключу –dereference-args (-D)
-h, –human-readable	Выводить размеры в удобном для человека виде (например, 1K 234M 2G)
–si	Как -h, но используется делитель 1000, а не 1024
-k	Синоним –block-size=1K
-l, –count-links	Суммировать размеры, если есть несколько жёстких ссылок на один объект
-m	Синоним –block-size=1M
-L, –dereference	Следовать по символьные ссылки
-P, –no-dereference	Не следовать по символьным ссылкам (по умолчанию)
-0, –null	Завершать каждую выводимую строку 0-м байтом, а не символом новой строки
-S, –separate-dirs	Не включать размер папок
-s, –summarize	Выводить размер только для папки, переданной в качестве аргумента
-x, –one-file-system	Оставатся в пределах одной файловой системы
-X, –exclude-from=ФАЙЛ	Исключать файлы, совпадающие с каким-либо образцом из ФАЙЛА
–exclude=ОБРАЗЕЦ	Исключать файлы, соответствующие ОБРАЗЦУ
-d, –max-depth=N	Глубина следования по субдиректориям
–time	Показывать время последней модификации всех файлов в каталоге или всех его подкаталогов
–help	Показать эту справку и выйти
–version	Показать информацию о версии программы du