Как очистить кэш сервера
Со временем на Minecraft-сервере накапливаются временные файлы, логи, устаревшие данные плагинов и системный мусор. Это может замедлить работу сервера, увеличить время загрузки и потребление оперативной памяти. В этой инструкции мы пошагово разберём, как безопасно очистить кэш сервера на хостинге proxify.cloud. Все действия выполняются на выделенном сервере с Ubuntu через SSH. Прежде чем начать, убедитесь, что у вас есть доступ к панели управления proxify.cloud (Proxmox) – вы сможете создать снапшот сервера и в случае проблем быстро восстановить его.
Подготовка к очистке
Перед удалением любых файлов обязательно выполните резервное копирование. На proxify.cloud это можно сделать через панель Proxmox, создав снапшот виртуальной машины, либо через SSH с помощью утилит tar или rsync.
1. Оцените текущее состояние сервера
Подключитесь к серверу по SSH, выполните следующие команды, чтобы увидеть нагрузку, использование памяти и диска:
top -bn1 | head -5
free -h
df -h /home
Если вы используете tmux или screen, откройте отдельное окно для команд.
2. Остановите Minecraft-сервер
Чтобы избежать повреждения файлов в процессе очистки, сервер должен быть остановлен. Выполните (в зависимости от способа запуска):
# Если сервер работает как systemd-сервис (например, minecraft.service)
sudo systemctl stop minecraft
# Если запущен в screen/tmux
screen -S minecraft -X stuff "stop$(printf '\r')"
# Дождитесь полного завершения (проверьте командой ps aux | grep java)
В панели proxify.cloud вы также можете принудительно выключить ВМ через кнопку Stop, но это крайняя мера.
3. Создайте резервную копию мира и конфигов
Создайте архив папки сервера (обычно /home/minecraft/server или /opt/minecraft):
cd /home/minecraft
tar -czf backup-server-$(date +%F).tar.gz server/
Храните архив в надёжном месте (можно скачать через панель File Manager или загрузить на удалённое хранилище).
Очистка кэша Minecraft сервера
Теперь, когда сервер остановлен и создана резервная копия, можно приступать к очистке.
1. Удаление кэша плагинов и временных файлов
Большинство плагинов создают папку cache внутри своего каталога. Выполните:
# Замените /path/to/server на реальный путь к директории сервера
cd /path/to/server
# Удаляем стандартный кэш сервера (если есть)
rm -rf cache
# Удаляем кэш отдельных плагинов (пример):
rm -rf plugins/Essentials/userdata/cache
rm -rf plugins/WorldGuard/cache
rm -rf plugins/CoreProtect/cache
# Для Dynmap очистите его кэш карт, если хотите перестроить:
rm -rf plugins/dynmap/web/tiles/*
Многие плагины сами регенерируют кэш при следующем запуске. Проверьте каждый плагин – некоторые могут требовать очистки только через их команды.
2. Очистка логов
Логи занимают много места и не влияют на производительность сервера напрямую, но их удаление освобождает дисковое пространство.
rm -rf logs/*
rm -rf crash-reports/*
rm -rf plugins/*/logs/*
Важно: Не очищайте папки, которые могут содержать важные данные (например, плагин командных блоков может хранить там скрипты). Ориентируйтесь на папки с именем
logsилиcrash-reports.
3. Очистка старых резервных копий мира, сделанных плагинами
Некоторые плагины (например, AutoSaveWorld, Backup) создают свои архивы. Проверьте папки:
cd /path/to/server
du -sh backups/
du -sh plugins/*/backups/
Если они велики и вам не нужны эти копии, удалите:
rm -rf backups/*
4. Удаление файлов обновлений плагинов
В папках плагинов иногда остаются файлы .old, .bak или обновлённые jar-файлы. Удалите их вручную или командой:
find . -name "*.old" -o -name "*.bak" -delete
Очистка системного кэша Ubuntu
Помимо кэша самого Minecraft, на сервере накапливается системный мусор: кэш пакетов, временные файлы, неиспользуемая память и swap.
1. Очистка кэша APT
sudo apt clean # удаляет загруженные .deb пакеты
sudo apt autoclean # удаляет старые версии пакетов
sudo apt autoremove # удаляет ненужные зависимости
2. Очистка системных временных файлов
sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*
3. Очистка кэша памяти (drop_caches)
После долгой работы сервера файловый кэш может занимать много ОЗУ. Очистка безвредна, но может временно замедлить чтение с диска.
sudo sync
echo 3 | sudo tee /proc/sys/vm/drop_caches
Эта команда сбросит буферы и кэш файловой системы.
4. Сброс swap (если используется)
Если swap-раздел стал активно использоваться, его можно перечитать:
sudo swapoff -a && sudo swapon -a
Выполняйте только при достаточном количестве свободной ОЗУ, иначе сервер может зависнуть.
Автоматизация очистки кэша
Чтобы не выполнять рутинные операции вручную, можно настроить cron-задачу.
1. Создайте скрипт очистки
Создайте файл, например /usr/local/bin/clear-cache.sh:
#!/bin/bash
# Очистка кэша Minecraft сервера и системы
SERVER_DIR="/home/minecraft/server"
LOG_FILE="/var/log/cache-clean.log"
echo "[$(date)] Starting cache clear" >> "$LOG_FILE"
# Останавливаем Minecraft (если он запущен)
if pgrep -x java > /dev/null; then
systemctl stop minecraft
sleep 10
fi
# Удаляем кэш плагинов (пример)
rm -rf "$SERVER_DIR/cache"
rm -rf "$SERVER_DIR/plugins/Essentials/userdata/cache"
rm -rf "$SERVER_DIR/plugins/Dynmap/web/tiles"
# Очищаем логи (кроме сегодняшнего)
find "$SERVER_DIR/logs" -type f -mtime +7 -delete
# Системная очистка
apt clean
sync
echo 3 > /proc/sys/vm/drop_caches
swapoff -a && swapon -a
# Запускаем сервер
systemctl start minecraft
echo "[$(date)] Cache clear finished" >> "$LOG_FILE"
Не забудьте сделать скрипт исполняемым:
sudo chmod +x /usr/local/bin/clear-cache.sh
2. Добавьте задачу в crontab
Откройте crontab:
sudo crontab -e
Добавьте строчку для еженедельной очистки (например, в 3:00 каждый понедельник):
0 3 * * 1 /usr/local/bin/clear-cache.sh
Теперь сервер будет автоматически очищать кэш без вашего участия. Но не забывайте проверять логи скрипта.
Возможные проблемы и решения
Проблема: После очистки сервер не запускается
Причина: Удалены важные файлы плагина (например, конфигурация, которая не регенерируется).
Решение: Восстановите файлы из предыдущей резервной копии (backup-server-*.tar.gz). Если такой копии нет, переустановите плагин заново (скачайте jar, скопируйте конфиги из бекапа или настройте заново).
Проблема: Процесс очистки прервался из-за занятых файлов
Причина: Сервер не был полностью остановлен.
Решение: Проверьте, что java-процесс действительно завершён (ps aux | grep java). Используйте kill -9 PID в крайнем случае. Через панель proxify.cloud можно перезагрузить ВМ.
Проблема: После сброса drop_caches производительность сервера временно упала
Причина: Система заново читает файлы с диска в кэш.
Комментарии (0)