Инструменты
Перезапуск сервера по расписанию
Выберите время перезапуска и за сколько минут предупреждать — получите строки crontab: сервер напишет игрокам в чат, а в назначенное время получит stop. Поднимет его systemd с Restart=always или цикл в скрипте запуска.
Рестарт по расписанию
Строки crontab
45 4 * * * tmux send-keys -t mc "say Перезапуск сервера через 15 мин." Enter 55 4 * * * tmux send-keys -t mc "say Перезапуск сервера через 5 мин." Enter 59 4 * * * tmux send-keys -t mc "say Перезапуск сервера через 1 мин." Enter 0 5 * * * tmux send-keys -t mc "say Перезапуск! Возвращайтесь через минуту." Enter 0 5 * * * sleep 5 && tmux send-keys -t mc "stop" Enter
sudo -u minecraft crontab -eЗачем перезапускать сервер и как это работает
Плановый перезапуск раз в сутки — привычная практика: сервер заново загружает плагины и мир, а игроки знают время заранее. Генератор собирает строки для cron — планировщика Linux: в нужные минуты он отправляет в консоль сервера say с предупреждением, а в назначенное время — stop.
Команды уходят в консоль через tmux send-keys — так устроен запуск в нашем юните systemd: консоль живёт в сессии tmux. stop корректно сохраняет миры. Поднимает сервер обратно systemd с Restart=always или цикл в скрипте запуска с автоперезапуском.
Cron использует время и часовой пояс машины. Строки добавляют в crontab того пользователя, от которого работает сервер: sudo -u minecraft crontab -e. Проверить, что они на месте, — crontab -l от того же пользователя.
Если сервер лагает так, что его приходится часто перезапускать, ищите причину профайлером spark. DGuard тратит 0,03 % одного ядра на основном потоке — из-за античита перезапуски не понадобятся.
Читайте в базе знаний
Частые вопросы
Как сделать автоматический перезапуск сервера Minecraft?
Добавьте в crontab строки из генератора: они предупредят игроков и отправят stop в нужное время. Чтобы сервер поднялся снова, его должен перезапускать systemd с Restart=always или цикл в скрипте запуска.
Почему сервер выключился и не включился?
stop только останавливает сервер. Запуск обратно делает systemd с Restart=always или цикл в start.sh — без них сервер остаётся выключенным.
В каком часовом поясе работает cron?
В часовом поясе машины. Проверьте его командой date и указывайте время по нему.
Можно ли так перезапускать сервер на хостинге с панелью?
Если доступа к cron нет, посмотрите, есть ли в панели хостинга планировщик задач: там перезапуск настраивается без строк crontab.
Инструменты бесплатны. Защита от читов — тоже
DGuard — лучший античит для современного сервера Minecraft: ловит все 47 видов читов из нашего сравнения, у ближайшего соперника, Intave, — 27. До 30 игроков онлайн — бесплатно, защита та же, что на платных тарифах.