Введение
Команда df в linux може быть использована для отображения статистики использования дискового пространства. Эта утилита показывает сколько места использовано, сколько осталось на каждом разделе. Так же если передать этой команде имя файла, то она покажет как много места занято на разделе на котором этот файл лежит. Эта команда может быть использована системными администраторами для просмотра состояния системы и принятия решения о чистке ФС, добавлении дискового пространства, оптимизации и т.д. Команда df имеет несколько опций которые помогают настроить отображение выводимой информации так как это вам необходимо.
Синтаксис
Перед тем как перейти к примерам, давайте взглянем на то как использовать команду df. Вот информация о синтаксисе команды df из мануала:
df [OPTION]... [FILE]... |
Как видите, команда df не требует никаких обязательных аргументов. Аргументы OPTION и FILE не обязательны. В то время как аргумент OPTION говорит что и как делать утилите df, аргумент FILE указывает df выводить использование дискового пространства только для того раздела где размещен файл указанный в аргументе FILE.
Прим: для тех кто первый раз видит информацию о синтаксисе команд в linux — любые аргументы указанные внутри квадратных скобок [] не обязательные.
Примеры
1. Простой пример
Вот вывод команды df которая была использована в самой простой форме.
# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda6 29640780 4320704 23814388 16% / udev 1536756 4 1536752 1% /dev tmpfs 617620 888 616732 1% /run none 5120 0 5120 0% /run/lock none 1544044 156 1543888 1% /run/shm |
В выводе выше отображена статистика использования всех файловых системе на момент запуска команды df без каких либо аргументов.
Первая колонка отображает имя файловой системы, вторая колонка указывает общий объем памяти для конкретной файловой системы в единицах 1K-блоков, где 1К = 1024 байта. Колонки Used и available показывают использованный и доступный объем памяти соответственно. Колонка use показывает использованую память в процентах и наконец колонка ‘Mounted on’ показывает точку монтирвоания в системе.
2. Получение данных об использовании диска через файл
Об этом уже было сказано во введении, df если ей в качестве аргумента передать имя файла — отобразит иформацию о той файловой системе, где этот файл расположен.
Например:
# df test Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda6 29640780 4320600 23814492 16% / |
Другой пример:
# df groff.txt Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda6 29640780 4320600 23814492 16% / |
Мы использовали два разных файла (они расположены на одной и той же ФС) как аргумент для команды df. Вывод подтверждает то очем было сказано — команда df отображает информацию о ФС на которой расположены файлы.
3. Отображение информации inode
Есть опция -i с помощью которой df будет отображать вместо информации о блоках — информацию о файловых дескрипторах inode.
Пример:
# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda6 1884160 261964 1622196 14% / udev 212748 560 212188 1% /dev tmpfs 216392 477 215915 1% /run none 216392 3 216389 1% /run/lock none 216392 8 216384 1% /run/shm |
Как видите, информация о inode отображена для каждой ФС.
4. Подведение общего итога
Опция –total заставляет вывести дополнительную строку под таблицей информациив которой будет выведен общий итог для каждой колонки.
Например:
# df --total Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda6 29640780 4320720 23814372 16% / udev 1536756 4 1536752 1% /dev tmpfs 617620 892 616728 1% /run none 5120 0 5120 0% /run/lock none 1544044 156 1543888 1% /run/shm total 33344320 4321772 27516860 14% |
5. Генерация выводимой информации в человекочитаемом формате
Опция -h позволяет указать команде df что мы хотим получить информацию в человекочитаемом виде.
Пример:
# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda6 29G 4.2G 23G 16% / udev 1.5G 4.0K 1.5G 1% /dev tmpfs 604M 892K 603M 1% /run none 5.0M 0 5.0M 0% /run/lock none 1.5G 156K 1.5G 1% /run/shm |
Как видите, в выводе появились буквы ‘G’ (гигабайты), ‘M’ (мегабайты) и ‘K’ (килобайты). Что позволяет легко читать выведенную информацию и не заставляет вас подсчитывать в уме сколько места занято и свободно в пересчете с блоков на байты. Заметьте что вторая колонка переименовалась в ‘size’ так как вывод теперь человекочитаемый.