Разделите установку на три проверяемых результата: сервер запускается от отдельного пользователя, служба корректно останавливает его, резервная копия действительно восстанавливается. Скопированный каталог живого мира без согласования записи ещё не является надёжным снимком.
Minecraft на Linux VPS: systemd и резервные копии
Запуск Minecraft на Linux VPS от отдельного пользователя: каталог, systemd, журнал, согласованный бэкап, хранение и проверка восстановления.
На странице 10 разделов
Коротко
Главное — дальше подробности
Выберите ядро и версию Minecraft, затем Java по их документации. У свежих и старых веток требования различаются. Создайте отдельного системного пользователя без лишних прав и каталог вроде /srv/minecraft. Передайте ему только нужные файлы. Скачайте официальный JAR выбранного ядра, запустите первый раз и прочитайте EULA до её принятия. Откройте только используемые игровые порты.
Пример для сервера, которому подходит выбранная Java; замените путь и размер памяти под свой runtime и VPS.
[Unit]
Description=Minecraft server
After=network.target
[Service]
User=minecraft
WorkingDirectory=/srv/minecraft
ExecStart=/usr/bin/java -Xms1G -Xmx3G -jar /srv/minecraft/server.jar nogui
Restart=on-failure
TimeoutStopSec=180
KillSignal=SIGINT
[Install]
WantedBy=multi-user.target
Сохраните как /etc/systemd/system/minecraft.service, выполните sudo systemctl daemon-reload и sudo systemctl enable --now minecraft. Проверьте systemctl status minecraft и journalctl -u minecraft -n 100. Значение 3G — пример, а не универсальная рекомендация; оставляйте память ОС.
Подключитесь, создайте тестовый блок, выйдите и остановите службу. В журнале дождитесь сохранения миров и завершения процесса до TimeoutStopSec. Запустите повторно и проверьте блок. Если принудительное завершение происходит по тайм-ауту, увеличьте обоснованный предел и выясните задержку, а не объявляйте остановку успешной по одному статусу systemd.
Для первого воспроизводимого варианта используйте плановое окно: предупредите игроков, остановите службу, убедитесь в завершении сохранения, скопируйте каталог сервера в отдельное место, затем запустите службу. В копию включайте все миры, plugins/mods, конфиги, данные игроков и связанные базы. Если используются внешние БД, снимайте согласованный дамп по документации их движка. Живой снимок возможен только при явно выстроенном протоколе сохранения и согласования всех хранилищ.
Оформите проверенный сценарий в отдельную службу oneshot и systemd timer. Перед включением расписания запустите вручную и проверьте код завершения. Добавьте блокировку параллельных запусков, отметку времени и журнал результата. Ротация должна удалять только проверенные старые копии после успешного создания новой. Держите хотя бы одну копию вне диска VPS и ограничьте доступ к архивам с пользовательскими данными.
| Шаг | Критерий |
|---|---|
| Развернуть в отдельный каталог | Исходный сервер не перезаписан |
| Задать другой порт и закрытый доступ | Игроки не попадут в тест случайно |
| Запустить нужную Java и ядро | Мир читается без миграции на случайную версию |
| Осмотреть мир и данные | Постройки, инвентари, права и экономика на месте |
| Записать длительность | Известно реальное время восстановления |
До успешной репетиции наличие архива подтверждает только создание файла. После обновлений повторяйте восстановление новым набором версий.
Можно ли запускать сервер от root?
Для этого руководства используется отдельный пользователь с ограниченным доступом. Обычной игре не нужны административные права ОС.
Достаточно ли архивировать только world?
Нет, несколько измерений, playerdata, плагины, моды и внешние БД могут храниться отдельно.
Как часто делать копии?
Выберите интервал по допустимой потере прогресса и стоимости снимка. Важнее проверенное восстановление и внешняя копия, чем случайное число архивов.
Справка сверена 2 ноября 2026 года. Версии проектов и условия примеров указаны в тексте.
Читайте дальше
Chunky и Paper Anti-Xray: подготовка мира сервера
Предгенерация Chunky и защита Paper Anti-Xray: границы мира, место на диске, пауза задач, режимы обфускации и проверка клиентом.
Домен Minecraft без порта: A, AAAA и SRV
Настройка адреса Java-сервера через DNS и SRV: имя узла, порт, проверка записей, IPv6 и отдельные условия подключения Bedrock.
Плагины для сервера Майнкрафт: 15 обязательных на Paper
LuckPerms, EssentialsX, WorldGuard, CoreProtect, AuthMe, Grim, TAB и ещё восемь плагинов, без которых не обходится почти ни один сервер без модов. Что делает каждый, что ему нужно рядом и в каком порядке ставить.