ncdu: Эффективный способ найти и удалить лишние файлы в Linux
Когда команда df -h внезапно сообщает, что место на диске закончилось, а стандартная утилита du -sh заставляет гадать по бесконечным строкам вывода, на помощь приходит ncdu.
ncdu (NCurses Disk Usage) — это интерактивный консольный анализатор дискового пространства. В отличие от классических инструментов, он строит удобное дерево директорий, сортирует их по размеру и позволяет мгновенно переходить к самым тяжелым папкам. Найти и удалить разросшийся лог на 50 ГБ теперь можно буквально за пару секунд.
Установка ncdu
Утилита крайне легковесна и доступна во всех популярных репозиториях:
# Ubuntu/Debian
sudo apt install ncdu
# Arch Linux
sudo pacman -S ncdu
# Fedora
sudo dnf install ncdu
# macOS
brew install ncdu
Как пользоваться
Запуск максимально прост. Вы можете просканировать текущую директорию или указать конкретный путь:
# Просканировать текущую папку
ncdu
# Сканировать конкретную папку (например, /var)
ncdu /var
Навигация и горячие клавиши:
- ↓ / ↑ — перемещение по списку файлов и папок.
- Enter — войти в выбранную директорию.
- d — удалить файл или папку (требуется подтверждение).
- n / s — сортировка по имени или по размеру.
- q — выход из программы.
Киллер-фичи для системных администраторов
1. Быстрая чистка журналов
Если сервер начал «задыхаться» от логов, просто запустите ncdu /var/log. Вы сразу увидите, какие журналы занимают больше всего места, и сможете очистить их прямо из интерфейса.
2. Глубокий анализ всей системы
С помощью sudo можно просканировать весь корень системы:
sudo ncdu /
Это наглядно покажет распределение данных между /home, /var, /opt и другими системными путями.
3. Экспорт и импорт результатов
Вы можете сохранить результат сканирования в JSON-файл для последующего анализа или отправки коллегам:
ncdu -o scan.json /home
4. Удаленный анализ через SSH
Полезный трюк для мониторинга удаленных серверов. Можно просканировать сервер и просмотреть результат локально:
# На удалённом сервере
ncdu -o- / | gzip > scan.json.gz
# На локальной машине
ncdu -f- < <(ssh user@host 'zcat scan.json.gz')
Преимущества и недостатки
Плюсы:
- Наглядность: индикаторы (бары) визуально показывают долю занимаемого места.
- Интерактивность: удобное управление стрелками и быстрый переход по уровням вложенности.
- Безопасность: удаление данных всегда требует подтверждения.
- Минимализм: работает быстро даже на слабых VPS.
Минусы:
- Не входит в стандартный набор утилит по умолчанию.
- Требуется минимальное привыкание к TUI (текстовому интерфейсу).
Если вам нужно еще более современное решение для визуализации диска, обратите внимание на duf.