Насколько заполнен раздел?

Чтобы узнать объем свободного пространства на каждом разделе, можно воспользоваться командой df(l). Эта команда выведет список смонтированных разделов, объем использованного пространства на каждом из них и точки монтирования. Один из неприятных моментов, связанных с командой df(l), заключается в том, что информация об объеме выводится в виде количества блоков, размером 1 Кбайт. Если раньше, когда диски были достаточно маленькими, это было вполне удобно, то сейчас числа получаются слишком большими, чтобы их можно было достаточно легко воспринимать одним взглядом. К счастью, команда df(l) имеет флаги -h и -Н, которые вынуждают команду выводить информацию в удобочитаемом для человека виде. При использовании ключа -h один мегабайт вычисляется как степень 2 и составляет 1024 Кбайт, или 1 048 576 байт, а при использовании ключа – Н мегабайт вычисляется как степень 10 и составляет 1000 Кбайт, или 1 000 000 байт. Сетевые администраторы и производители жестких дисков обычно используют степень 10, тогда как системные администраторы предпочитают использовать степень 2.1 Если вы обладаете достаточно богатым опытом работы, вы уже знаете, какой ключ выбрать. Я – сетевой администратор, поэтому вам придется следовать моим предпочтениям при исследовании примеров, независимо от того, что думает по этому поводу мой технический редактор.

# df -H

Filesystem      Size    Used   Avail  Capacity Mounted on

/dev/ad4s2a 520M        301M    177M    63%    /

devfs     1.0k 1.0k               OB    100%   /dev

/dev/ad4s1e     520M    2.4M    476M    0%    /tmp

/dev/ad4s2e     11G     4.1G    5.9G    41%    /usr

/dev/ad4s2d     1.0G    322M    632M    34%    /var

/dev/ad4s3d     49G     43G     2.0G    96%    /usr/home

Здесь видны имена разделов, размер каждого раздела, объем использованного пространства, объем свободного пространства, процент использованного пространства и точки монтирования. Например, каталог /home в данной системе заполнен на 96% и имеет еще 2 Гбайт свободного пространства. Корневой раздел заполнен всего на 63%, но свободным осталось только 177 Мбайт.

Файловая система FFS занимает порядка 8% дискового пространства для нужд оптимизации. Это пространство используется при перемещении файлов и для уменьшения степени фрагментирования. При переполнении диска вы можете даже увидеть отрицательный объем свободного дискового пространства. Когда это происходит, производительность диска падает катастрофически. Поэтому лучше всегда оставлять на разделах немного свободного пространства, чтобы FFS могла постоянно дефрагментировать себя. Хотя существует возможность уменьшить размер пространства, резервируемого файловой системой, но это отрицательно сказывается на производительности, и поступать

Спорить на эту тему еще более бесполезно, чем, например, дискутировать на тему «Emacs против vi». Держу пари, что вы и не предполагали о существовании такого ключа!

так будет неразумно. Если вы действительно хотите попробовать уменьшить объем резервируемого пространства, обращайтесь к команде tunefs(8).

Очевидный вопрос: «Что такого хранится на диске, что заняло столько места?» Если ваша система напоминает мою, использованное пространство на диске продолжает расти без каких-либо видимых причин. С помощью команды Is -1 можно отыскать отдельные крупные файлы, но рекурсивно выполнять эту команду в каждом каталоге как минимум непрактично.

Объем использованного пространства в отдельном каталоге можно получить с помощью команды du(l). Сначала результаты, которые дает эта команда, кажутся непонятными и могут отпугивать неопытных пользователей. Ниже приводится пример использования du(l) для поиска чего-то, что занимает почти все место в моем домашнем каталоге:

#        cd $Н0МЕ

#        du

1         ./bin/RCS

21459     ,/bin/wp/shbin10

53202     ,/bin/wp

53336     ./bin

5         ./? kde/share/applnk/staroffice_52

6         . /.kde/share/applnk

Команда продолжает и продолжает выводить информацию, перечисляя каталоги и их размеры в блоках. В данном случае каталог $НО- ME/bin занимает 53 336 блоков, или порядка 53 Мбайт. Я мог бы устроиться поудобнее и позволить команде du(l) перечислить все каталоги и подкаталоги, но тогда мне придется переварить информации гораздо больше, чем мне требуется в действительности. Кроме того, блоки – это не совсем удобная единица измерения, особенно, когда числовые значения выравниваются по левому краю.

Попробуем вывести результаты в удобочитаемом виде. Во-первых, команда du(l) поддерживает флаг -h, как и команда df. Кроме того, мне

SBLOCKSIZE

Многие утилиты, предназначенные для работы с дисками, отображают размеры в блоках размером по 512 байт, или полкилобайта. Если в переменную окружения $BLOCKSIZE записать значение к, команда df(l) и многие другие программы будут отображать размеры в блоках по 1 Кбайту, что намного удобнее. Можно использовать значение 1М, тогда размеры будут выводиться в мегабайтах.

совсем не требуется рекурсивное перечисление всех вложенных подкаталогов. Управлять глубиной вложенности можно с помощью ключа -d. Этот ключ принимает один аргумент – глубину вложенности подкаталогов, которые требуется перечислить в выводе. Например, при использовании ключа -dO не будет перечислен ни один из вложенных подкаталогов, и команда просто выведет общий размер всех файлов в указанном каталоге.

#                 du -h -dO $Н0МЕ

37G /home/mwlucas

В моем домашнем каталоге накопилось файлов на 37 Гбайт? Попробуем копнуть поглубже и найти наиболее объемный подкаталог.

#                 du -h -d1

38К ./bin 56M ./nibs

34G ,/прЗ

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

Если вам флаг -h чем-то не нравится, для поиска наиболее объемного подкаталога можно использовать команду sort(l), например так: du –

kxd 1 | sort -п.

Источник: ЛукасМ. FreeBSD. Подробное руководство, 2-е издание. – Пер. с англ. – СПб.: Символ- Плюс, 2009. – 864 е., ил.

Похожие посты:

Вы можете оставить комментарий, или ссылку на Ваш сайт.

Оставить комментарий