Установка и настройка Bukkit сервера
Содержание
- 1 Установка и настройка Bukkit сервера
- 1.1 1. Подготовка системы
- 1.2 2. Установка Java =
- 1.3 3. Создание пользователя для Bukkit =
- 1.4 4. Установка Bukkit сервера =
- 1.5 5. Настройка конфигурации =
- 1.6 6. Установка плагинов =
- 1.7 7. Настройка systemd сервиса =
- 1.8 8. Настройка файрвола =
- 1.9 9. Мониторинг и диагностика =
- 1.10 10. Резервное копирование =
- 1.11 11. Устранение неполадок =
- 1.12 Заключение
Установка и настройка Bukkit сервера
1. Подготовка системы
- Войдите в систему под учетной записью с правами root или пользователя с правами sudo.
- Убедитесь, что у вас есть доступ к серверу через SSH или консоль.
- Рекомендуется использовать Ubuntu 24.04 LTS для стабильной работы.
2. Установка Java =
Обновление системы
1. Обновите систему:
sudo apt update
sudo apt upgrade -y
2. Установите необходимые пакеты:
sudo apt install -y wget curl unzip screen htop git
Установка OpenJDK
1. Установите OpenJDK 21:
sudo apt install -y openjdk-21-jdk
2. Проверьте версию Java:
java --version
3. Настройте JAVA_HOME:
echo 'export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64' >> ~/.bashrc
source ~/.bashrc
3. Создание пользователя для Bukkit =
Создание пользователя
1. Создайте пользователя bukkit:
sudo useradd -m -s /bin/bash bukkit
2. Установите пароль:
sudo passwd bukkit
3. Добавьте пользователя в группу sudo:
sudo usermod -aG sudo bukkit
Настройка директорий
1. Создайте директорию для Bukkit:
sudo mkdir -p /opt/bukkit
2. Установите права доступа:
sudo chown -R bukkit:bukkit /opt/bukkit
3. Переключитесь на пользователя bukkit:
sudo su - bukkit
4. Установка Bukkit сервера =
Скачивание CraftBukkit
1. Перейдите в директорию Bukkit:
cd /opt/bukkit
2. Скачайте CraftBukkit (последняя версия):
wget https://getbukkit.org/download/craftbukkit
3. Переименуйте файл:
mv craftbukkit-1.20.1.jar bukkit-server.jar
Настройка Bukkit сервера
1. Примите лицензионное соглашение:
echo "eula=true" > eula.txt
2. Создайте скрипт запуска:
nano start-bukkit.sh
3. Добавьте содержимое:
#!/bin/bash
- Настройки сервера
SERVER_DIR="/opt/bukkit"
MIN_RAM="2G"
MAX_RAM="4G"
SCREEN_NAME="minecraft-bukkit"
- Переход в директорию сервера
cd $SERVER_DIR
- Проверка запущенного сервера
if screen -list | grep -q "$SCREEN_NAME"; then
echo "Bukkit сервер уже запущен!"
exit 1
fi
- Запуск сервера
echo "Запуск Minecraft Bukkit сервера..."
screen -dmS $SCREEN_NAME java -Xms$MIN_RAM -Xmx$MAX_RAM -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -jar bukkit-server.jar nogui
echo "Bukkit сервер запущен в screen сессии: $SCREEN_NAME"
echo "Для подключения к консоли используйте: screen -r $SCREEN_NAME"
4. Сделайте скрипт исполняемым:
chmod +x start-bukkit.sh
5. Настройка конфигурации =
Базовая конфигурация
1. Запустите Bukkit сервер один раз для создания конфигурационных файлов:
cd /opt/bukkit
./start-bukkit.sh
2. Остановите сервер через несколько секунд:
screen -S minecraft-bukkit -X stuff "stop$(printf \\r)"
3. Настройте bukkit.yml:
nano bukkit.yml
4. Настройте основные параметры:
# Bukkit Configuration
- Основные настройки
settings:
allow-end: true
warn-on-overload: true
permissions-file: permissions.yml
update-folder: update
plugin-profiling: false
connection-throttle: 4000
query-plugins: true
deprecated-verbose: default
shutdown-message: Server closed
minimum-api: null
- Настройки спавна
spawn-limits:
monsters: 70
animals: 15
water-animals: 5
ambient: 15
water-ambient: 20
misc: -1
- Настройки чанков
chunk-gc:
period-in-ticks: 600
Настройка server.properties
1. Настройте server.properties:
nano server.properties
2. Настройте основные параметры:
# Server Properties
- Основные настройки
server-name=Bukkit Server
motd=Добро пожаловать на Bukkit сервер!
server-port=25565
online-mode=true
white-list=false
- Настройки мира
level-name=world
level-type=minecraft\:normal
level-seed=
generate-structures=true
- Настройки игроков
max-players=20
view-distance=10
simulation-distance=10
- Настройки производительности
difficulty=normal
hardcore=false
pvp=true
allow-nether=true
allow-flight=false
- Настройки чата
enable-command-block=false
enable-jmx-monitoring=false
enable-query=false
enable-rcon=false
- Настройки сети
network-compression-threshold=256
max-tick-time=60000
6. Установка плагинов =
Создание директории для плагинов
1. Создайте директорию для плагинов:
mkdir -p plugins
2. Установите права доступа:
chmod 755 plugins
Установка основных плагинов
1. Установка Essentials:
cd plugins
wget https://github.com/EssentialsX/Essentials/releases/latest/download/Essentials-2.20.1.jar
2. Установка Vault:
wget https://github.com/MilkBowl/Vault/releases/latest/download/Vault-1.7.3.jar
3. Установка WorldEdit:
wget https://dev.bukkit.org/projects/worldedit/files/latest
mv latest WorldEdit.jar
4. Установка PermissionsEx:
wget https://github.com/PEXPlugins/PermissionsEx/releases/latest/download/PermissionsEx-1.23.4.jar
7. Настройка systemd сервиса =
Создание сервиса
1. Выйдите из пользователя bukkit:
exit
2. Создайте systemd сервис:
sudo nano /etc/systemd/system/minecraft-bukkit.service
3. Добавьте конфигурацию:
[Unit]
Description=Minecraft Bukkit Server
After=network.target
[Service]
Type=simple
User=bukkit
Group=bukkit
WorkingDirectory=/opt/bukkit
ExecStart=/usr/bin/java -Xms2G -Xmx4G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -jar bukkit-server.jar nogui
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-bukkit
3. Запустите сервис:
sudo systemctl start minecraft-bukkit
4. Проверьте статус:
sudo systemctl status minecraft-bukkit
8. Настройка файрвола =
Настройка UFW
1. Установите UFW:
sudo apt install -y ufw
2. Настройте правила:
sudo ufw allow 22/tcp
sudo ufw allow 25565/tcp
sudo ufw enable
3. Проверьте статус:
sudo ufw status
9. Мониторинг и диагностика =
Создание скрипта мониторинга
1. Создайте скрипт мониторинга:
sudo nano /usr/local/bin/bukkit-monitor.sh
2. Добавьте содержимое:
#!/bin/bash
- Проверка статуса Bukkit сервера
if ! systemctl is-active --quiet minecraft-bukkit; then
echo "Bukkit сервер не запущен!" | mail -s "Bukkit Alert" admin@example.com
fi
- Проверка использования памяти
MEMORY_USAGE=$(ps aux | grep bukkit-server | grep -v grep | awk '{print $4}')
if [ ! -z "$MEMORY_USAGE" ] && [ $(echo "$MEMORY_USAGE > 80" | bc) -eq 1 ]; then
echo "Высокое использование памяти: ${MEMORY_USAGE}%" | mail -s "Bukkit Alert" admin@example.com
fi
- Проверка доступности порта
if ! nc -z localhost 25565; then
echo "Bukkit сервер не отвечает на порту 25565!" | mail -s "Bukkit Alert" admin@example.com
fi
3. Сделайте скрипт исполняемым:
sudo chmod +x /usr/local/bin/bukkit-monitor.sh
4. Добавьте в crontab:
sudo crontab -e
5. Добавьте задачу:
*/5 * * * * /usr/local/bin/bukkit-monitor.sh
10. Резервное копирование =
Создание скрипта резервного копирования
1. Создайте скрипт резервного копирования:
sudo nano /usr/local/bin/bukkit-backup.sh
2. Добавьте содержимое:
#!/bin/bash
BACKUP_DIR="/backup/bukkit"
DATE=$(date +%Y%m%d_%H%M%S)
- Создание директории для бэкапа
mkdir -p $BACKUP_DIR
- Остановка Bukkit сервера для бэкапа
systemctl stop minecraft-bukkit
- Создание архива
tar -czf $BACKUP_DIR/bukkit-backup-$DATE.tar.gz -C /opt bukkit
- Запуск Bukkit сервера
systemctl start minecraft-bukkit
- Удаление старых бэкапов (старше 7 дней)
find $BACKUP_DIR -name "bukkit-backup-*" -mtime +7 -delete
echo "Bukkit backup completed: $DATE"
3. Сделайте скрипт исполняемым:
sudo chmod +x /usr/local/bin/bukkit-backup.sh
4. Добавьте в crontab:
sudo crontab -e
5. Добавьте задачу:
0 3 * * * /usr/local/bin/bukkit-backup.sh
11. Устранение неполадок =
Частые проблемы
1. Bukkit сервер не запускается:
- Проверьте статус:
sudo systemctl status minecraft-bukkit
- Проверьте логи:
sudo journalctl -u minecraft-bukkit
- Проверьте права доступа к файлам
2. Проблемы с плагинами:
- Проверьте совместимость плагинов
- Проверьте зависимости плагинов
- Проверьте логи сервера
3. Проблемы с производительностью:
- Увеличьте выделенную память
- Оптимизируйте JVM параметры
- Проверьте настройки плагинов
Диагностика
1. Проверка статуса сервера:
sudo systemctl status minecraft-bukkit
2. Проверка логов:
sudo journalctl -u minecraft-bukkit -f
3. Проверка портов:
sudo netstat -tlnp | grep :25565
4. Проверка использования ресурсов:
htop
free -h
df -h
5. Тестирование подключения:
telnet localhost 25565
Заключение
Bukkit сервер успешно установлен и настроен! Теперь у вас есть полнофункциональный сервер с возможностями плагинов, мониторинга и резервного копирования.
Для размещения ваших Bukkit серверов на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):
- [Выделенные серверы](https://ark-hoster.ru/dedicated/) - для высоконагруженных Bukkit серверов
- [VPS/VDS серверы](https://ark-hoster.ru/vpsgame/) - для небольших и средних серверов
Наши специалисты помогут с настройкой Bukkit серверов и оптимизацией производительности!