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

gdu: быстрый анализ использования диска на Linux

6 min read Linux Обновлено 19 Dec 2025
gdu: быстрый анализ использования диска
gdu: быстрый анализ использования диска

TL;DR

gdu — лёгкий и очень быстрый анализатор использования диска, написанный на Go. Он особенно эффективен на SSD благодаря параллельному сканированию. Эта статья объясняет, как установить gdu, основные команды и опции, сценарии использования и рекомендации по регулярному аудиту диска.


gdu — самый быстрый анализатор использования диска

Ваш жёсткий диск на системе может быстро заполниться, если не отслеживать его состояние регулярно. Сейчас у нас гораздо больше цифровых данных, чем мы можем хранить на устройствах, поэтому проверка свободного места и использования диска — важная задача, которую стоит включить в рутину обслуживания системы.

На Linux доступно несколько утилит для анализа использования диска: df, ncdu, gdu и другие. В этой статье подробно объяснено, что такое gdu, как его установить, как использовать основные команды и какие практики помогут держать диск в порядке.

Что такое утилита gdu

gdu — это анализатор использования диска, написанный на языке Go. Название расшифровывается как Go Disk Usage. В отличие от некоторых традиционных инструментов, gdu фокусируется на скорости и простоте использования.

Коротко про ключевые свойства:

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

gdu особенно хорошо показывает себя на SSD: параллельное чтение значительно уменьшает время сканирования по сравнению с последовательными утилитами.

Производительность: пример сравнения

Ниже приведена таблица со скоростью сканирования 80 ГБ данных на SSD объёмом 500 ГБ. Это именно тот набор данных и условия, которые демонстрировали преимущество gdu в исходном тесте.

КомандаСкорость без кэшаСкорость с кэшем
gdu6.5s2s
dua8s2s
godu8.5s3s
nnn -T d31s3s
du -hs44s4.5s
duc index47s5s
ncdu54s12s

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

Загрузка и установка gdu на Linux

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

Шаги установки (пример для amd64):

curl -L https://github.com/dundee/gdu/releases/latest/download/gdu_linux_amd64.tgz | tar xz
sudo chmod +x gdu_linux_amd64
sudo mv gdu_linux_amd64 /usr/bin/gdu

Проверьте установку командой:

gdu --version

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

Version: v4.9.1
Built time: Fri May 07 05:37:28 PM IST 2021
Built user: dundee

Если у вас другой дистрибутив или архитектура (arm64, i386 и т. п.), скачайте соответствующий архив из релизов проекта.

Как пользоваться gdu

Если запустить gdu без аргументов, он просканирует текущую директорию и покажет информацию об использовании местоположений в ней:

gdu

Обычный вывод gdu в терминале

Чтобы просканировать конкретную папку, укажите её путь:

gdu ./Desktop

Примечание: в отличие от команды ls, gdu принимает не более одного аргумента. Если указать несколько директорий, вы увидите ошибку: “Error: accepts at most 1 arg(s), received 2”.

Игнорирование директорий

Чтобы исключить из сканирования отдельные поддиректории, используйте флаг -i (ignore):

gdu /Desktop -i /Desktop/Ignore

Можно перечислить несколько директорий через запятую:

gdu /Desktop -i /Desktop/Ignore,/Desktop/Another-Folder

Функции и клавиши управления

Нажмите клавишу вопросительного знака (?) для списка доступных операций в интерактивном режиме.

Клавиши и операции gdu

Полезные клавиши:

  • D — удалить выделённый файл или директорию (удаление подтверждается системой).
  • V — просмотреть содержимое выделенного файла в просмотрщике.
  • ? — показать справку по клавишам.

Удаление папки в gdu

Просмотр содержимого файла в gdu

Для чёрно-белого вывода используйте флаг -c:

gdu -c ./Desktop

gdu может сканировать примонтированные тома. Для этого примените флаг -d, чтобы показать информацию о примонтированных дисках:

gdu -d

Сканирование примонтированных дисков в gdu

Чтобы запуск был неинтерактивным (только текстовый вывод), используйте флаг -n:

gdu -n ./Desktop

Неинтерактивный режим gdu

Особые идентификаторы записей в выводе

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

Специальные символы в выводе gdu

СимволЗначение
!Ошибка при чтении директории
.Ошибка при чтении поддиректории
@Сокет или символьная ссылка
HЖёсткая ссылка (hardlink)
eПустая директория

Эти метки помогают быстро определить проблему или тип объекта без дополнительной проверки.

Мониторинг дискового пространства с помощью gdu

Регулярный аудит дискового пространства важен для поддержания производительности и предотвращения неожиданного заполнения диска. Рекомендуемые подходы:

  • Плановая проверка: запускать быструю проверку gdu -n в ключевых каталогах (дом, /var, /srv) раз в неделю или при подозрениях на утечку места.
  • Скрипт-отчёт: запускать gdu в неинтерактивном режиме и отправлять результаты на почту или в систему логирования.
  • Чистка по правилам: комбинировать gdu с правилами удаления старых логов, временных файлов и кеша.

Пример одноразового неинтерактивного отчёта, показывающего топ-занимающих директорий:

