Установка сервера Quake 3 на Linux
09.09.2022Установка Unreal Tournament 2004 на Ubuntu Server 22.04
02.10.2022Это руководство по настройке выделенного сервера Minecraft 1.19.2 в Linux. Он будет работать практически с любым вариантом Linux с небольшими изменениями или без них.
Этот сервер будет автоматически запускать игру и иметь доступ к удаленному администрированию через rcon.
Понадобится:
- Клиент: Файлы
- M server, можно скачать тут: файл.jar
- Любой современный дистрибутив Linux, я использую Ubuntu 20.04.3
- При установке был создан пользователь minecraft
- Рекомендуется 4 ГБ ОЗУ.
Содержание
- Установка сервера Minecraft 1.19.2 на Linux с на Ubuntu 20.04.3
- Создание пользователя Minecraft
- Установка Minecraft на Ubuntu
- Скачивание и компиляция mcrcon
- Скачивание Server Minecraft
- Настройка Server Minecraft
- Создание файла модуля Systemd
- Настройка брандмауэра
- Настройка резервного копирования
- Доступ к консоли Minecraft
- Выводы
Установка сервера Minecraft 1.19.2 на Linux с на Ubuntu 20.04.3
Подготовка
Для начала необходимо заказать сервер с перечисленными параметрами. Рекомендуем сделать тут: Заказать VPS. В качестве операционной системы используем Debian (или Ubuntu). На дистрибутивах Linux игровые серверы будут работать быстрее, чем на Windows (в подавляющем большинстве случаев все серверы работают на Linux из за его стабильности и меньшем потреблении ресурсов, по сравнения с Windows).
После покупки сервера Вы получите доступы к серверу: логин (root) и пароль. Зайдите на сервер через ssh. Если работаете на windows, то используйте клиент PuTTY. Если вы работаете на дистрибутивах Linux, то откройте консоль и используйте команду «ssh root@ip_адрес_сервера«, чтобы подключиться к серверу с логином root.
После получения доступа к серверу необходимо первым делом выполнить команду для обновления уже установленного программного обеспечения от лица root пользователя и добавить стандартные пакеты:
sudo apt update
sudo apt install git build-essential
Установка среды Java
sudo apt install openjdk-17-jre-headless
Проверьте установку
java -version
openjdk version "17.0.4" 2022-07-19
OpenJDK Runtime Environment (build 17.0.4+8-Ubuntu-120.04)
OpenJDK 64-Bit Server VM (build 17.0.4+8-Ubuntu-120.04, mixed mode, sharing)
Создание пользователя Minecraft
sudo useradd -r -m -U -d /opt/minecraft -s /bin/bash minecraft
Установка Minecraft на Ubuntu
sudo su - minecraft
mkdir -p ~/{backups,tools,server}
- В каталоге backups будут храниться резервные копии вашего сервера Minecraft.
- Каталог tools будет содержать клиент mcrcon и скрипт резервного копирования.
- Каталог server будет содержать фактический сервер Minecraft.
Скачивание и компиляция mcrcon
git clone https://github.com/Tiiffi/mcrcon.git ~/tools/mcrcon
cd ~/tools/mcrcon
gcc -std=gnu11 -pedantic -Wall -Wextra -O2 -s -o mcrcon mcrcon.c
Проверьте установку
./mcrcon -v
mcrcon 0.7.2 (built: Sep 13 2022 19:27:19) - https://github.com/Tiiffi/mcrcon
Bug reports:
tiiffi+mcrcon at gmail
https://github.com/Tiiffi/mcrcon/issues/
Скачивание Server Minecraft
wget https://download.getbukkit.org/craftbukkit/craftbukkit-1.19.2.jar -P ~/server
Настройка Server Minecraft
cd ~/server
java -Xmx1024M -Xms1024M -jar craftbukkit-1.19.2.jar nogui
[17:35:14] [main/ERROR]: Failed to load properties from file: server.properties
[17:35:15] [main/WARN]: Failed to load eula.txt
[17:35:15] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
Соглашаемся с лицензионным соглашением Minecraft, . Откройте файл eula.txt и замените eula=false на eula=true :
nano ~/server/eula.txt
Закройте и сохраните файл.
Затем откройте файл server.properties включите протокол rcon и установите пароль rcon:
nano ~/server/server.properties
rcon.port=25575
rcon.password=password
enable-rcon=true
Создание файла модуля Systemd
exit
sudo nano /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 -Xmx4096M -Xms1024M -jar craftbukkit-1.19.2.jar nogui
ExecStop=/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p password stop
[Install]
WantedBy=multi-user.target
Измените флаги Xmx и Xms соответствии с ресурсами вашего сервера. Флаг Xmx определяет максимальный пул распределения памяти для виртуальной машины Java (JVM), а Xms определяет начальный пул распределения памяти. Также убедитесь, что вы используете правильный порт rcon и пароль.
sudo systemctl daemon-reload
sudo systemctl start minecraft
Проверьте установку
sudo systemctl status minecraft
● minecraft.service - Minecraft Server
Loaded: loaded (/etc/systemd/system/minecraft.service; enabled; vendor preset: ena>
Active: active (running) since Mon 2022-09-26 11:21:28 UTC; 7h ago
Main PID: 692 (java)
Tasks: 21 (limit: 988)
Memory: 1.9G
CGroup: /system.slice/minecraft.service
└─692 /usr/bin/java -Xmx4096M -Xms1024M -jar craftbukkit-1.19.2.jar nogui
sudo systemctl enable minecraft
Настройка брандмауэра
sudo ufw allow 25565/tcp
Настройка резервного копирования
sudo su - minecraft
nano /opt/minecraft/tools/backup.sh
#!/bin/bash
function rcon {
/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p password "$1"
}
rcon "save-off"
rcon "save-all"
tar -cvpzf /opt/minecraft/backups/server-$(date +%F-%H-%M).tar.gz /opt/minecraft/server
rcon "save-on"
## Delete older backups
find /opt/minecraft/backups/ -type f -mtime +7 -name '*.gz' -delete
chmod +x /opt/minecraft/tools/backup.sh
crontab -e
0 23 * * * /opt/minecraft/tools/backup.sh
Доступ к консоли Minecraft
/opt/minecraft/tools/mcrcon/mcrcon -H 127.0.0.1 -P 25575 -p password -t
exit
Выводы
Создали сервер Minecraft на Ubuntu 20.04.3 и настроили ежедневное резервное копирование.
Теперь можем запустить клиент Minecraft и подключиться к серверу в Minecraft.