Как установить сервер Minecraft на Raspberry Pi

Raspberry Pi можно использовать во многих различных проектах. Один из самых популярных вариантов использования Raspberry Pi — превратить Raspberry Pi в игровой сервер.

В этом руководстве мы проведем вас через процесс установки и настройки сервера Minecraft на Raspberry Pi 3 или 4.

Minecraft — одна из самых популярных игр всех времен. Это видеоигра-песочница, которая позволяет игрокам исследовать бесконечные миры и строить все, от простых домов до огромных небоскребов.

Подготовка

Мы предполагаем, что на Raspberry Pi установлен Raspbian . Plex Media Server не нуждается в графическом интерфейсе, поэтому мы рекомендуем использовать образ Raspbian Stretch Lite и включить SSH . Таким образом, у вашего Raspberry Pi будет гораздо больше доступной вычислительной мощности и памяти для запуска медиасервера Plex.

Мы будем использовать утилиту mcrcon для подключения к серверу Minecraft. Установите пакеты, необходимые для сборки инструмента mcrcon :

sudo apt updatesudo apt install git build-essential

Включите драйвер GL с помощью инструмента raspi-config :

raspi-config
  1. Перейдите к «Advanced Options» с помощью клавиши вверх или вниз и нажмите Enter .
  2. Выберите «Драйвер GL» и нажмите Enter .
  3. Выберите «GL (Fake KMS)» и нажмите Enter .
  4. Выберите кнопку «Готово», нажмите Enter . Когда будет предложено «Перезагрузиться сейчас?» выберите «Да» и нажмите Enter .

Как только Pi снова подключится к сети, переходите к следующим шагам.

Установка среды выполнения Java

Minecraft требует, чтобы в системе была установлена Java 8 или выше.

Мы установим безголовую версию JRE. Эта версия больше подходит для серверных приложений, поскольку у нее меньше зависимостей и меньше системных ресурсов.

Чтобы установить безголовый OpenJRE 8, введите:

sudo apt install openjdk-8-jre-headless

Проверьте установку, распечатав версию Java :

java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b01-1+rpi1-b01)
OpenJDK Client VM (build 25.212-b01, mixed mode)

Создание пользователя Minecraft

В целях безопасности Minecraft не следует запускать от имени пользователя root. Мы создадим нового системного пользователя и группу с домашним каталогом /opt/minecraft который будет запускать сервер Minecraft:

sudo useradd -r -m -U -d /opt/minecraft -s /bin/bash minecraft

Мы не собираемся устанавливать пароль для этого пользователя. Это хорошая практика безопасности, потому что пользователь не сможет войти через SSH.

Установка Minecraft на Raspberry Pi

Перед тем, как начать процесс установки, убедитесь, что вы переключились на пользователя minecraft:

sudo su - minecraft

Создайте два каталога внутри домашнего каталога пользователя:

mkdir -p ~/{tools,server}
  • В каталоге tools будут храниться клиент mcrcon и сценарий резервного копирования.
  • Каталог server будет содержать фактический сервер Minecraft и его данные.

Скачивание и компиляция mcrcon

RCON — это протокол, который позволяет подключаться к серверам Minecraft и выполнять команды. mcron — это клиент RCON, встроенный в C.

Мы mcrcon исходный код с GitHub и mcrcon двоичный файл mcrcon .

Перейдите в каталог ~/tools и Tiiffi/mcrcon репозиторий Tiiffi/mcrcon из GitHub, выполнив следующую команду:

cd ~/tools && git clone https://github.com/Tiiffi/mcrcon.git

Затем перейдите в каталог репозитория:

cd ~/tools/mcrcon

Начните компиляцию, набрав:

gcc -std=gnu11 -pedantic -Wall -Wextra -O2 -s -o mcrcon mcrcon.c

После завершения вы можете протестировать его, набрав:

./mcrcon -h

Результат будет выглядеть примерно так:

Usage: mcrcon [OPTIONS]... [COMMANDS]...
Sends rcon commands to Minecraft server.

...

mcrcon 0.6.1 (built: Sep 19 2019 20:52:13)
Report bugs to tiiffi_at_gmail_dot_com or https://github.com/Tiiffi/mcrcon/issues/

Скачивание сервера Minecraft

Существует несколько модов для серверов Minecraft, таких как Craftbukkit или Spigot, которые позволяют добавлять функции (плагины) на ваш сервер и дополнительно настраивать и настраивать параметры. Мы установим последний официальный ванильный сервер Minecraft от Mojang.

Перейдите на страницу загрузки Minecraft, чтобы получить ссылку для загрузки последней версии файла архива Java (JAR) сервера Minecraft.

На момент написания последней версии была 1.14.4 . Перед запуском следующей команды вы должны проверить страницу загрузки на наличие новой версии.

Выполните следующую команду wget чтобы загрузить файл jar Minecraft в каталог ~/server :

wget https://launcher.mojang.com/v1/objects/3dc3d84a581f14691199cf6831b71ed1296a9fdf/server.jar -P ~/server

