Решение проблем при запуске

Основная информация

Если вы купили сервер, настроили его, но он выключается через какое то время, то чаще всего такое происходит из-за неправильной настройки сервера. В данной статье мы разберем частые ошибки, которые совершают клиенты, в последствии чего сервер «крашается», а также рассмотрим методы решения данных проблем.

Как понять, из-за чего крашнулся сервер?

В случае если ваш сервер крашнулся, первым делом проверяйте консоль на наличие данных строк:

Exit code: <код>

Важно обратить внимание именно на строку: Exit code: <код>, т.к. код ошибки означает причину краша, и сейчас мы разберем распространенные ошибки.

Разновидности Exit code и способы решений этих ошибок

Exit code: 1 - Ошибка запуска

Одна из самых частых ошибок при запуске своего сервера. Exit code: 1 означает, что сервер аварийно завершил работу по какой-то из следующих причин:

1. Ошибка плагина или мода

  • Конфликт плагинов/модов
  • Разные версии плагина/мода и сервера
  • Некорректная работа самого плагина/мода

Решение: Нужно проверить логи сервера для поиска конфликтующих модов и ошибок от плагинов/модов.

2. Несовместимая версия Java с версией ядра

После запуска сервера в консоли может появиться ошибка UnsupportedClassVersionError. Это связано с тем, что выбранная версия Java и версия ядра (игры) не совместимы.

Решение в panel.superhub.host или free.superhub.host:

  1. Выберите ваш сервер.
  2. Перейдите во вкладку Запуск.
  3. В графе Образ Docker измените версию Java на подходящую для вашей версии.
  4. Запустите сервер.

Решение в my.superhub.host:

  1. Выберите вашу услугу.
  2. Слева выберите вкладку Настройки.
  3. В графе Образ Docker измените версию Java на подходящую для вашей версии.
  4. Запустите сервер.

Если вы не знаете, какая версия Java вам нужна, ознакомьтесь с данной таблицей:

Версия игры. Версия Java
1.8 - 1.16.5 Java 8
1.16.5 - 1.17.1 Java 16
1.18.2 - 1.20.4 Java 17
1.20.5 - 1.21+ Java 21

3. Поврежденное ядро

Если перед Exit code: 1 в консоли есть следующие ошибки:

  • Unable to access jarfile;
  • Jar file is corrupt;
  • Main class not found;
  • Invalid or corrupt jarfile;
  • The Minecraft server .JAR is missing (/home/container/server.jar).

Exit code: 1 - Unable to access jarfile

Значит, на сервере не установлено ядро, или оно повреждено. В таком случае проверьте версию ядра во вкладке Запуск, а затем перейдите во вкладку Настройки и нажмите Переустановить сервер, чтобы панель скачала и установила файлы выбранной версии. Подробнее про переустановку сервера вы можете прочитать в нашей статье

4. Некорректные JVM флаги

Если вы изменяли команду запуска, и после этого сервер не запускается. Скорее всего, вы неверно указали JVM флаги. Чтобы точно это определить, вы можете увидеть в консоли следующие ошибки:

  • Invalid initial heap size: <ошибка>;
  • Error: Could not create the Java Virtual Machine.;
  • Error: A fatal exception has occurred. Program will exit..

В таком случае важно обратить внимание именно на первую строчку, ведь именно в ней указывается, где была допущена ошибка.

Пример:

Ошибка команды запуска

Но важно учитывать, что ошибка Exit code: 1 может возникнуть и по другим причинам. Поэтому важно проверять файл latest.log, чтобы точно определить причину краша сервера.

Exit Code: 137 - Нехватка ОЗУ

Ошибка Exit code: 137 означает, что серверу нужно больше оперативной памяти, чем доступно в данный момент в вашем тарифе. Из за нехватки ОЗУ, сервер аварийно завершает свою работу, из-за чего может произойти откат на 5-10 минут.

Способы решения данной ошибки:

  • Улучшить тариф в личном кабинете;
  • Оптимизировать сервер;
  • Удалить сильно нагружающие моды/плагины.

Про оптимизацию сервера вы можете подробно прочитать в нашей статье Оптимизация Minecraft сервера.

Exit code: 0 - Сервер был остановлен без ошибок

В некоторых случаях при остановке сервера, может появиться Exit code: 0. Это значит, что сервер был остановлен без каких-либо ошибок с помощью плагинов/модов.

Прочие ошибки в консоли сервера.

Another power action is currently being processed

Ошибка another power action is currently being processed for this server, please try again later возникает, если нажали start/stop/restart, когда сервер уже выполняет какое-то из этих действий. Решение - подождать пару минут и снова нажать кнопку.

User limit of inotify instances reached

Если возникает ошибка java.lang.RuntimeException: java.io.IOException: User limit of inotify instances reached or too many open files, нужно написать в поддержку, прикрепив идентификатор сервера из личного кабинета, предоставив скриншот консоли с данной ошибкой.

Can't keep up!

Предупреждение [Server thread/WARN]: Can't keep up! Is the server overloaded? Running 3578ms or 71 ticks behind не является ошибкой, но указывает на то, что процессор не успевает обрабатывать тики на сервере из-за нагрузки на локацию, или из-за слишком требовательной сборки модов/плагинов. В таком случае оптимизируйте сервер.

Если проблема не решится, напишите в поддержку, прикрепив идентификатор сервера из личного кабинета, чтобы перености сервер на другую локацию или тарифную линейку.