Гид по технологиям

duf: просмотр использования диска в Linux

8 min read Linux Обновлено 12 Apr 2026
duf: просмотр использования диска в Linux
duf: просмотр использования диска в Linux

Что такое duf?

duf (Disk Usage/Free) — это бесплатная и открытая консольная утилита, которая показывает использование дискового пространства и свободное место прямо в терминале. Коротко — duf объединяет идеи df и du в одном инструменте и отображает данные в удобной табличной форме.

Определение: duf — компактный инструмент для быстрого анализа состояния дисков и точек монтирования в системах Unix-подобного типа.

Проверка использования диска в Linux с помощью duf

Почему стоит выбрать duf?

duf выгодно отличается удобочитаемым и наглядным выводом, гибкими возможностями фильтрации и сортировки, а также экспортом результатов в формат JSON для интеграции с другими инструментами. Основные преимущества:

  • Цветной и понятный табличный вывод.
  • Поддержка тем оформления терминала (light/dark и др.).
  • Фильтры по типам файловых систем, точкам монтирования и категориям (local, network и пр.).
  • Сортировка по любым колонкам.
  • Экспорт в JSON для последующей обработки.

Краткая памятка — когда duf полезен

  • Быстрая проверка заполнения дисков на сервере.
  • Получение читабельной таблицы с удобной сортировкой.
  • Экспорт состояния для мониторинга и отчётности.
  • Замена единичных вызовов df/du скриптами с JSON-выводом.

Как установить duf на Linux

Ниже — проверенные способы установки в зависимости от дистрибутива.

1. Установка через DEB или RPM пакет

Разработчики публикуют готовые пакеты на странице релизов GitHub. Выберите файл с расширением .deb для Debian/Ubuntu-подобных систем или .rpm для RHEL/Fedora/CentOS-подобных.

Ссылка для скачивания: duf Package (страница релизов на GitHub)

Если предпочитаете загрузку из терминала, убедитесь, что wget установлен:

wget --version

Пример загрузки пакета для Debian (версию уточните на странице релизов):

wget https://github.com/muesli/duf/releases/download/v0.6.2/duf_0.6.2_linux_amd64.deb

Для RHEL-подобных систем:

wget https://github.com/muesli/duf/releases/download/v0.6.2/duf_0.6.2_linux_amd64.rpm

Установка пакета:

На Debian/Ubuntu:

sudo dpkg -i duf_0.x.x_linux_amd64.deb

На RHEL/Fedora/CentOS:

sudo rpm -i duf_0.x.x_linux_amd64.rpm

Пользователи Arch Linux могут установить duf из AUR через помощник:

yay -S duf

Примечание: замените 0.x.x на актуальную версию из релизов.

2. Установка через Snap

Если в системе настроен Snap, установите пакет duf-utility:

snap --version
sudo snap install duf-utility

Если snap отсутствует, установите его через менеджер пакетов вашего дистрибутива.

3. Сборка из исходников

duf написан на Go. Чтобы собрать из исходников, требуется установленный Go и git:

git clone https://github.com/muesli/duf.git
cd duf
go build

После сборки в текущей директории появится исполняемый файл duf.

Быстрый запуск и базовые команды

После установки выполните в терминале:

duf

Команда покажет список устройств и точек монтирования в виде таблицы.

Вывод команды duf

Можно ограничить вывод конкретной точкой монтирования:

duf /
duf /home

Показать все файловые системы, включая псевдо и недоступные:

duf --all

Фильтрация результатов

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

  • Показать только таблицы local и network:
duf --only local,network
  • Скрыть таблицы local и network:
duf --hide local,network

Результат фильтрации duf

  • Показать только указанные типы файловых систем:
duf --only-fs tmpfs,vfat
  • Скрыть указанные типы файловых систем:
duf --hide-fs tmpfs,vfat
  • Показать только конкретные точки монтирования:
duf --only-mp /,/home
  • Скрыть точки монтирования:
duf --hide-mp /,/home

Совет: комбинируйте –only/–hide с –json для скриптовой обработки только нужных записей.

Сортировка и видимые колонки

  • Сортировать по размеру:
duf --sort size

Результат сортировки по размеру

  • Показать только колонки SIZE и AVAIL:
