Linux размер папок рекурсивно

Размеры папок и дисков в Linux. Команды df и du

Свободное место на диске (df)

Для просмотра свободного и занятого места на разделах диска в Linux можно воспользоваться командой df.

Первым делом можно просто ввести команду df без каких-либо аргументов и получить занятое и свободное место на дисках. Но по умолчанию вывод команды не очень наглядный — например, размеры выводятся в КБайтах (1К-блоках).

Примечание:

df не отображает информацию о не смонтированных дисках.

Опция -h

Опция -h (или —human-readable) позволяет сделать вывод более наглядным. Размеры выводятся теперь в ГБайтах.

Размер конкретного диска

Команде df можно указать путь до точки монтирования диска, размер которого вы хотите вывести:

Размер папок на диске (du)

Для просмотра размеров папок на диске используется команда du. Если просто ввести команду без каких либо аргументов, то она рекурсивно проскандирует вашу текущую директорию и выведет размеры всех файлов в ней. Обычно для du указывают путь до папки, которую вы хотите проанализировать. Если нужно просмотреть размеры без рекурсивного обхода всех папок, то используется опция -s (—summarize). Также как и с df, добавим опцию -h (—human-readable).

Просмотр размера текущей папки

Чтобы показать объем просто одного текущего каталога (со всеми вложенными файлами + подкаталогами) подойдёт команда du с ключиком -sh.

Вот пример, как определить размер директории данного сайта:

Посмотреть размеры всех папок

Если нужно посчитать вес всех директорий плюс файлы — добавляем звёздочку:

Отобразить размеры всех вложенных папок

Чтобы проверить информацию в том числе вообще по всем папкам, вместе со вложенными — понадобится самый короткий вариант:

Внимание: если такой случайно запустить в корне на объёмном диске с большим количеством информации — лучше сразу жмите CTRL-C, т.к. во-первых, иначе придётся сильно подождать 😉 , во-вторых, десятки-сотни экранов информации будут бессмысленными. Потому эта простая команда должна использоваться лишь для, соответственно, простых случаев.

Отсортировать папки по объёму

Покажет объём в килобайтах с сортировкой — самые большие папки/файлы сверху. Если нужно в мегабайтах:

К сожалению более удобный ключик h («human» — автовыбор кило-мега-гига) в данном случае (du -sh *| sort -nr) не подойдёт, т.к. сортировка идёт по «числам» (не учитывая, что это KB/MB/GB). Для этого придётся использовать длинную команду:

Источник

Узнаем размер папки в Linux

Зная о системе максимум информации, пользователь сможет легче определять все нюансы в ее работе. Немаловажным является знание сведений о размере папок в Linux, но для начала нужно определиться, каким способом для получения этих данных пользоваться.

Способы определения размера папки

Пользователи операционных систем на базе Linux знают, что большинство действий в них решаются несколькими способами. Так и в случае с определением размера папки. Такая, на первый взгляд, тривиальная задача может ввести в ступор «новичка», но инструкция, которая будет приведена ниже, поможет во всем детально разобраться.

Способ 1: Терминал

Чтобы получить подробнейшую информацию о размере папок в Linux, лучше воспользоваться командой du в «Терминале». Хотя данный способ может отпугнуть неопытного пользователя, который только перешел на Linux, он отлично подойдет для выяснения нужной информации.

Синтаксис

Вся структура утилиты du выглядит следующим образом:

du
du название_папки
du [опция] название_папки

Как видно, синтаксис у нее может строиться по-разному. Например, при выполнении команды du (без указания папки и опции) вы получите стену текста с перечислением размеров всех папок в текущей директории, что крайне неудобно для восприятия.

Лучше использовать опции, если вы хотите получить структурированные данные, подробнее о чем будет рассказано ниже.

Опции