Настройка Сервера Майнкрафт

После завершения загрузки перейдите в каталог ~/server и запустите сервер Minecraft:

cd ~/serverjava -Xms512M -Xmx768M -jar server.jar nogui

При первом запуске сервер выполняет некоторые операции, создает файлы server.properties и eula.txt и останавливается.

[21:06:23] [main/ERROR]: Failed to load properties from file: server.properties
[21:06:24] [main/WARN]: Failed to load eula.txt
[21:06:24] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

Чтобы запустить сервер, вам необходимо принять лицензионное соглашение Minecraft EULA. Откройте файл eula.txt и замените eula=false на eula=true :

nano ~/server/eula.txt
~/server/eula.txt
#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
#Thu Sep 19 21:06:24 BST 2019
eula=true

Закройте и сохраните файл.

Затем отредактируйте файл server.properties чтобы включить протокол rcon, и установите пароль rcon. Откройте файл в текстовом редакторе:

nano ~/server/server.properties

Найдите следующие строки и обновите их значения, как показано ниже:

~/server/server.properties
rcon.port=25575
rcon.password=strong-password
enable-rcon=true
Не забудьте сменить надежный strong-password на более безопасный. Если вы не хотите подключаться к серверу Minecraft из удаленных мест, убедитесь, что ваш брандмауэр блокирует порт rcon.

Здесь вы также можете настроить свойства сервера по умолчанию. Для получения дополнительной информации о доступных настройках посетите страницу server.properties .

Создание файла модуля Systemd

Чтобы запустить Minecraft как службу, мы создадим новый файл модуля Systemd.

Вернитесь к своему пользователю sudo, набрав exit .

Откройте текстовый редактор и создайте файл с именем minecraft.service в каталоге /etc/systemd/system/ :

sudo nano /etc/systemd/system/minecraft.service

Вставьте следующую конфигурацию:

/etc/systemd/system/minecraft.service
[Unit]
Description=Minecraft Server
After=network.target

[Service]
User=minecraft
Nice=1
KillMode=none
SuccessExitStatus=0 1
ProtectHome=true
ProtectSystem=full
PrivateDevices=true
NoNewPrivileges=true
WorkingDirectory=/opt/minecraft/server
ExecStart=/usr/bin/java -Xmx768M -Xms512M -jar server.jar nogui
ExecStop=/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p strong-password stop

[Install]
WantedBy=multi-user.target

Измените флаги Xmx и Xms соответствии с вашей версией Raspberry Pi и ресурсами. Флаг Xmx определяет максимальный пул распределения памяти для виртуальной машины Java (JVM), а Xms определяет начальный пул распределения памяти. Также убедитесь, что вы используете правильный порт rcon и пароль.

Сохраните и закройте файл и перезагрузите конфигурацию systemd:

sudo systemctl daemon-reload

Запустите сервер Minecraft, выполнив:

sudo systemctl start minecraft

Проверьте статус службы с помощью следующей команды:

sudo systemctl status minecraft
● minecraft.service - Minecraft Server
   Loaded: loaded (/etc/systemd/system/minecraft.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-09-19 21:11:58 BST; 1min 27s ago
 Main PID: 1992 (java)
    Tasks: 17 (limit: 1604)
   Memory: 338.9M
   CGroup: /system.slice/minecraft.service
           └─1992 /usr/bin/java -Xmx768M -Xms512M -jar server.jar nogui

При первом запуске службы она сгенерирует несколько файлов конфигурации и каталогов, включая мир Minecraft. Используйте команду tail для отслеживания файла журнала сервера:

tail -f /opt/minecraft/server/logs/latest.log

После запуска сервера Minecraft результат будет выглядеть примерно так:

[21:19:25] [Server-Worker-3/INFO]: Preparing spawn area: 98%
[21:19:25] [Server thread/INFO]: Time elapsed: 201586 ms
[21:19:25] [Server thread/INFO]: Done (418.339s)! For help, type "help"
[21:19:25] [Server thread/INFO]: Starting remote control listener
[21:19:25] [RCON Listener #1/INFO]: RCON running on 0.0.0.0:25575

Включите автоматический запуск службы Minecraft во время загрузки:

sudo systemctl enable minecraft

Доступ к консоли Minecraft

Для доступа к консоли Minecraft используйте утилиту mcrcon . Вам необходимо указать хост, порт rcon, пароль rcon и использовать переключатель -t который включает mcrcon терминала mcrcon :

/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p strong-password -t
Logged in. Type "Q" to quit!
> 

При доступе к консоли Minecraft из удаленного места убедитесь, что порт rcon не заблокирован.

Если вы регулярно подключаетесь к консоли Minecraft, вместо того, чтобы вводить эту длинную команду, вам следует создать псевдоним bash .

Выводы

Вы успешно установили сервер Minecraft на свой Raspberry Pi. Обратите внимание, что Minecraft может работать некорректно на системах с ограниченными ресурсами.

Если вы столкнулись с проблемой или хотите оставить отзыв, оставьте комментарий ниже.

Оставьте комментарий