← Назад к вопросам

Как проверить использование диска в Linux

1.0 Junior🔥 222 комментариев
#Linux и администрирование

Комментарии (2)

🐱
deepseek-v3.2PrepBro AI5 апр. 2026 г.(ред.)

Ответ сгенерирован нейросетью и может содержать ошибки

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

В Linux существует множество инструментов для проверки использования диска - от базовых утилит командной строки до продвинутых графических решений и систем мониторинга. Вот основные подходы:

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

df - Disk Free (свободное место)

Наиболее распространенная команда для быстрой проверки свободного места на подключенных файловых системах.

# Базовая проверка
df -h

# С выводом типа файловой системы
df -hT

# Показать только определенные файловые системы (например, ext4)
df -hT -t ext4

# Исключить определенные типы (tmpfs, devtmpfs)
df -h --exclude-type=tmpfs --exclude-type=devtmpfs

Ключ -h (human-readable) форматирует вывод в читаемом виде (GB, MB), -T показывает тип файловой системы.

du - Disk Usage (использование диска)

Показывает использование диска конкретными директориями и файлами.

# Общий размер текущей директории
du -sh

# Рекурсивный вывод с сортировкой по размеру
du -h --max-depth=1 | sort -hr

# Топ-10 самых больших директорий в /var
du -h --max-depth=1 /var 2>/dev/null | sort -hr | head -10

# Подробный вывод с суммарным итогом
du -sch /home/* 2>/dev/null

Расширенные инструменты мониторинга

ncdu - Ncurses Disk Usage

Интерактивный TUI-инструмент для анализа использования диска.

# Установка (Ubuntu/Debian)
sudo apt install ncdu

# Анализ текущей директории
ncdu

# Анализ всей системы (требует прав root)
sudo ncdu /

ncdu позволяет навигацию по дереву директорий, удаление файлов прямо из интерфейса, экспорт результатов.

baobab (Disk Usage Analyzer) - графический инструмент

Для графических сред GNOME/KDE.

# Запуск через GUI или терминал
baobab

Представляет данные в виде круговой диаграммы или древовидной карты.

Мониторинг в реальном времени

iotop и iostat - мониторинг дисковых операций

# Установка iotop
sudo apt install iotop

# Мониторинг дисковых операций в реальном времени
sudo iotop

# Статистика использования дисков
iostat -dx 5  # обновление каждые 5 секунд

Автоматизированный мониторинг и алертинг

Скрипты для регулярной проверки

Пример скрипта для мониторинга и алертинга:

#!/bin/bash
THRESHOLD=80
ALERT_EMAIL="admin@example.com"

df -h | grep '^/dev' | while read line; do
    USAGE=$(echo $line | awk '{print $5}' | sed 's/%//')
    PARTITION=$(echo $line | awk '{print $1}')
    
    if [ $USAGE -ge $THRESHOLD ]; then
        echo "ВНИМАНИЕ: Диск $PARTITION заполнен на ${USAGE}%" | \
        mail -s "Дисковое пространство на $HOSTNAME" $ALERT_EMAIL
    fi
done

Интеграция с системами мониторинга

  • Prometheus + node_exporter: Сбор метрик использования диска
  • Grafana: Визуализация и дашборды
  • Zabbix/Nagios: Комплексный мониторинг с алертингом

Практические рекомендации

  1. Регулярные проверки: Настройте cron-задачи для ежедневного мониторинга
  2. Логирование: Сохраняйте историю использования для анализа трендов
  3. Автоматическая очистка: Настройте ротацию логов и удаление временных файлов
  4. Quotas: Используйте дисковые квоты для контроля использования пользователями
  5. LVM: Используйте Logical Volume Manager для гибкого управления дисковым пространством

Пример рабочего процесса диагностики

# 1. Быстрая проверка свободного места
df -h

# 2. Поиск самых больших директорий в проблемном разделе
sudo du -h --max-depth=1 /var | sort -hr

# 3. Детальный анализ с ncdu
sudo ncdu /var/log

# 4. Поиск больших файлов старше N дней
find /var/log -type f -size +100M -mtime +30 -exec ls -lh {} \;

# 5. Мониторинг в реальном времени при очистке
sudo iotop -oPa

Важные файловые системы для мониторинга

  • /var/log - логи приложений и системы
  • /tmp - временные файлы
  • /home - пользовательские данные
  • /var/lib/docker - Docker-контейнеры и образы (если используется)

Эффективный мониторинг использования диска - критически важная задача для DevOps-инженера, позволяющая предотвращать простои из-за нехватки дискового пространства и оптимизировать инфраструктуру.