Настройка сервера Minecraft PaperMC на Ubuntu/Debian: systemd, плагины и бэкапы

Содержание
- Введение
- Почему стоит выбрать PaperMC?
- Основные преимущества
- Подготовка окружения и выбор ресурсов
- Терминология
- Рекомендации по ресурсам
- Установка Java и обновление системы
- Создание рабочего каталога и загрузка PaperMC
- Первый запуск и настройка EULA
- Отлючение проверки лицензий
- Настройка server.properties
- Автозапуск через systemd
- Регулярные бэкапы
- Установка и обновление плагинов
- Заключение
Введение
В этой статье вы узнаете:
- Как выбрать оптимальное оборудование для сервера Minecraft
- Как установить и обновить Java на Linux (Ubuntu/Debian)
- Как загрузить и автоматически обновлять последнюю версию PaperMC
- Базовую настройку файла
server.properties
- Организацию автозапуска через
systemd
- Рекомендации по выбору плагинов и настройке регулярных бэкапов
Почему стоит выбрать PaperMC?
Основные преимущества
- Производительность: сниженная нагрузка на CPU и RAM по сравнению с официальным
server.jar
и Spigot. - Совместимость: поддержка всех плагинов из экосистемы Spigot.
- Стабильность: регулярные апдейты, критичные патчи и фиксы производительности.
Совет: если вам нужен «чистый» ванильный опыт без сторонних изменений, используйте официальный
server.jar
. Для доступа к расширенному API подойдут Spigot или Bukkit.
Подготовка окружения и выбор ресурсов
Терминология
Параметр | Обозначение |
---|---|
RAM | Оперативная память (GB) |
CPU | Частота одного потока (GHz) |
Хранение | SSD / NVMe |
Игроки | Одновременные подключённые юзеры |
Рекомендации по ресурсам
Тип сервера | Игроков | ОЗУ | CPU | Хранилище | Сценарии использования |
---|---|---|---|---|---|
Мини | 1–5 | 2–4 ГБ | ≥ 3.4 GHz | SSD | Локальная игра, без плагинов |
Малый | 5–10 | 4–6 ГБ | ≥ 3.6 GHz | SSD | Essentials, LuckPerms и другие лёгкие плагины |
Средний | 10–30 | 6–10 ГБ | ≥ 3.8 GHz | SSD | Survival, мини-игры, ~10 плагинов |
Большой | 30–100 | 10–16 ГБ | ≥ 4.0 GHz | SSD | Множество миров, тяжёлые плагины |
Кластер/Хостинг | 100+ | 32+ ГБ | ≥ 4.2 GHz | NVMe | BungeeCord, кластерные решения |
Совет: арендуйте VPS с почасовой тарификацией для временных проектов или тестовых игр с друзьями. Например, на aeza.net есть гибкие тарифы.
Установка Java и обновление системы
Все команды приведены для Ubuntu/Debian. В других дистрибутивах пакеты могут называться иначе.
sudo apt update && sudo apt install -y openjdk-21-jre-headless jq nano curl
Проверка версии Java
java -version
Ожидаемый вывод:
openjdk version "21.0.7" 2025-04-15
OpenJDK Runtime Environment (build 21.0.7+6-Ubuntu-0ubuntu124.04)
OpenJDK 64-Bit Server VM (build 21.0.7+6-Ubuntu-0ubuntu124.04, mixed mode, sharing)
Важно: если доступна версия Java 22 или выше, рекомендуем использовать её для большей производительности.
Создание рабочего каталога и загрузка PaperMC
- Создайте директорию и перейдите в неё:
sudo mkdir -p /opt/minecraft/paper && cd /opt/minecraft/paper
- Создайте скрипт загрузки
download.sh
:sudo nano download.sh
- Вставьте код и при необходимости замените
MINECRAFT_VERSION
(по умолчанию1.21.4
):#!/usr/bin/env sh PROJECT="paper" MINECRAFT_VERSION="1.21.4" LATEST_BUILD=$(curl -s https://api.papermc.io/v2/projects/${PROJECT}/versions/${MINECRAFT_VERSION}/builds | \ jq -r '.builds | map(select(.channel == "default") | .build) | .[-1]') if [ "$LATEST_BUILD" != "null" ]; then JAR_NAME=${PROJECT}-${MINECRAFT_VERSION}-${LATEST_BUILD}.jar PAPERMC_URL="https://api.papermc.io/v2/projects/${PROJECT}/versions/${MINECRAFT_VERSION}/builds/${LATEST_BUILD}/downloads/${JAR_NAME}" curl -o server.jar $PAPERMC_URL echo "✅ Загрузка завершена" else echo "⚠️ Нет стабильного билда для версии $MINECRAFT_VERSION :(" fi
- Сохраняем файл (
Ctrl+X
,Y
,Enter
), делаем его исполняемым и запускаем:sudo chmod +x download.sh sudo ./download.sh
- Проверяем наличие
server.jar
:ls
Первый запуск и настройка EULA
- Запустите сервер:
sudo java -Xms2G -Xmx2G -XX:+UseG1GC -jar server.jar nogui
- После строки
Done remapping server in ... ms
остановите процесс (Ctrl+C). - Откройте
eula.txt
sudo nano eula.txt
- Измените
eula=false
наeula=true
, сохраните файл (Ctrl+X
,Y
,Enter
).
Отлючение проверки лицензий
Если нужен сервер для неофициальных клиентов, откройте server.properties
и поставьте:
online-mode=false
Настройка server.properties
server-ip=
— оставьте пустым для прослушивания всех интерфейсов.server-port=25565
— стандартный порт. По умолчанию 25565.level-name=world
— название папки с миром. По умолчанию —world
.level-seed=
— задаёт сид генерации мира.view-distance=10
— дистанция прорисовки.gamemode=survival
— режим по умолчанию (creative
,adventure
,spectator
).difficulty=easy
— сложность мира (peaceful
,easy
,normal
,hard
).pvp=true
— включает PvP.max-players=20
— максимальное число игроков.spawn-monsters=true
— спавн враждебных мобов.white-list=true
— на сервер могут зайти только игроки из файлаwhitelist.json
.motd=A Minecraft Server
— Сообщение сервера
Автозапуск через systemd
Для автоматического старта при загрузке сервера создайте systemd-сервис:
- Создайте сервис:
sudo nano /etc/systemd/system/minecraft.service
- Вставьте:
[Unit] Description=Minecraft Paper Server After=network.target [Service] User=root WorkingDirectory=/opt/minecraft/paper ExecStart=/usr/bin/java -Xms2G -Xmx2G -XX:+UseG1GC -jar server.jar nogui Restart=on-failure [Install] WantedBy=multi-user.target
- Запустите сервис:
sudo systemctl daemon-reload sudo systemctl enable --now minecraft
- Проверьте статус сервера:
Убедитесь, что статус —sudo systemctl status minecraft
Active: active (running)
.
Регулярные бэкапы
- Откройте crontab от root:
sudo crontab -e
- Добавьте задачу для ежедневного бэкапа в 03:00:
0 3 * * * tar -czf /opt/minecraft/backups/world_$(date +\%F).tar.gz /opt/minecraft/paper/world
Установка и обновление плагинов
- Скачайте
.jar
плагина с официальных ресурсов (SpigotMC, CurseForge). - Поместите файл в папку
plugins/
. - Перезагрузите сервер:
sudo systemctl restart minecraft
Заключение
Ваш Minecraft-сервер на базе PaperMC готов к стабильной и производительной работе на Linux. Остаётся только подобрать нужные плагины и наслаждаться игрой!