Коли диск сервера заповнюється, перестають працювати бази даних, пошта і сайт може віддавати помилку 500. Ось як швидко знайти, що займає місце.
1. Скільки місця вільно
df -h
Дивіться на рядок з точкою монтування / і колонку Use%. Якщо місце є, але файли не створюються, перевірте вільні inode (кількість файлів):
df -i
Закінчення inode буває, коли накопичуються мільйони дрібних файлів — сесії PHP, кеш, черга пошти.
2. Які каталоги займають найбільше
sudo du -h --max-depth=1 / 2>/dev/null | sort -rh | head -15
Команда покаже 15 найбільших каталогів у корені. Переходьте вглиб найбільшого і повторюйте, підставляючи шлях, наприклад /var, потім /var/log.
3. Зручніше — ncdu
Інтерактивна програма, де можна ходити каталогами стрілками й одразу бачити розміри:
sudo apt install ncdu # Ubuntu, Debian
sudo dnf install ncdu # AlmaLinux, Rocky
sudo ncdu -x /
Клавіша d видаляє вибраний файл або каталог (з підтвердженням), q — вихід.
4. Найбільші файли
sudo find / -xdev -type f -size +500M -exec ls -lh {} \; 2>/dev/null
Знайде всі файли понад 500 МБ на кореневому розділі.
Типові «пожирачі» місця
Журнали
sudo journalctl --disk-usage
sudo journalctl --vacuum-size=200M
Друга команда залишить системний журнал не більше 200 МБ. Великі файли в /var/log не видаляйте командою rm, якщо в них ще пише програма, — краще обнуліть: sudo truncate -s 0 /var/log/назва.log.
Кеш пакетів
sudo apt clean # Ubuntu, Debian
sudo dnf clean all # AlmaLinux, Rocky
Старі резервні копії
Архіви сайтів і дампи баз, які накопичуються в каталозі сайту або /root. Залишайте кілька останніх, а решту зберігайте поза сервером — див. «Як налаштувати резервне копіювання на VPS».
Docker
docker system df
docker system prune -a
Остання команда видаляє зупинені контейнери, невикористані образи й мережі. Томи з даними не зачіпаються, якщо не додати --volumes.
Видалений файл, який ще відкритий
Якщо ви видалили великий файл, а місце не звільнилося, його ще тримає відкритим якийсь процес:
sudo lsof +L1
Перезапустіть процес, указаний у виводі (зазвичай це служба, що писала журнал).
Якщо місця постійно не вистачає, збільште тариф і розширте диск.