Установка и настройка Minecraft Bedrock сервера — различия между версиями
Admin (обсуждение | вклад) (Новая страница: «= Установка и настройка Minecraft Bedrock сервера = == 1. Подготовка системы == * Войдите в систему п…») |
Admin (обсуждение | вклад) |
||
Строка 7: | Строка 7: | ||
* Рекомендуется использовать Ubuntu 24.04 LTS для стабильной работы. | * Рекомендуется использовать Ubuntu 24.04 LTS для стабильной работы. | ||
− | == 2. Установка зависимостей | + | == 2. Установка зависимостей == |
=== Обновление системы === | === Обновление системы === | ||
1. Обновите систему: | 1. Обновите систему: | ||
− | < | + | <pre>sudo apt update</pre> |
− | < | + | <pre>sudo apt upgrade -y</pre> |
2. Установите необходимые пакеты: | 2. Установите необходимые пакеты: | ||
− | < | + | <pre>sudo apt install -y wget curl unzip screen htop</pre> |
=== Установка дополнительных пакетов === | === Установка дополнительных пакетов === | ||
1. Установите пакеты для Bedrock сервера: | 1. Установите пакеты для Bedrock сервера: | ||
− | < | + | <pre>sudo apt install -y libcurl4-openssl-dev libssl-dev</pre> |
2. Установите пакеты для компиляции: | 2. Установите пакеты для компиляции: | ||
− | < | + | <pre>sudo apt install -y build-essential cmake</pre> |
− | == 3. Создание пользователя для Bedrock | + | == 3. Создание пользователя для Bedrock == |
=== Создание пользователя === | === Создание пользователя === | ||
1. Создайте пользователя bedrock: | 1. Создайте пользователя bedrock: | ||
− | < | + | <pre>sudo useradd -m -s /bin/bash bedrock</pre> |
2. Установите пароль: | 2. Установите пароль: | ||
− | < | + | <pre>sudo passwd bedrock</pre> |
3. Добавьте пользователя в группу sudo: | 3. Добавьте пользователя в группу sudo: | ||
− | < | + | <pre>sudo usermod -aG sudo bedrock</pre> |
=== Настройка директорий === | === Настройка директорий === | ||
1. Создайте директорию для Bedrock сервера: | 1. Создайте директорию для Bedrock сервера: | ||
− | < | + | <pre>sudo mkdir -p /opt/bedrock</pre> |
2. Установите права доступа: | 2. Установите права доступа: | ||
− | < | + | <pre>sudo chown -R bedrock:bedrock /opt/bedrock</pre> |
3. Переключитесь на пользователя bedrock: | 3. Переключитесь на пользователя bedrock: | ||
− | < | + | <pre>sudo su - bedrock</pre> |
− | == 4. Установка Bedrock сервера | + | == 4. Установка Bedrock сервера == |
=== Скачивание сервера === | === Скачивание сервера === | ||
1. Перейдите в директорию Bedrock: | 1. Перейдите в директорию Bedrock: | ||
− | < | + | <pre>cd /opt/bedrock</pre> |
2. Скачайте последнюю версию Bedrock сервера: | 2. Скачайте последнюю версию Bedrock сервера: | ||
− | < | + | <pre>wget https://minecraft.azureedge.net/bin-linux/bedrock-server-1.20.15.01.zip</pre> |
3. Распакуйте архив: | 3. Распакуйте архив: | ||
− | < | + | <pre>unzip bedrock-server-1.20.15.01.zip</pre> |
4. Удалите архив: | 4. Удалите архив: | ||
− | < | + | <pre>rm bedrock-server-1.20.15.01.zip</pre> |
=== Настройка прав доступа === | === Настройка прав доступа === | ||
1. Установите права на исполнение: | 1. Установите права на исполнение: | ||
− | < | + | <pre>chmod +x bedrock_server</pre> |
2. Установите права на файлы: | 2. Установите права на файлы: | ||
− | < | + | <pre>chmod 644 *.json *.properties</pre> |
− | == 5. Настройка конфигурации | + | == 5. Настройка конфигурации == |
=== Базовая конфигурация === | === Базовая конфигурация === | ||
1. Отредактируйте server.properties: | 1. Отредактируйте server.properties: | ||
− | < | + | <pre>nano server.properties</pre> |
2. Настройте основные параметры: | 2. Настройте основные параметры: | ||
− | < | + | <pre>\# Bedrock Server Configuration |
− | # Основные настройки | + | \# Основные настройки |
server-name=Dedicated Server | server-name=Dedicated Server | ||
gamemode=survival | gamemode=survival | ||
Строка 110: | Строка 110: | ||
correct-player-movement=false | correct-player-movement=false | ||
server-authoritative-block-breaking=false | server-authoritative-block-breaking=false | ||
− | </ | + | </pre> |
=== Настройка permissions.json === | === Настройка permissions.json === | ||
1. Отредактируйте permissions.json: | 1. Отредактируйте permissions.json: | ||
− | < | + | <pre>nano permissions.json</pre> |
2. Настройте права доступа: | 2. Настройте права доступа: | ||
− | < | + | <pre>[ |
{ | { | ||
"permission": "operator", | "permission": "operator", | ||
Строка 124: | Строка 124: | ||
} | } | ||
] | ] | ||
− | </ | + | </pre> |
=== Настройка allowlist.json === | === Настройка allowlist.json === | ||
1. Отредактируйте allowlist.json: | 1. Отредактируйте allowlist.json: | ||
− | < | + | <pre>nano allowlist.json</pre> |
2. Настройте белый список: | 2. Настройте белый список: | ||
− | < | + | <pre>[ |
{ | { | ||
"name": "PlayerName", | "name": "PlayerName", | ||
Строка 138: | Строка 138: | ||
} | } | ||
] | ] | ||
− | </ | + | </pre> |
− | == 6. Создание скрипта запуска | + | == 6. Создание скрипта запуска == |
=== Создание скрипта === | === Создание скрипта === | ||
1. Создайте скрипт запуска: | 1. Создайте скрипт запуска: | ||
− | < | + | <pre>nano start-bedrock.sh</pre> |
2. Добавьте содержимое: | 2. Добавьте содержимое: | ||
− | < | + | <pre>\#!/bin/bash |
− | # Настройки сервера | + | \# Настройки сервера |
SERVER_DIR="/opt/bedrock" | SERVER_DIR="/opt/bedrock" | ||
SCREEN_NAME="minecraft-bedrock" | SCREEN_NAME="minecraft-bedrock" | ||
− | # Переход в директорию сервера | + | \# Переход в директорию сервера |
cd $SERVER_DIR | cd $SERVER_DIR | ||
− | # Проверка запущенного сервера | + | \# Проверка запущенного сервера |
if screen -list | grep -q "$SCREEN_NAME"; then | if screen -list | grep -q "$SCREEN_NAME"; then | ||
echo "Bedrock сервер уже запущен!" | echo "Bedrock сервер уже запущен!" | ||
Строка 163: | Строка 163: | ||
fi | fi | ||
− | # Запуск сервера | + | \# Запуск сервера |
echo "Запуск Minecraft Bedrock сервера..." | echo "Запуск Minecraft Bedrock сервера..." | ||
screen -dmS $SCREEN_NAME ./bedrock_server | screen -dmS $SCREEN_NAME ./bedrock_server | ||
Строка 169: | Строка 169: | ||
echo "Bedrock сервер запущен в screen сессии: $SCREEN_NAME" | echo "Bedrock сервер запущен в screen сессии: $SCREEN_NAME" | ||
echo "Для подключения к консоли используйте: screen -r $SCREEN_NAME" | echo "Для подключения к консоли используйте: screen -r $SCREEN_NAME" | ||
− | </ | + | </pre> |
3. Сделайте скрипт исполняемым: | 3. Сделайте скрипт исполняемым: | ||
− | < | + | <pre>chmod +x start-bedrock.sh</pre> |
=== Создание скрипта остановки === | === Создание скрипта остановки === | ||
1. Создайте скрипт остановки: | 1. Создайте скрипт остановки: | ||
− | < | + | <pre>nano stop-bedrock.sh</pre> |
2. Добавьте содержимое: | 2. Добавьте содержимое: | ||
− | < | + | <pre>\#!/bin/bash |
SCREEN_NAME="minecraft-bedrock" | SCREEN_NAME="minecraft-bedrock" | ||
− | # Проверка запущенного сервера | + | \# Проверка запущенного сервера |
if ! screen -list | grep -q "$SCREEN_NAME"; then | if ! screen -list | grep -q "$SCREEN_NAME"; then | ||
echo "Bedrock сервер не запущен!" | echo "Bedrock сервер не запущен!" | ||
Строка 192: | Строка 192: | ||
echo "Остановка Minecraft Bedrock сервера..." | echo "Остановка Minecraft Bedrock сервера..." | ||
− | # Отправка команды остановки | + | \# Отправка команды остановки |
screen -S $SCREEN_NAME -X stuff "stop$(printf \\r)" | screen -S $SCREEN_NAME -X stuff "stop$(printf \\r)" | ||
− | # Ожидание остановки | + | \# Ожидание остановки |
sleep 10 | sleep 10 | ||
− | # Принудительная остановка если нужно | + | \# Принудительная остановка если нужно |
if screen -list | grep -q "$SCREEN_NAME"; then | if screen -list | grep -q "$SCREEN_NAME"; then | ||
echo "Принудительная остановка сервера..." | echo "Принудительная остановка сервера..." | ||
Строка 205: | Строка 205: | ||
echo "Bedrock сервер остановлен" | echo "Bedrock сервер остановлен" | ||
− | </ | + | </pre> |
3. Сделайте скрипт исполняемым: | 3. Сделайте скрипт исполняемым: | ||
− | < | + | <pre>chmod +x stop-bedrock.sh</pre> |
− | == 7. Настройка systemd сервиса | + | == 7. Настройка systemd сервиса == |
=== Создание сервиса === | === Создание сервиса === | ||
1. Выйдите из пользователя bedrock: | 1. Выйдите из пользователя bedrock: | ||
− | < | + | <pre>exit</pre> |
2. Создайте systemd сервис: | 2. Создайте systemd сервис: | ||
− | < | + | <pre>sudo nano /etc/systemd/system/minecraft-bedrock.service</pre> |
3. Добавьте конфигурацию: | 3. Добавьте конфигурацию: | ||
− | < | + | <pre>[Unit] |
Description=Minecraft Bedrock Server | Description=Minecraft Bedrock Server | ||
After=network.target | After=network.target | ||
Строка 237: | Строка 237: | ||
[Install] | [Install] | ||
WantedBy=multi-user.target | WantedBy=multi-user.target | ||
− | </ | + | </pre> |
=== Запуск сервиса === | === Запуск сервиса === | ||
1. Перезагрузите systemd: | 1. Перезагрузите systemd: | ||
− | < | + | <pre>sudo systemctl daemon-reload</pre> |
2. Включите автозапуск: | 2. Включите автозапуск: | ||
− | < | + | <pre>sudo systemctl enable minecraft-bedrock</pre> |
3. Запустите сервис: | 3. Запустите сервис: | ||
− | < | + | <pre>sudo systemctl start minecraft-bedrock</pre> |
4. Проверьте статус: | 4. Проверьте статус: | ||
− | < | + | <pre>sudo systemctl status minecraft-bedrock</pre> |
− | == 8. Настройка файрвола | + | == 8. Настройка файрвола == |
=== Настройка UFW === | === Настройка UFW === | ||
1. Установите UFW: | 1. Установите UFW: | ||
− | < | + | <pre>sudo apt install -y ufw</pre> |
2. Настройте правила: | 2. Настройте правила: | ||
− | < | + | <pre>sudo ufw allow 22/tcp</pre> |
− | < | + | <pre>sudo ufw allow 19132/udp</pre> |
− | < | + | <pre>sudo ufw allow 19133/udp</pre> |
− | < | + | <pre>sudo ufw enable</pre> |
3. Проверьте статус: | 3. Проверьте статус: | ||
− | < | + | <pre>sudo ufw status</pre> |
=== Настройка iptables === | === Настройка iptables === | ||
1. Настройте iptables для UDP: | 1. Настройте iptables для UDP: | ||
− | < | + | <pre>sudo iptables -A INPUT -p udp --dport 19132 -j ACCEPT</pre> |
− | < | + | <pre>sudo iptables -A INPUT -p udp --dport 19133 -j ACCEPT</pre> |
2. Сохраните правила: | 2. Сохраните правила: | ||
− | < | + | <pre>sudo iptables-save > /etc/iptables/rules.v4</pre> |
− | == 9. Мониторинг и диагностика | + | == 9. Мониторинг и диагностика == |
=== Создание скрипта мониторинга === | === Создание скрипта мониторинга === | ||
1. Создайте скрипт мониторинга: | 1. Создайте скрипт мониторинга: | ||
− | < | + | <pre>sudo nano /usr/local/bin/bedrock-monitor.sh</pre> |
2. Добавьте содержимое: | 2. Добавьте содержимое: | ||
− | < | + | <pre>\#!/bin/bash |
− | # Проверка статуса Bedrock сервера | + | \# Проверка статуса Bedrock сервера |
if ! systemctl is-active --quiet minecraft-bedrock; then | if ! systemctl is-active --quiet minecraft-bedrock; then | ||
echo "Bedrock сервер не запущен!" | mail -s "Bedrock Alert" admin@example.com | echo "Bedrock сервер не запущен!" | mail -s "Bedrock Alert" admin@example.com | ||
fi | fi | ||
− | # Проверка использования памяти | + | \# Проверка использования памяти |
MEMORY_USAGE=$(ps aux | grep bedrock_server | grep -v grep | awk '{print $4}') | MEMORY_USAGE=$(ps aux | grep bedrock_server | grep -v grep | awk '{print $4}') | ||
if [ ! -z "$MEMORY_USAGE" ] && [ $(echo "$MEMORY_USAGE > 80" | bc) -eq 1 ]; then | if [ ! -z "$MEMORY_USAGE" ] && [ $(echo "$MEMORY_USAGE > 80" | bc) -eq 1 ]; then | ||
Строка 299: | Строка 299: | ||
fi | fi | ||
− | # Проверка доступности порта | + | \# Проверка доступности порта |
if ! nc -u -z localhost 19132; then | if ! nc -u -z localhost 19132; then | ||
echo "Bedrock сервер не отвечает на порту 19132!" | mail -s "Bedrock Alert" admin@example.com | echo "Bedrock сервер не отвечает на порту 19132!" | mail -s "Bedrock Alert" admin@example.com | ||
fi | fi | ||
− | </ | + | </pre> |
3. Сделайте скрипт исполняемым: | 3. Сделайте скрипт исполняемым: | ||
− | < | + | <pre>sudo chmod +x /usr/local/bin/bedrock-monitor.sh</pre> |
4. Добавьте в crontab: | 4. Добавьте в crontab: | ||
− | < | + | <pre>sudo crontab -e</pre> |
5. Добавьте задачу: | 5. Добавьте задачу: | ||
− | < | + | <pre>*/5 * * * * /usr/local/bin/bedrock-monitor.sh</pre> |
− | == 10. Резервное копирование | + | == 10. Резервное копирование == |
=== Создание скрипта резервного копирования === | === Создание скрипта резервного копирования === | ||
1. Создайте скрипт резервного копирования: | 1. Создайте скрипт резервного копирования: | ||
− | < | + | <pre>sudo nano /usr/local/bin/bedrock-backup.sh</pre> |
2. Добавьте содержимое: | 2. Добавьте содержимое: | ||
− | < | + | <pre>\#!/bin/bash |
BACKUP_DIR="/backup/bedrock" | BACKUP_DIR="/backup/bedrock" | ||
Строка 328: | Строка 328: | ||
SERVER_DIR="/opt/bedrock" | SERVER_DIR="/opt/bedrock" | ||
− | # Создание директории для бэкапа | + | \# Создание директории для бэкапа |
mkdir -p $BACKUP_DIR | mkdir -p $BACKUP_DIR | ||
− | # Остановка Bedrock сервера для бэкапа | + | \# Остановка Bedrock сервера для бэкапа |
systemctl stop minecraft-bedrock | systemctl stop minecraft-bedrock | ||
− | # Создание архива | + | \# Создание архива |
tar -czf $BACKUP_DIR/bedrock-backup-$DATE.tar.gz -C $SERVER_DIR . | tar -czf $BACKUP_DIR/bedrock-backup-$DATE.tar.gz -C $SERVER_DIR . | ||
− | # Запуск Bedrock сервера | + | \# Запуск Bedrock сервера |
systemctl start minecraft-bedrock | systemctl start minecraft-bedrock | ||
− | # Удаление старых бэкапов (старше 7 дней) | + | \# Удаление старых бэкапов (старше 7 дней) |
find $BACKUP_DIR -name "bedrock-backup-*" -mtime +7 -delete | find $BACKUP_DIR -name "bedrock-backup-*" -mtime +7 -delete | ||
echo "Bedrock backup completed: $DATE" | echo "Bedrock backup completed: $DATE" | ||
− | </ | + | </pre> |
3. Сделайте скрипт исполняемым: | 3. Сделайте скрипт исполняемым: | ||
− | < | + | <pre>sudo chmod +x /usr/local/bin/bedrock-backup.sh</pre> |
4. Добавьте в crontab: | 4. Добавьте в crontab: | ||
− | < | + | <pre>sudo crontab -e</pre> |
5. Добавьте задачу: | 5. Добавьте задачу: | ||
− | < | + | <pre>0 3 * * * /usr/local/bin/bedrock-backup.sh</pre> |
− | == 11. Настройка плагинов (если поддерживается) | + | == 11. Настройка плагинов (если поддерживается) == |
=== Установка Geyser (для совместимости с Java) === | === Установка Geyser (для совместимости с Java) === | ||
1. Скачайте Geyser: | 1. Скачайте Geyser: | ||
− | < | + | <pre>cd /opt/bedrock</pre> |
− | < | + | <pre>wget https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/download/spigot</pre> |
2. Переименуйте файл: | 2. Переименуйте файл: | ||
− | < | + | <pre>mv geyser-spigot.jar geyser.jar</pre> |
=== Настройка Floodgate === | === Настройка Floodgate === | ||
1. Скачайте Floodgate: | 1. Скачайте Floodgate: | ||
− | < | + | <pre>wget https://download.geysermc.org/v2/projects/floodgate/versions/latest/builds/latest/download/spigot</pre> |
2. Переименуйте файл: | 2. Переименуйте файл: | ||
− | < | + | <pre>mv floodgate-spigot.jar floodgate.jar</pre> |
− | == 12. Устранение неполадок | + | == 12. Устранение неполадок == |
=== Частые проблемы === | === Частые проблемы === | ||
1. '''Bedrock сервер не запускается''': | 1. '''Bedrock сервер не запускается''': | ||
− | * Проверьте статус: < | + | * Проверьте статус: <pre>sudo systemctl status minecraft-bedrock</pre> |
− | * Проверьте логи: < | + | * Проверьте логи: <pre>sudo journalctl -u minecraft-bedrock</pre> |
* Проверьте права доступа к файлам | * Проверьте права доступа к файлам | ||
Строка 396: | Строка 396: | ||
1. '''Проверка статуса сервера''': | 1. '''Проверка статуса сервера''': | ||
− | < | + | <pre>sudo systemctl status minecraft-bedrock</pre> |
2. '''Проверка логов''': | 2. '''Проверка логов''': | ||
− | < | + | <pre>sudo journalctl -u minecraft-bedrock -f</pre> |
3. '''Проверка портов''': | 3. '''Проверка портов''': | ||
− | < | + | <pre>sudo netstat -ulnp | grep :19132</pre> |
4. '''Проверка использования ресурсов''': | 4. '''Проверка использования ресурсов''': | ||
− | < | + | <pre>htop</pre> |
− | < | + | <pre>free -h</pre> |
− | < | + | <pre>df -h</pre> |
5. '''Тестирование подключения''': | 5. '''Тестирование подключения''': | ||
− | < | + | <pre>nc -u -z localhost 19132</pre> |
== Заключение == | == Заключение == |
Текущая версия на 10:43, 15 октября 2025
Содержание
- 1 Установка и настройка Minecraft Bedrock сервера
- 1.1 1. Подготовка системы
- 1.2 2. Установка зависимостей
- 1.3 3. Создание пользователя для Bedrock
- 1.4 4. Установка Bedrock сервера
- 1.5 5. Настройка конфигурации
- 1.6 6. Создание скрипта запуска
- 1.7 7. Настройка systemd сервиса
- 1.8 8. Настройка файрвола
- 1.9 9. Мониторинг и диагностика
- 1.10 10. Резервное копирование
- 1.11 11. Настройка плагинов (если поддерживается)
- 1.12 12. Устранение неполадок
- 1.13 Заключение
Установка и настройка Minecraft Bedrock сервера
1. Подготовка системы
- Войдите в систему под учетной записью с правами root или пользователя с правами sudo.
- Убедитесь, что у вас есть доступ к серверу через SSH или консоль.
- Рекомендуется использовать Ubuntu 24.04 LTS для стабильной работы.
2. Установка зависимостей
Обновление системы
1. Обновите систему:
sudo apt update
sudo apt upgrade -y
2. Установите необходимые пакеты:
sudo apt install -y wget curl unzip screen htop
Установка дополнительных пакетов
1. Установите пакеты для Bedrock сервера:
sudo apt install -y libcurl4-openssl-dev libssl-dev
2. Установите пакеты для компиляции:
sudo apt install -y build-essential cmake
3. Создание пользователя для Bedrock
Создание пользователя
1. Создайте пользователя bedrock:
sudo useradd -m -s /bin/bash bedrock
2. Установите пароль:
sudo passwd bedrock
3. Добавьте пользователя в группу sudo:
sudo usermod -aG sudo bedrock
Настройка директорий
1. Создайте директорию для Bedrock сервера:
sudo mkdir -p /opt/bedrock
2. Установите права доступа:
sudo chown -R bedrock:bedrock /opt/bedrock
3. Переключитесь на пользователя bedrock:
sudo su - bedrock
4. Установка Bedrock сервера
Скачивание сервера
1. Перейдите в директорию Bedrock:
cd /opt/bedrock
2. Скачайте последнюю версию Bedrock сервера:
wget https://minecraft.azureedge.net/bin-linux/bedrock-server-1.20.15.01.zip
3. Распакуйте архив:
unzip bedrock-server-1.20.15.01.zip
4. Удалите архив:
rm bedrock-server-1.20.15.01.zip
Настройка прав доступа
1. Установите права на исполнение:
chmod +x bedrock_server
2. Установите права на файлы:
chmod 644 *.json *.properties
5. Настройка конфигурации
Базовая конфигурация
1. Отредактируйте server.properties:
nano server.properties
2. Настройте основные параметры:
\# Bedrock Server Configuration \# Основные настройки server-name=Dedicated Server gamemode=survival difficulty=normal allow-cheats=false max-players=10 online-mode=true white-list=false server-port=19132 server-portv6=19133 view-distance=32 tick-distance=4 player-idle-timeout=30 max-threads=8 level-name=Bedrock level level-seed= default-player-permission-level=member texturepack-required=false content-log-file-enabled=false compression-threshold=1 server-authoritative-movement=server-auth player-movement-score-threshold=20 player-movement-action-direction-threshold=0.85 player-movement-distance-threshold=0.3 player-movement-duration-threshold-in-ms=500 correct-player-movement=false server-authoritative-block-breaking=false
Настройка permissions.json
1. Отредактируйте permissions.json:
nano permissions.json
2. Настройте права доступа:
[ { "permission": "operator", "xuid": "0" } ]
Настройка allowlist.json
1. Отредактируйте allowlist.json:
nano allowlist.json
2. Настройте белый список:
[ { "name": "PlayerName", "xuid": "0" } ]
6. Создание скрипта запуска
Создание скрипта
1. Создайте скрипт запуска:
nano start-bedrock.sh
2. Добавьте содержимое:
\#!/bin/bash \# Настройки сервера SERVER_DIR="/opt/bedrock" SCREEN_NAME="minecraft-bedrock" \# Переход в директорию сервера cd $SERVER_DIR \# Проверка запущенного сервера if screen -list | grep -q "$SCREEN_NAME"; then echo "Bedrock сервер уже запущен!" exit 1 fi \# Запуск сервера echo "Запуск Minecraft Bedrock сервера..." screen -dmS $SCREEN_NAME ./bedrock_server echo "Bedrock сервер запущен в screen сессии: $SCREEN_NAME" echo "Для подключения к консоли используйте: screen -r $SCREEN_NAME"
3. Сделайте скрипт исполняемым:
chmod +x start-bedrock.sh
Создание скрипта остановки
1. Создайте скрипт остановки:
nano stop-bedrock.sh
2. Добавьте содержимое:
\#!/bin/bash SCREEN_NAME="minecraft-bedrock" \# Проверка запущенного сервера if ! screen -list | grep -q "$SCREEN_NAME"; then echo "Bedrock сервер не запущен!" exit 1 fi echo "Остановка Minecraft Bedrock сервера..." \# Отправка команды остановки screen -S $SCREEN_NAME -X stuff "stop$(printf \\r)" \# Ожидание остановки sleep 10 \# Принудительная остановка если нужно if screen -list | grep -q "$SCREEN_NAME"; then echo "Принудительная остановка сервера..." screen -S $SCREEN_NAME -X quit fi echo "Bedrock сервер остановлен"
3. Сделайте скрипт исполняемым:
chmod +x stop-bedrock.sh
7. Настройка systemd сервиса
Создание сервиса
1. Выйдите из пользователя bedrock:
exit
2. Создайте systemd сервис:
sudo nano /etc/systemd/system/minecraft-bedrock.service
3. Добавьте конфигурацию:
[Unit] Description=Minecraft Bedrock Server After=network.target [Service] Type=simple User=bedrock Group=bedrock WorkingDirectory=/opt/bedrock ExecStart=/opt/bedrock/bedrock_server ExecStop=/bin/kill -15 $MAINPID Restart=always RestartSec=10 [Install] WantedBy=multi-user.target
Запуск сервиса
1. Перезагрузите systemd:
sudo systemctl daemon-reload
2. Включите автозапуск:
sudo systemctl enable minecraft-bedrock
3. Запустите сервис:
sudo systemctl start minecraft-bedrock
4. Проверьте статус:
sudo systemctl status minecraft-bedrock
8. Настройка файрвола
Настройка UFW
1. Установите UFW:
sudo apt install -y ufw
2. Настройте правила:
sudo ufw allow 22/tcp
sudo ufw allow 19132/udp
sudo ufw allow 19133/udp
sudo ufw enable
3. Проверьте статус:
sudo ufw status
Настройка iptables
1. Настройте iptables для UDP:
sudo iptables -A INPUT -p udp --dport 19132 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 19133 -j ACCEPT
2. Сохраните правила:
sudo iptables-save > /etc/iptables/rules.v4
9. Мониторинг и диагностика
Создание скрипта мониторинга
1. Создайте скрипт мониторинга:
sudo nano /usr/local/bin/bedrock-monitor.sh
2. Добавьте содержимое:
\#!/bin/bash \# Проверка статуса Bedrock сервера if ! systemctl is-active --quiet minecraft-bedrock; then echo "Bedrock сервер не запущен!" | mail -s "Bedrock Alert" admin@example.com fi \# Проверка использования памяти MEMORY_USAGE=$(ps aux | grep bedrock_server | grep -v grep | awk '{print $4}') if [ ! -z "$MEMORY_USAGE" ] && [ $(echo "$MEMORY_USAGE > 80" | bc) -eq 1 ]; then echo "Высокое использование памяти: ${MEMORY_USAGE}%" | mail -s "Bedrock Alert" admin@example.com fi \# Проверка доступности порта if ! nc -u -z localhost 19132; then echo "Bedrock сервер не отвечает на порту 19132!" | mail -s "Bedrock Alert" admin@example.com fi
3. Сделайте скрипт исполняемым:
sudo chmod +x /usr/local/bin/bedrock-monitor.sh
4. Добавьте в crontab:
sudo crontab -e
5. Добавьте задачу:
*/5 * * * * /usr/local/bin/bedrock-monitor.sh
10. Резервное копирование
Создание скрипта резервного копирования
1. Создайте скрипт резервного копирования:
sudo nano /usr/local/bin/bedrock-backup.sh
2. Добавьте содержимое:
\#!/bin/bash BACKUP_DIR="/backup/bedrock" DATE=$(date +%Y%m%d_%H%M%S) SERVER_DIR="/opt/bedrock" \# Создание директории для бэкапа mkdir -p $BACKUP_DIR \# Остановка Bedrock сервера для бэкапа systemctl stop minecraft-bedrock \# Создание архива tar -czf $BACKUP_DIR/bedrock-backup-$DATE.tar.gz -C $SERVER_DIR . \# Запуск Bedrock сервера systemctl start minecraft-bedrock \# Удаление старых бэкапов (старше 7 дней) find $BACKUP_DIR -name "bedrock-backup-*" -mtime +7 -delete echo "Bedrock backup completed: $DATE"
3. Сделайте скрипт исполняемым:
sudo chmod +x /usr/local/bin/bedrock-backup.sh
4. Добавьте в crontab:
sudo crontab -e
5. Добавьте задачу:
0 3 * * * /usr/local/bin/bedrock-backup.sh
11. Настройка плагинов (если поддерживается)
Установка Geyser (для совместимости с Java)
1. Скачайте Geyser:
cd /opt/bedrock
wget https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/download/spigot
2. Переименуйте файл:
mv geyser-spigot.jar geyser.jar
Настройка Floodgate
1. Скачайте Floodgate:
wget https://download.geysermc.org/v2/projects/floodgate/versions/latest/builds/latest/download/spigot
2. Переименуйте файл:
mv floodgate-spigot.jar floodgate.jar
12. Устранение неполадок
Частые проблемы
1. Bedrock сервер не запускается:
- Проверьте статус:
sudo systemctl status minecraft-bedrock
- Проверьте логи:
sudo journalctl -u minecraft-bedrock
- Проверьте права доступа к файлам
2. Проблемы с подключением:
- Проверьте настройки файрвола
- Проверьте UDP порты
- Проверьте сетевую связность
3. Проблемы с производительностью:
- Проверьте использование ресурсов
- Оптимизируйте настройки сервера
- Проверьте количество игроков
Диагностика
1. Проверка статуса сервера:
sudo systemctl status minecraft-bedrock
2. Проверка логов:
sudo journalctl -u minecraft-bedrock -f
3. Проверка портов:
sudo netstat -ulnp | grep :19132
4. Проверка использования ресурсов:
htop
free -h
df -h
5. Тестирование подключения:
nc -u -z localhost 19132
Заключение
Minecraft Bedrock сервер успешно установлен и настроен! Теперь у вас есть полнофункциональный сервер для мобильных и консольных игроков с возможностями мониторинга и резервного копирования.
Для размещения ваших Bedrock серверов на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):
- [Выделенные серверы](https://ark-hoster.ru/dedicated/) - для высоконагруженных Bedrock серверов
- [VPS/VDS серверы](https://ark-hoster.ru/vpsgame/) - для небольших и средних серверов
Наши специалисты помогут с настройкой Bedrock серверов и оптимизацией производительности!