Перед демонстрацией наглядных примеров команды du стоит перечислить ее опции, чтобы использовать все возможности при сборе информации о размере папок.

  • — вывести на экран сведения о суммарном размере файлов, помещенных в каталог (в конце списка указывается суммарный объем всех файлов в папке).
  • —apparent-size — показать достоверный объем помещенных внутрь каталогов файлов. Параметры некоторых файлов в папке иногда бывают недействительными, на это влияет множество факторов, так что использование этой опции помогает удостовериться в корректности данных.
  • -B, —block-size=РАЗМЕР — перевести полученные результаты в килобайты (K), мегабайты (M), гигабайты (G), терабайты (T). Например, команда с опцией -BM выведет размер папок в мегабайтах. Обратите внимание, что при использовании различных величин их значение имеет погрешность, ввиду округления до меньшего целого числа.
  • -b — отображать данные в байтах (равнозначно —apparent-size и —block-size=1).
  • — показывать общий итог подсчета размера папки.
  • -D — приказ проследовать лишь по тем ссылкам, которые указаны в консоли.
  • —files0-from=ФАЙЛ — показать отчет по использованию диска, чье имя будет введено вами в графу «ФАЙЛ».
  • -H — равнозначен ключу -D.
  • -h — перевести все значения в понятный для человека формат, используя соответствующие единицы измерения данных (килобайты, мегабайты, гигабайты и терабайты).
  • —si — практически равносильна прошлой опции, за исключением того, что использует делитель, равный одной тысяче.
  • -k — отображать данные в килобайтах (то же самое, что и команда —block-size=1000).
  • -l — приказ приплюсовывать все данные в том случае, когда есть боле одной сноски на один и тот же объект.
  • -m — отображать данные в мегабайтах (аналогично команде —block-size-1000000).
  • -L — строго следовать указанным символьным ссылкам.
  • -P — аннулирует предыдущую опцию.
  • -0 — каждую выводимую строчку информации заканчивать нулевым байтом, а не начинать новую строку.
  • -S — при подсчете занятого пространства не учитывать размер самих папок.
  • -s — показывать размер лишь той папки, которую вы указали в качестве аргумента.
  • -x — не выходить за пределы указанной файловой системы.
  • —exclude=ОБРАЗЕЦ — игнорировать все файлы, совпадающие с «Образцом».
  • -d — задать глубину следования папкам.
  • —time — показать сведения о последних изменениях в файлах.
  • —version — уточнить версию утилиты du.

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

Читайте также:  Как убрать значки с панели управления windows

Примеры использования

Напоследок, чтобы закрепить полученную информацию, стоит рассмотреть несколько примеров использования команды du.

Без ввода дополнительных опций утилита будет автоматически выводить имена и размер папок, расположенных по указанному пути, попутно выводя также и подпапки.

Для вывода данных об интересующей вас папке введите ее имя в контекст команды. К примеру:

du /home/user/Загрузки
du /home/user/Изображения

Чтобы было проще воспринимать всю выводимую информацию, воспользуйтесь опцией -h. Она подстроит размер всех папок под общепринятые единицы измерения цифровых данных.

du -h /home/user/Загрузки
du -h /home/user/Изображения

Для полного отчета об объеме, занимаемом определенной папкой, укажите вместе с командой du опцию -s, а после — имя интересующей вас папки.

du -s /home/user/Загрузки
du -s /home/user/Изображения

Но удобнее будет задействовать опции -h и -s вместе.

du -hs /home/user/Загрузки
du -hs /home/user/Изображения

Опция применяется для вывода общей суммы, занимаемого папками места (ее можно применить вместе с опциями -h и -s).

du -chs /home/user/Загрузки
du -chs /home/user/Изображения

Еще одна крайне полезная «фишка», о которой не было сказано выше, — это опция —-max-depth. С помощью нее вы сможете задать глубину, с которой утилита du будет следовать папкам. Например, при указанном коэффициенте глубины в одну единицу, будут просмотрены данные о размере всех без исключения папок, указанных в данном отрезке, а папки в них будут проигнорированы.

Выше были приведены самые популярные применения утилиты du. Используя их, вы сможете добиться желаемого результата — узнать размер папки. Если же опций, используемых в примерах, вам покажется мало, то можете самостоятельно разобраться с остальными, применяя их на практике.

Способ 2: Файловый менеджер

Безусловно, «Терминал» способен предоставить просто кладезь информации о размере папок, но рядовому пользователю будет сложно в нем разобраться. Куда привычней наблюдать графический интерфейс, нежели набор символов на темном фоне. В этом случае, если нужно узнать лишь размер одной папки, лучшим вариантом будет воспользоваться файловым менеджером, который установлен в Linux по умолчанию.

Примечание: в статье будет использован файловый менеджер Nautilus, который является стандартным для Ubuntu, однако инструкция будет применима и к другим менеджерам, отличаться может лишь расположение некоторых элементов интерфейса и их отображение.

Чтобы узнать размер папки в Linux с помощью файлового менеджера, выполните следующие действия:

