Когда на VPS внезапно заканчивается свободное место, последствия для проекта наступают незамедлительно: сайты перестают открываться или выдают белый экран, базы данных падают с ошибками записи, а вы теряете возможность загрузить на сервер даже самый маленький файл. Первая реакция многих администраторов в такой стрессовой ситуации — быстро удалить что-нибудь объемное. Однако удаление системных каталогов или неизвестных файлов может нарушить работу операционной системы или сайта.
В этой статье мы пошагово разберем, как быстро найти скрытых «пожирателей» дискового пространства и безопасно освободить место, не рискуя работоспособностью вашего сайта.
Как проверить общее заполнение дискового пространства
Прежде чем приступать к поиску конкретных файлов, необходимо оценить общую картину использования диска на сервере. Для этого подключитесь к вашему VPS по протоколу SSH и воспользуйтесь базовыми диагностическими утилитами Linux.
Самая популярная и информативная команда для этой задачи — df. Введите в консоль:
df -h
rm может оказаться необратимым.

Поиск самых объемных папок и файлов
Когда вы убедились, что раздел действительно переполнен, необходимо локализовать проблему. Найти самые крупные директории поможет встроенная утилита du. Выполните следующую команду:
du -sh /* | sort -hr
Эта комбинация выведет размер всех папок в корневом каталоге и отсортирует их по убыванию. Ключ -s суммирует размер содержимого, -h переводит байты в удобные мегабайты и гигабайты, а sort -hr выстраивает их от большего к меньшему.
Для более наглядного и быстрого поиска мы рекомендуем использовать утилиту ncdu (NCurses Disk Usage). Если она не установлена, добавьте ее командой apt-get install ncdu (для Debian/Ubuntu). Запустив ncdu /, вы получите интерактивный интерфейс, где можно легко перемещаться по папкам с помощью стрелок, просматривать их размер и сразу понимать, где скопился мусор.
Что можно удалить без вреда для сайта
Найдя тяжелые директории, важно правильно оценить их содержимое. Никогда не удаляйте неизвестные системные файлы в каталогах /bin, /lib или /boot. Вот список того, что можно безопасно очистить:
Временные файлы
Директория /tmp используется программами для хранения временных данных. Содержимое этой папки можно смело очищать, если там скопились гигабайты старых сессий или кэша.
Кэш пакетов
Менеджеры пакетов сохраняют загруженные обновления. Освободить до нескольких гигабайт поможет команда apt-get clean (для Ubuntu/Debian) или yum clean all (для CentOS).
Старые архивы
Часто в домашних директориях пользователей (/home или /root) забывают старые .zip или .tar.gz архивы с бэкапами баз данных. Их можно безопасно удалить.
Правильная работа с системными логами
Системные логи (каталог /var/log) — самая частая причина переполнения диска на VPS. Сюда пишутся ошибки PHP, запросы к Nginx и системные события. Главная ошибка новичков — удаление активного лог-файла командой rm. Если вы удалите файл, в который прямо сейчас пишет процесс, место на диске фактически не освободится до перезагрузки самой службы.
Вместо полного удаления используйте метод обнуления. Команда > /var/log/nginx/access.log или truncate -s 0 /var/log/nginx/access.log моментально очистит содержимое файла, сохранив его структуру и права доступа для работающего веб-сервера.
Как настроить ротацию и мониторинг
Чтобы проблема нехватки места не повторялась каждый месяц, необходимо автоматизировать процесс очистки. За это отвечает встроенная служба logrotate. Проверьте ее конфигурационные файлы в каталоге /etc/logrotate.d/. Убедитесь, что для ваших тяжелых логов настроена еженедельная архивация и автоматическое удаление копий старше 14 дней.
Дополнительно стоит настроить базовый мониторинг. Использование простых скриптов, которые проверяют вывод команды df и отправляют предупреждение в Telegram при заполнении диска на 80%, даст вам время на реакцию до того, как сервер перестанет отвечать.
Чек-лист: Быстрая очистка VPS
Если сервер уже переполнен, следуйте этому краткому алгоритму для оперативного восстановления работы:
- Оцените масштаб проблемы с помощью команды
df -h. - Используйте
ncduдля быстрого поиска самых тяжелых папок. - Очистите кэш системных обновлений командой
apt-get clean. - Удалите забытые ZIP-архивы и устаревшие ручные дампы баз данных.
- Обнулите объемные логи веб-сервера командой
truncate, не удаляя сами файлы. - Настройте автоматическую ротацию файлов через
logrotate.
Дискового места постоянно не хватает?
Сравните рост файлов и баз данных с объёмом диска, который нужен проекту.
