Посмотреть занимаемое место конкретной директории на диске Linux получится через любой файловый менеджер. Достаточно открыть свойства файла. Но там информация отображается в кратком виде, а нередко нужны подробности. С помощью утилиты ls получить детальные сведения не получится. А вот утилита du для этих целей подойдет отлично.
В данной статье мы расскажем, как посмотреть размер папки в Linux с помощью du. Для этого разберем два примера ее использования.
Содержание статьи
Как посмотреть размер папки в Linux
Сначала мы опишем, как получить информацию об определенной папке, с учетом или без учета ее вложений. А потом перейдем к подпапкам в конкретном каталоге. Заодно упомянем несколько полезных нюансов работы с du, например, возможность сортировки данных.
1. Определённая папка
В качестве примера возьмем папку Downloads. Команда для вывода ее размера выглядит следующим образом:
sudo du -sh /home/root-user/Downloads
В результате выведется её занимаемое место на диске:
Для лучшего понимания команды вкратце пройдемся по задействованным опциям:
- -s – выводить только размер самой папки, без вложенных подпапок.
- -h – выводить информацию в привычном виде. Речь о единицах измерения (K – килобайт, M – мегабайт и т. д.).
Также вы можете посмотреть общий размер только самих файлов в папке, без учета содержимого подпапок. Для этого используется опция -S:
sudo du -sSh /home/root-user/Downloads
Теперь вы знаете как вывести размер папок Linux.
2. Папки в каталоге
Второй полезный сценарий использования утилиты du заключается в выводе размера всех вложенных папок в определенной директории, без учета файлов внутри. Опять в качестве примера возьмем директорию Downloads. Вот нужная нам команда:
sudo du -h /home/root-user/Downloads
В результате ее выполнения в терминале отобразится сначала размер вложенных подпапок, а потом и самой папки. С помощью опции --max-depth можно задать максимальную глубину вложенности. Если вам интересна только сама папка, то глубина равна 0, если еще и вложенные в нее подпапки, то глубина равна 1 и больше:
sudo du -h --max-depth=1 /home/root-user/Downloads
Это будет особенно полезно, когда директория сильно разрослась, и нужно ограничить область действия для утилиты du.
Также вы можете увидеть размер самой папки и всех файлов внутри нее, в том числе и во вложенных папках. Для этих целей нужно дополнительно задать опции -a:
sudo du -ah /home/root-user/Downloads
Если данных на выходе получается слишком много, то в некоторых ситуациях имеет смысл их отсортировать по размеру. Для этого после пути до директории в основной команде нужно добавить | sort -rh:
sudo du -ah /home/root-user/Downloads | sort -rh
Выводы
В статье мы вкратце рассказали о том, как посмотреть размер папки в Linux и ее вложений с помощью утилиты du. Заодно упомянули возможность сортировки и другие важные нюансы. А если вам интересны еще сценарии использования du в терминале Linux, то ознакомьтесь с данной статьей. Там подробно разобран ее синтаксис, доступные опции и конкретные примеры.
zmeygo@Aspire-C22-820:~$ sudo du -h /home/root-user/Downloads
[sudo] пароль для zmeygo:
du: невозможно получить доступ к '/home/root-user/Downloads': Нет такого файла или каталога
Ну так вы каталог пользователя укажите свой а не из примера.
Если у вас пользователь zmeygo то путь соответственно будет /home/zmeygo/Downloads
Конечно не возможно, так как пример команды приведён для юзверя root-user а. а вы пытаетесь выполнить команду под узернойдом zmeygo. измените путь к папке с учётом пользователя, под которым вы работаете.
zmeygo@Aspire-C22-820:~$ sudo su
[sudo] пароль для zmeygo:
root@Aspire-C22-820:/home/zmeygo# sudo du -h /home/root-user/Downloads
du: невозможно получить доступ к '/home/root-user/Downloads': Нет такого файла или каталога
root@Aspire-C22-820:/home/zmeygo#
Михаил, а где вы собственно хотите что-то найти? В каком каталоге? Может вам стоит, для начала, спросить самого себя что и где вы хотите найти? У вас есть пользователь root-user в домашнем каталоге которого вы собираетесь смотреть размер?
Вам реально нечем заняться ребят...
Доброго всем!
Может мне кто разъяснить, зачем мне здесь нужно sudo?
В большинстве случаев можено использовать просто du -h , например, для уточнения размера .
Если каталог принадлежит текущему пользователю или у текущего пользователя есть права доступа к этому каталогу, то не нужно. Если нет - нужно, иначе будет ошибка "Отказано в доступе".
Хороший мануал для начинающего, доступно и ничего лишнего.
Я думаю du -h в каком-то смысле можно использовать вместо list
Шикарная статья, бро!