Диагностика дискового пространства на сервере

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

На виртуальном хостинге, VPS и выделенных серверах важно регулярно проверять дисковое пространство. Нехватка места может привести к остановке сайтов, ошибкам баз данных, сбоям обновлений и даже полной блокировке сервера.
Ниже — самые удобные и быстрые команды для анализа в терминале.

Общий объём и свободное место — команда df

df -h /

Пример вывода:

Файловая система   Размер  Использовано  Доступно  Использовано%  Cмонтировано в
/dev/vda1           9,8G        3,5G      5,9G           38%           /
  • Размер — общий объём диска
  • Использовано — сколько уже занято
  • Доступно — сколько свободно
  • Использовано% — процент заполнения

Анализ, что именно занимает место — команда du

Команда du показывает размер каталогов и файлов.

  1. Быстрый обзор всех основных директорий:
sudo du -hs /*

Пример вывода:

0       /bin
100M    /boot
0       /dev
39M     /etc
4,0K    /home
...
2,3G    /usr
1008M   /var
  1. Если нашли «подозрительный» каталог (например, /var или /usr), углубитесь:
sudo du -hs /var/*

или

sudo du -hs /usr/*
  1. Показать только большие каталоги (от 1 МБ и выше):
sudo du -hs /* | grep '[0-9]\+M'

или для сортировки по размеру (от большего к меньшему):

sudo du -h --max-depth=1 / | sort -hr

Проверка квот пользователей и групп — команда repquota

На хостингах с ISPmanager квоты часто назначаются группам пользователей. Посмотреть их можно так:

sudo repquota -g /

Пример вывода (группа user21):

user211  --  254948   0  5242880   1756   0   0
user212  -- 2622280   0  5242880  37930   0   0
...
  • Первая колонка — использованный объём (в килобайтах)
  • Вторая — лимит (если 0 — без лимита)

Для пользователей (не групп):

sudo repquota -u /

Полезные замечания и дополнительные команды

  • Самые частые «пожиратели» места:

    • /var/log — логи (очистить: sudo journalctl --vacuum-time=2weeks)
    • /var/cache/apt — кэш пакетов (очистить: sudo apt clean)
    • /tmp — временные файлы (очистить: sudo rm -rf /tmp/*)
    • /home/user/public_html — бэкапы, дампы баз, большие загрузки
  • Быстрый поиск 10 самых больших файлов/папок:

sudo du -ah / | sort -rh | head -n 10
  • Показать только файлы больше 100 МБ:
sudo find / -type f -size +100M -exec ls -lh {} \; | sort -k5 -hr

Помощь

Если у вас возникли вопросы или требуется помощь, пожалуйста, свяжитесь с нами через систему тикетов — мы обязательно вам поможем!

Нужна помощь?Наши инженеры бесплатно помогут с любым вопросом за считанные минутыНаписать нам