duf --output size,avail
  • Скрыть колонки и выбрать другие — используйте –output с перечислением нужных колонок.

Просмотр информации по inode

По умолчанию duf показывает данные по блокам. Чтобы увидеть информацию по inode (число файлов), используйте:

duf --inodes

Понимание: блоки — это единицы хранения, inodes — метаданные файлов (структура, владельцы, права). В некоторых сценариях отсутствие inodes (полный inode) означает, что на диске нельзя создать новые файлы, несмотря на свободное место.

Экспорт результатов в JSON

Для интеграции в инструменты мониторинга или автоматизации применяйте экспорт в JSON:

duf --json > duf-output.json

Экспорт результата duf в JSON

Совет: перед передачей данных в систему агрегации можно использовать jq для фильтрации и преобразования.

Темы терминала

duf автоматически определяет цветовую схему терминала. При необходимости принудительно укажите тему:

duf --theme light
duf --theme dark

Получение справки

Если нужен синтаксис и доступные опции:

duf --help

Справка duf

Сравнение: df vs du vs duf

КомандаЧто показываетУдобство чтенияФормат выводаПодходит для
dfИспользование блоков по файловым системамСырой, компактныйТекстБыстрая проверка свободного места на ФС
duИспользование пространства по файлам/директориямЗависит от опцийТекстАнализ конкретных директорий
dufОбъединённый обзор ФС с фильтрами, сортировкой и цветомЧитаемый, наглядныйТекст/JSONБыстрая диагностика и экспорт в JSON

Когда duf не заменит du

  • Если нужно детализированное суммирование по вложенным каталогам (du -sh */). duf удобен для обзора ФС, но для глубокого анализа отдельных директорий удобнее du.

Практические сценарии и рецепты

Ниже — набор полезных практических примеров, готовых к использованию.

Быстрая проверка перед развёртыванием

duf --only local --sort percent

Используйте для оценки загрузки локальных дисков и принятия решения о переносе данных.

Экспорт состояния всех дисков в JSON и отправка в удалённый лог-сервер

duf --json | curl -X POST -H "Content-Type: application/json" -d @- https://log.example.com/duf

Автоматическое оповещение при заполнении > 85% (пример скрипта)

#!/bin/bash
THRESHOLD=85
PCT=$(duf --json | jq '.[] | .percent' | sort -nr | head -n1 | tr -d '"%')
if [ "$PCT" -ge "$THRESHOLD" ]; then
  echo "Disk usage is ${PCT}%" | mail -s "Disk alert" admin@example.com
fi

SOP — стандартная процедура установки и проверки duf (короткий playbook)

  1. Проверить наличие необходимых инструментов: wget, snap или go.
  2. Скачать пакет или собрать из исходников.
  3. Установить пакет и проверить версию: duf –version.
  4. Выполнить duf для быстрого обзора: duf –all.
  5. Настроить регулярную задачу (cron/systemd timer) для экспорта JSON и передачи в систему мониторинга.
  6. Добавить тесты и алерты при достижении порогов.

