🧱 Суть

На Linux VPS есть набор команд, которые позволяют понять: сколько осталось места на диске и что именно его занимает (логи, Docker, системные файлы и т.д.).

📦 Проблема

На сервере часто внезапно заканчивается место, и без диагностики:

  • непонятно, что его съело
  • сложно отличить логи от системных файлов
  • можно “вслепую” удалить не то

✅ Решение

Использовать набор команд для диагностики диска:
сначала общий обзор, затем детализация по папкам, логам и крупным файлам.

💻 Код

Проверить общий объём диска

df -h

Только корневой раздел

df -h /

Посмотреть, что занимает место (по директориям)

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

Для конкретной папки:

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

Размер логов

du -sh /var/log

Подробнее:

du -h --max-depth=1 /var/log | sort -hr

Проверка auth логов (SSH атаки)

ls -lh /var/log/auth.log*

или:

du -sh /var/log/auth.log*

Самые большие файлы в системе

find / -type f -exec du -h {} + 2>/dev/null | sort -hr | head -30

Размер systemd журналов

journalctl --disk-usage

Очистка journald

sudo journalctl --vacuum-time=7d

или:

sudo journalctl --vacuum-size=200M

Проверка SSH атак

grep "Failed password" /var/log/auth.log | wc -l

Топ IP-адресов атак

grep "Failed password" /var/log/auth.log \
| awk '{print $(NF-3)}' \
| sort | uniq -c | sort -nr | head -20

Проверка Docker (часто съедает диск)

docker system df

Как думать об этом

df -h        → сколько места есть
du -h        → что его занимает
journalctl   → логи системы
docker       → контейнеры и образы

🎯 Вывод

  • df -h – точка входа для диагностики диска
  • du – поиск “виновников” по папкам
  • логи и Docker – самые частые причины заполнения VPS
  • SSH-логи помогают понять, есть ли атаки

🔗 Связано