gdu -n /var | head -n 20

Или сохранить отчёт в файл:

gdu -n /home > disk-report-$(date +%F).txt

Мини-методика быстрого аудита (4 шага)

  1. Сбор данных: gdu -n /path — получить машинно-читабельный отчёт.
  2. Идентификация: найти папки сверху по размеру (top N).
  3. Верификация: посмотреть содержимое и владельцев (ls -lh, du -sh).
  4. Действие: удалить временные файлы, переместить редко используемые данные, архивировать старые бэкапы.

Альтернативы и когда gdu не подходит

gdu хорош для быстрых интерактивных обзоров и скриптовых запусков, но бывают случаи, когда стоит использовать другие инструменты:

  • ncdu — если нужна максимальная портируемость и проверенная утилита с широкой поддержкой.
  • du/df — стандартные инструменты для базовых скриптов и POSIX-совместимости.
  • инструменты GUI (Baobab, Filelight) — когда нужен визуальный обзор в графической среде.

Когда gdu может дать слабую производительность:

  • На сильно фрагментированных HDD параллелизм может не дать большого выигрыша.
  • На удалённых файловых системах с высокой задержкой (NFS, CIFS) преимущества уменьшатся.

Рекомендуемые шаблоны и проверки (role-based checklists)

Для сисадмина:

  • Добавить cron/systemd таймер для периодического запуска gdu -n по критичным путям.
  • Автоматизировать сбор и хранение отчётов (rotação логов).
  • Настроить оповещения при превышении порогов использования.

Для обычного пользователя:

  • Раз в месяц запускать gdu ./Desktop или gdu ~/ и проверять крупные папки.
  • Удалять временные загрузки и старые ISO/архивы.

Для разработчика/DevOps:

  • Интегрировать gdu в CI-скрипты для мониторинга объёма артефактов.
  • Использовать gdu для анализа размера контейнеров и томов данных.

Сценарий инцидента: план действий при заполнении диска

  1. Быстрая диагностика: gdu -n / | head -n 30 — найти подозрительные директории.
  2. Закрыть ненужные процессы, которые пишут в диск.
  3. Временно очистить директории с логами и кешем (journalctl –vacuum-size, apt clean и т. п.).
  4. Переместить крупные необязательные файлы на внешний носитель или в облако.
  5. Проанализировать причины (плановое задание, утечка логов, бэкапы).
  6. Постоянное решение: добавить мониторинг и ограничение для процессов, создающих большие файлы.

Примеры команд и часто используемые комбинации (cheat sheet)

  • Быстрый интерактивный обзор текущей директории:
gdu
  • Нейтивный неинтерактивный отчёт для автоматизации:
gdu -n /path > /var/log/gdu-$(date +%F).log
  • Игнорирование нескольких директорий:
gdu /path -i /path/tmp,/path/cache
  • Чёрно-белый вывод (полезен в скриптах с ограниченным цветом терминала):
gdu -c /path

Диаграмма принятия решения (Mermaid)

flowchart TD
  A[Нужен анализ диска?] --> B{SSD или HDD}
  B -- SSD --> C[gdu: рекомендован]
  B -- HDD --> D[Попробовать gdu; если медленно — ncdu или du]
  C --> E{Нужен GUI?}
  D --> E
  E -- Да --> F[Использовать Baobab / Filelight]
  E -- Нет --> G[Оставаться с терминалом]

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

  • Команда gdu успешно запускается и показывает список директорий.
  • Можно исключить поддиректории через -i и получить ожидаемые результаты.
  • Интерактивные клавиши D, V и ? работают в терминале.
  • Неинтерактивный режим (-n) генерирует парсируемый отчёт.

Итог и рекомендации

gdu — мощный инструмент для быстрой диагностики использования дискового пространства, особенно полезный на SSD и в сценариях, где важна скорость сканирования. Для регулярного мониторинга используйте gdu в сочетании с плановыми заданиями и простыми правилами чистки. Если вы работаете с медленными носителями или удалёнными файловыми системами, сравните производительность gdu с ncdu и стандартными утилитами du/df.

Важно: не удаляйте системные файлы без проверки владельца и назначения; прежде чем стирать — убедитесь, что файлы не критичны для работы служб.


Короткое резюме и полезные ссылки: установите gdu, прогоните аудит по ключевым папкам, автоматизируйте отчёты и добавьте оповещения при росте использования. Это простой способ предотвратить неожиданное заполнение диска и сохранить производительность системы.

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

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

Как настроить каналы на Apple TV
Инструкции

Как настроить каналы на Apple TV

Как удалить рекламу Special Offers с Kindle
Руководство

Как удалить рекламу Special Offers с Kindle

Изменить разрешения сайтов в браузерах
Браузеры

Изменить разрешения сайтов в браузерах

Как отказаться от сбора данных AT&T
Privacy

Как отказаться от сбора данных AT&T

TikTok на ПК и Mac — сайт и Bluestacks
Социальные сети

TikTok на ПК и Mac — сайт и Bluestacks

Режим Windows XP в Windows 8 — инструкция
Windows

Режим Windows XP в Windows 8 — инструкция