LinuxНизкая

Как проверить место на диске в Linux: команды и утилиты

Узнайте, как быстро проверить занятое и свободное место на диске в Linux с помощью встроенных утилит. Пошаговый разбор команд `df`, `du` и `ncdu` для новичков и администраторов.

Обновлено 7 апреля 2026 г.
5-10 мин
Низкая
FixPedia Team
Применимо к:Ubuntu 20.04/22.04/24.04 LTSDebian 11/12CentOS Stream / RHEL 8+Fedora 38+

Зачем проверять место на диске в Linux

Регулярный контроль свободного пространства предотвращает аварийные остановки сервисов, падение баз данных и невозможность обновления системы. Когда раздел /var или корневой / заполняется на 100%, Linux перестаёт записывать логи, а приложения начинают завершаться с ошибками ввода-вывода. Этот материал поможет вам быстро оценить текущую ситуацию, найти скрытые потребители места и выбрать подходящий инструмент для мониторинга.

Требования и подготовка

Перед началом работы убедитесь, что у вас есть доступ к терминалу. Для выполнения большинства команд достаточно обычного пользователя. Если нужно анализировать системные каталоги или удалять файлы, потребуются права суперпользователя (sudo). Все описанные утилиты встроены в минимальные сборки дистрибутивов, кроме ncdu, которую мы установим отдельно.

Шаг 1: Быстрая оценка общей загруженности

Самый быстрый способ увидеть картину целиком — использовать встроенную утилиту df. Она показывает статистику по всем смонтированным файловым системам.

Выполните в терминале:

df -h

Флаг -h переводит вывод в человеко-читаемый формат (GB, MB). Обратите внимание на колонки Size (общий объём), Used (занято), Avail (доступно) и Use%. Если процент использования близок к 90–95%, пора принимать меры.

💡 Совет: Для анализа только корневого раздела используйте df -h /. Чтобы исключить псевдофайловые системы (вроде tmpfs или devtmpfs), добавьте флаг -x tmpfs.

Шаг 2: Поиск самых тяжёлых директорий

Утилита df показывает общую картину, но не говорит, какие именно папки съедают пространство. Здесь на помощь приходит du (disk usage).

Запустите команду для сканирования корня файловой системы:

sudo du -sh /* 2>/dev/null | sort -rh

Разбор параметров:

  • -s — суммирует размер для каждого аргумента без излишней вложенности
  • -h — выводит результат в удобных единицах измерения
  • 2>/dev/null — подавляет сообщения об отказе в доступе к защищённым файлам
  • sort -rh — сортирует вывод от большего к меньшему

Результат покажет, какая директория занимает больше всего места (например, /var, /usr или /home). Спускайтесь глубже, подставляя найденный путь вместо /*. Например, sudo du -sh /var/* 2>/dev/null | sort -rh.

Шаг 3: Интерактивный анализ через ncdu

Для визуального и быстрого перемещения по дереву каталогов лучше всего подходит ncdu (NCurses Disk Usage). Она работает прямо в терминале и позволяет удалять файлы без выхода из интерфейса.

  1. Установите пакет:
    # Для Debian/Ubuntu
    sudo apt update && sudo apt install ncdu
    
    # Для RHEL/Fedora/AlmaLinux
    sudo dnf install ncdu
    
  2. Запустите сканирование нужного раздела:
    sudo ncdu /
    

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

⚠️ Важно: Будьте осторожны при удалении файлов из /var/lib, /usr или системных каталогов. Удаление критичных компонентов может нарушить работу ОС. Удаляйте только логи, кэш или временные данные, назначение которых вам понятно.

Проверка результата

После очистки повторно выполните df -h /. Убедитесь, что значение Use% упало ниже 80%. Для автоматического мониторинга настройте простой скрипт или используйте стандартные утилиты системы:

# Проверка через cron без установки стороннего ПО
df -h / | awk 'NR==2 {print "Занято:", $5}'

Если показатель стабилен и сервисы работают без ошибок ввода-вывода, задача выполнена.

Возможные проблемы при выполнении

Ошибка «Disk quota exceeded» или «No space left on device» при очистке Место может быть занято удалёнными, но всё ещё открытыми процессами файлами. Перезапустите соответствующие службы (например, sudo systemctl restart rsyslog или sudo systemctl restart nginx) или используйте sudo lsof +L1 для поиска таких дескрипторов.

Слишком медленный вывод команды du Сканирование больших разделов с миллионами мелких файлов занимает время. Ограничьте глубину проверки флагом --max-depth=1 или используйте ncdu — она оптимизирована для быстрой работы с большими деревьями каталогов.

Занято 100%, но du не находит файлы Проверьте, не исчерпаны ли иноды (inodes). Файловая система может иметь свободные байты, но не иметь слотов для новых файлов. Команда df -i покажет использование инодов. Если оно на пределе, удалите множество мелких файлов (например, сессии PHP или кэш пакетов).

Часто задаваемые вопросы

Почему команда df показывает меньше места, чем я ожидаю?
Как быстро найти файлы, занимающие больше всего места?
Можно ли проверить место на удалённом сервере без установки программ?
Что делать, если место закончилось внезапно?

Полезное

Открыть терминал
Проверить общую загрузку разделов
Найти скрытые потребители места
Анализ с помощью ncdu (опционально)

Эта статья помогла вам решить проблему?