План действий при инциденте «Диск заполнен» (runbook)

  1. Выполнить duf –sort percent чтобы найти проблемные ФС.
  2. Для подозрительных точек применить du -sh /path/* чтобы найти большие каталоги.
  3. Очистить временные файлы и логи: journalctl –vacuum-time=7d, rm -rf /tmp/* (с осторожностью).
  4. При критическом состоянии — перенести данные на другой диск или откатить недавние операции записи.
  5. Проверить inode: duf –inodes.
  6. Зафиксировать действия в журнале инцидента и уведомить заинтересованных лиц.

Чек-листы по ролям

Администратор:

  • Проверил установку duf и версию.
  • Настроил регулярный экспорт состояния.
  • Определил пороги и алерты.

DevOps-инженер:

  • Интегрировал duf в пайплайн мониторинга.
  • Написал скрипт оповещений по порогам.
  • Обеспечил безопасную ротацию логов.

Новый пользователь Linux:

  • Запустил duf для обзора.
  • Изучил –help и основные флаги.
  • Научился читать столбцы SIZE и AVAIL.

Сниппет — шпаргалка по ключевым флагам duf

  • –all — показать все ФС
  • –only / –hide — фильтрация таблиц
  • –only-fs / –hide-fs — фильтрация по типам ФС
  • –only-mp / –hide-mp — фильтрация по точкам монтирования
  • –sort <колонка> — сортировка
  • –output <колонки> — выбрать колонки
  • –inodes — показать inode
  • –json — экспорт в JSON
  • –theme — тема

Ментальные модели и эвристики для работы с дисками

  • «Процент — это экстренная подсказка»: 70–85% — пора планировать очистку; >90% — действовать немедленно.
  • «Свободные inodes важнее свободного пространства»: если нет inodes, новые файлы создать нельзя даже при наличии свободных блоков.
  • «ФС и точки монтирования — разные уровни» : сначала смотрим ФС (duf), затем углубляемся в каталоги (du).

Уровни зрелости использования duf в организации

  • Уровень 1 — ручные проверки оператора (запуск duf локально).
  • Уровень 2 — регулярный экспорт JSON и простые алерты.
  • Уровень 3 — интеграция с системой мониторинга, автоматические действия при порогах.

Советы по миграции и совместимости

  • Проверяйте версии пакетов перед установкой, особенно если используете пакетный менеджер дистрибутива.
  • На серверах с ограниченным набором утилит удобнее установить duf как статически скомпилированный бинарник.
  • Если используете системы мониторинга, убедитесь, что JSON-структура совместима с ожидаемым форматом.

Критерии приёмки

  • duf успешно установлен и duf –version возвращает корректную версию.
  • Выполнение duf не вызывает ошибок и показывает все ожидаемые точки монтирования.
  • Экспорт в JSON проходит без потерь полей и может быть прочитан скриптами.

Типичные ошибки и их решение

  • Проблема: duf не найден после установки через dpkg. Решение: выполнить sudo apt-get install -f для установки зависимостей и повторить установку.
  • Проблема: некорректная цветовая схема. Решение: использовать –theme light/dark.
  • Проблема: не видит сетевые ФС. Причины: права доступа, временные сети, точки монтирования не активны.

Пример применения в CI/CD

Добавьте шаг в конвейер, который перед деплоем проверяет свободный объём:

- name: Проверить дисковое пространство
  run: |
    duf --only local --json > duf-ci.json
    python scripts/check_disk.py duf-ci.json

Если скрипт обнаружит заполнение выше допустимого порога — сборка прервётся.

Короткий глоссарий

  • ФС — файловая система.
  • Точка монтирования — директория, куда присоединён раздел или устройство.
  • Inode — структура, содержащая метаданные файла.
  • Блок — минимальная единица хранения на диске.

FAQ

Как обновить duf до последней версии?

Обновление зависит от способа установки: если вы устанавливали через пакет, скачайте новый .deb/.rpm и повторите установку; через snap — sudo snap refresh duf-utility; из исходников — git pull && go build.

Можно ли использовать duf на серверах без GUI?

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

duf заменит ли полностью du и df?

Нет, duf предназначен для обзора и экспорта состояния ФС. Для детального анализа отдельных директорий всё ещё полезен du.

Заключение

duf — компактный и удобный инструмент для мониторинга дискового пространства. Он экономит время при диагностике состояния ФС, упрощает экспорт данных и легко интегрируется в автоматизированные процессы мониторинга. Начните с простой установки, добавьте регулярный экспорт JSON и настройте алерты — и вы получите надёжный базовый слой контроля пространcтва диска.

Ключевые действия: установить duf, прогнать duf –all, настроить экспорт и оповещения.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Что такое Group Policy в Windows и как им управлять
Windows

Что такое Group Policy в Windows и как им управлять

Диспетчер буфера обмена Windows 11 — как пользоваться
Windows

Диспетчер буфера обмена Windows 11 — как пользоваться

Как заглушать рекламу в Spotify
Музыка

Как заглушать рекламу в Spotify

Спуфинг: виды атак и защита
Кибербезопасность

Спуфинг: виды атак и защита

Перемещение папок пользователей в Windows 10
Windows

Перемещение папок пользователей в Windows 10

Таймер приложений на Android — ограничьте экранное время
Мобильные

Таймер приложений на Android — ограничьте экранное время