Читайте также:  Linux просмотр размера каталогов

    Откройте менеджер файлов, нажав по иконке на панели задач или проведя поиск по системе.

  • Перейдите в директорию, где находится нужная папка.
  • Нажмите правой кнопкой мыши (ПКМ) по папке.
  • Из контекстного меню выберите пункт «Свойства».

    После проделанных манипуляций перед вами появится окно, в котором нужно отыскать строку «Содержание» (1), напротив нее и будет указан размер папки. Кстати, чуть ниже будет находиться информация об оставшемся свободном месте на диске (2).

    Заключение

    По итогу вы имеете два способа, с помощью которых можно узнать размер папки в операционных системах на базе Linux. Хоть они и предоставляют одну и туже информацию, варианты ее получения кардинально отличаются. Если вам надо быстро узнать размер одной папки, то идеальным решением будет использование файлового менеджера, а если вам нужно получить как можно больше информации, то отлично подойдет «Терминал» с утилитой du и ее опциями.

    Помимо этой статьи, на сайте еще 12315 инструкций.
    Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Источник

    Анализ дискового пространства в Linux – команды du и ncdu

    Одной из распространённых задач в системном администрировании является оценка состояния жёстких дисков (а также и других устройств хранения), в том числе анализ использования дискового пространства. В Linux для таких целей давно существуют утилиты с удобным графическим интерфейсом, предоставляющих наглядную информацию о занятом пространстве в виде диаграмм и графиков. Однако, для системных администраторов, обслуживающих «серьёзные» сервера на основе Linux-систем, графический интерфейс — чрезмерное удовольствие, не оправдывающее затрачиваемых на него ресурсов. Поэтому необходимо уметь обходиться средствами командной консоли, используя специализированные консольные утилиты для анализа дискового пространства, которые доступны в виде двух команд — du и ncdu.

    как посмотреть свободное место на диске

    Давайте узнаем сколько у нас свободного места в системе. Узнать это можно с помощью команды

    как видим у нас диск занят на 97%, и нам необходимо узнать что у нас заняло место. Давайте этим займемся.

    Команда du – синтаксис и опции

    Disk Usage – именно так интерпретируется название команды du. Она была написана ещё в самой первой версии UNIX (в определённом роде предшественницы Linux), еще в стенах одной из лабораторий компании AT&T. Этот факт даёт понять, насколько важно следить за дисковым пространством, а также анализировать его при наличии специализированных программных инструментов, ведь du – одна из самых первых утилит из стандартного комплекта UNIX/Linux.

    Итак давайте узнаем что у нас занимает место

    Более подробное описание команды du и ключей вы можете прочитать ниже. Вывод будет следующий

    Отсюда мы видим что самый большой каталог у нас /var. Посмотрим что у на занимает место в каталоге /var

    видим что это папка log

    Теперь смотрим /var/log

    и вот здесь мы уже видим пять самых больших файлов с логами, именно они и заняли все место на диске. Давайте рассмотрим команду du подробнее.

    Согласно описанию из официального man-руководства, утилита du суммирует использование дискового пространства набора элементов, рекурсивно с каталогами. Синтаксис команды не простой, а очень простой, поскольку представляет собой классический прототип команды Linux:

    Если дать команду du без параметров, то по-умолчанию будет выведен список всех каталогов и подкаталогов для текущего каталога. Также по-умолчанию единицей измерения объёма является 1024 байта или 512 байт, в зависимости от конфигурации используемой системы:

    Как видно, code_text.txt занимает 4 килобайта (т. к. 1024 байта = 1 килобайт) дискового пространства. То же самое и с папками, но по-умолчанию будет указан общий размер папки без детализации по файлам и подкаталогам. В следующей таблице приведены опции команды du:

    Опция Назначение
    -a Выводит объём для всех элементов, а не только для каталогов
    —apparent-size Выводит действительные размеры, но не занимаемое место а диске
    -B,

    —block-size=РАЗМЕР

    Задаёт использование определённых единиц измерения объёма
    -b,

    —bytes

    То же самое, что и «—block-size —apparent-size=1»
    -с,

    —total

    Выводит общий результат
    -D,

    —dereference-args

    Указывает обрабатывать только те символьные ссылке, которые перечислены в командной строке
    -d, —max-depth=N Выводит общий размер только до N-го уровня (включительно) дерева каталогов
    -h,

    —human-readable

    Выводит размеры в удобном для человека виде
    -k Эквивалентно —block-size=1K
    -L,

    —dereference

    Разыменовывает символьные ссылки
    -l,

    —count-links

    Складывает размеры, если несколько жёстких ссылок
    -m Эквивалентно —block-size=1M
    -t,

    —threshold=РАЗМЕР

    Исключает элементы, которые меньше РАЗМЕРА, если это значение положительно или размер которых больше, если это значение отрицательно
    —time Выводит время последнего изменения в каталоге и во всех подкаталогах
    —time=АТРИБУТ Выводит указанный атрибут времени (atime, access, use, ctime, status), а не время последнего изменения
    —time-style=СТИЛЬ Выводит время в указанном в СТИЛЬ формате: full-iso, long-iso, iso
    -X,

    —exclude-from=ФАЙЛ

    Исключает все эдементы, которые совпадают с шаблоном из ФАЙЛа
    —exclude=ШАБЛОН Исключает элементы, совпадающие с шаблоном
    -x,

    —one-file-system

    Пропускать каталоги из других систем

    Используемые командой du единицы измерения размера (или объёма) задаются в формате «цифраБуква», где цифра — это коэффициент, а Буква — степень единицы измерения, например: 5K = 5 * 1024 = 5120 = 5 килобайт и по аналогии для M – мегабайт, G – гигабайт.

    Примеры использования команды du

    Узнать общий размер каталога (например с резервными копиями):

    Вывод размеров всех подкаталогов (рекурсивно):

    С учётом файлов:

    С фильтрацией в зависимости от размера файла/каталога:

    Как видно, были отброшены файлы/каталоги размером меньше 2 мегабайт. Следующая команда, напротив — исключит из вывода только файлы/каталоги больше 2 мегабайт:

    Команда ncdu

    Более удобный способ найти что занимает место на диске можно с помощью команды ncdu. Утилита ncdu (Ncurses Disk Usage) способна делать всё то же самое, что и утилита du и даже немного больше. К тому же, она предоставляет пользователю удобный в использовании псевдографический интерфейс, с помощью которого можно быстро перемещаться по дереву системы, оценивая размеры интересующих элементов и папок.

    Фактически, ncdu может выполнять функции полноценного браузера системы, при этом имеет большое количество опций, позволяющих настраивать псевдоинтерфейс для разных режимов работы, экспортировать и импортировать результаты работы в файлы, выполнять сортировки, экономить сетевой трафик, если это нужно, когда анализируется удалённая (например по SSH) система.

    По-умолчанию, выполнение команды ncdu без параметров, выводит файловый браузер, в котором после предварительного сканирования (с показом прогресса выполнения) отображается список элементов и подкаталогов текущего каталога. По этому списку можно перемещаться, используя клавиши курсора, спускаться в подкаталоги ( ) выходить из них, при этом информация о размере представленных элементах и папок отображается «как на ладони». В строке состояния отображается общий используемый объём (Total disk usage), фактический объём (Apparent size), а также количество файлов и папок для текущего анализируемого каталога.

    Основные опции команды ncdu:

    Опция Назначение
    -o ФАЙЛ Позволяет экспортировать результаты работы в указанный файл
    -f ФАЙЛ Загружает из файла для отображения данные ранее экспортированные с помощью опции -o
    -0 Не никаких информационных сообщений при сканировании файловой системы
    -1 Подобна опции -0, но выдаёт единственную строку о статусе выполненного действия. По-умолчанию используется при экспорте в файл
    -q Тихий режим. Во время сканирования директории экран с результатами сканирования будет обновляться каждые 2 секунды, вместо 10 раз за секунду. Обычно используется при работе с удаленными системами
    -r Включает режим «только для чтения» для отключения встроенной функции удаления. Не работает с опцией -o
    -x Не выходить за рамки текущей используемой файловой системы
    —exclude ШАБЛОН Исключает из подсчёта значения размеров файлов, имена которых удовлетворяют шаблону, но эти файлы будут отображаться в списке
    -X ФАЙЛ,

    —exclude-from-file

    Исключает из подсчёта значения размеров файлов, имена которых удовлетворяют шаблону из файла, но они также будут отображаться в списке

    Интерфейс ncdu действительно очень дружественный — размеры всегда отображаются в «человекопонятных» единицах.

    Для работы с псевдоинтерфейсом ncdu предусмотрен целый набор «горячих клавиш», позволяющих удалять выбранные файлы и каталоги, включать режим представления используемого пространства в процентах, отображать информацию о выбранных элементах, а также выполнять другие полезные функции. Об этом более подробно можно прочитать в соответствующих man-страницах в разделе «KEYS», используя команду man ncdu.

    Примеры команд ncdu

    Сделаем поиск занимаемого пространства с помощью ncdu
    ncdu /

    Снова видим большой каталог /var, и уже с помощью клавишь и ENTER мы можем передвигаться по каталогам. Видим каталог log

    А здесь мы видим наши большие логи

    Еще несколько полезных примеров.

    Сканирование объёмных каталогов с экспортом/архивированием в лог для последующего использования или просмотра:

    Сканирование текущей директории, экспорт результатов в лог, и последующий просмотр этих результатов в браузере ncdu:

    Работа с удалённой системой:

    В данной команде опция -C используется для утилиты ssh для сжатия сетевого трафика при некачественном или медленном соединении.

    Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

    Источник

    Читайте также:  Pcie ssd in linux
  • Оцените статью