Как установить игровой сервер Minecraft на VDS: различия между версиями

Материал из ARK-HOSTER.RU | Документация хостинга
Перейти к навигации Перейти к поиску
Новая страница: «= Minecraft на VDS Linux = == 1. Подготовка системы == * Войдите в систему под учетной записью с права…»
 
Нет описания правки
 
Строка 6: Строка 6:
* Убедитесь, что у вас есть доступ к серверу через SSH или консоль.
* Убедитесь, что у вас есть доступ к серверу через SSH или консоль.


== 2. Установка Java ===
== 2. Установка Java ==


=== Установка OpenJDK ===
=== Установка OpenJDK ===


1. Обновите систему:
1. Обновите систему:
<code>sudo apt update</code>
<pre>sudo apt update</pre>


2. Установите Java 17 (рекомендуется для Minecraft 1.18+):
2. Установите Java 17 (рекомендуется для Minecraft 1.18+):
<code>sudo apt install -y openjdk-17-jdk</code>
<pre>sudo apt install -y openjdk-17-jdk</pre>


3. Проверьте версию Java:
3. Проверьте версию Java:
<code>java -version</code>
<pre>java -version</pre>


=== Альтернативная установка Java ===
=== Альтернативная установка Java ===


1. Для старых версий Minecraft установите Java 8:
1. Для старых версий Minecraft установите Java 8:
<code>sudo apt install -y openjdk-8-jdk</code>
<pre>sudo apt install -y openjdk-8-jdk</pre>


2. Для новейших версий установите Java 21:
2. Для новейших версий установите Java 21:
<code>sudo apt install -y openjdk-21-jdk</code>
<pre>sudo apt install -y openjdk-21-jdk</pre>


3. Управление версиями Java:
3. Управление версиями Java:
<code>sudo update-alternatives --config java</code>
<pre>sudo update-alternatives --config java</pre>


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


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


1. Создайте пользователя для Minecraft:
1. Создайте пользователя для Minecraft:
<code>sudo useradd -m -s /bin/bash minecraft</code>
<pre>sudo useradd -m -s /bin/bash minecraft</pre>


2. Установите пароль:
2. Установите пароль:
<code>sudo passwd minecraft</code>
<pre>sudo passwd minecraft</pre>


3. Создайте директорию для сервера:
3. Создайте директорию для сервера:
<code>sudo mkdir -p /opt/minecraft</code>
<pre>sudo mkdir -p /opt/minecraft</pre>
<code>sudo chown minecraft:minecraft /opt/minecraft</code>
<pre>sudo chown minecraft:minecraft /opt/minecraft</pre>


4. Переключитесь на пользователя minecraft:
4. Переключитесь на пользователя minecraft:
<code>sudo su - minecraft</code>
<pre>sudo su - minecraft</pre>


== 4. Установка сервера Minecraft ===
== 4. Установка сервера Minecraft ==


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


1. Перейдите в директорию сервера:
1. Перейдите в директорию сервера:
<code>cd /opt/minecraft</code>
<pre>cd /opt/minecraft</pre>


2. Скачайте официальный сервер Minecraft:
2. Скачайте официальный сервер Minecraft:
<code>wget https://launcher.mojang.com/v1/objects/your-server-jar-file.jar</code>
<pre>wget https://launcher.mojang.com/v1/objects/your-server-jar-file.jar</pre>


3. Или скачайте Paper (оптимизированная версия):
3. Или скачайте Paper (оптимизированная версия):
<code>wget https://api.papermc.io/v2/projects/paper/versions/1.20.4/builds/507/downloads/paper-1.20.4-507.jar</code>
<pre>wget https://api.papermc.io/v2/projects/paper/versions/1.20.4/builds/507/downloads/paper-1.20.4-507.jar</pre>


4. Переименуйте файл:
4. Переименуйте файл:
<code>mv paper-1.20.4-507.jar server.jar</code>
<pre>mv paper-1.20.4-507.jar server.jar</pre>


=== Первый запуск ===
=== Первый запуск ===


1. Создайте скрипт запуска:
1. Создайте скрипт запуска:
<code>nano start.sh</code>
<pre>nano start.sh</pre>


2. Добавьте содержимое:
2. Добавьте содержимое:
<code>#!/bin/bash
<pre>\#!/bin/bash
java -Xmx2G -Xms1G -jar server.jar nogui</code>
java -Xmx2G -Xms1G -jar server.jar nogui</pre>


3. Сделайте скрипт исполняемым:
3. Сделайте скрипт исполняемым:
<code>chmod +x start.sh</code>
<pre>chmod +x start.sh</pre>


4. Запустите сервер в первый раз:
4. Запустите сервер в первый раз:
<code>./start.sh</code>
<pre>./start.sh</pre>


5. Примите лицензионное соглашение:
5. Примите лицензионное соглашение:
<code>echo "eula=true" > eula.txt</code>
<pre>echo "eula=true" > eula.txt</pre>


== 5. Настройка сервера ===
== 5. Настройка сервера ==


=== Базовая конфигурация ===
=== Базовая конфигурация ===


1. Отредактируйте server.properties:
1. Отредактируйте server.properties:
<code>nano server.properties</code>
<pre>nano server.properties</pre>


2. Настройте основные параметры:
2. Настройте основные параметры:
<code>server-name=My Minecraft Server
<pre>server-name=My Minecraft Server
server-port=25565
server-port=25565
max-players=20
max-players=20
Строка 97: Строка 97:
online-mode=true
online-mode=true
white-list=false
white-list=false
</code>
</pre>


=== Настройка производительности ===
=== Настройка производительности ===


1. Создайте оптимизированный скрипт запуска:
1. Создайте оптимизированный скрипт запуска:
<code>nano start-optimized.sh</code>
<pre>nano start-optimized.sh</pre>


2. Добавьте содержимое:
2. Добавьте содержимое:
<code>#!/bin/bash
<pre>\#!/bin/bash
java -Xmx4G -Xms2G \
java -Xmx4G -Xms2G \
     -XX:+UseG1GC \
     -XX:+UseG1GC \
Строка 128: Строка 128:
     -Daikars.new.flags=true \
     -Daikars.new.flags=true \
     -jar server.jar nogui
     -jar server.jar nogui
</code>
</pre>


3. Сделайте скрипт исполняемым:
3. Сделайте скрипт исполняемым:
<code>chmod +x start-optimized.sh</code>
<pre>chmod +x start-optimized.sh</pre>


== 6. Установка плагинов (Paper) ===
== 6. Установка плагинов (Paper) ==


=== Создание директории плагинов ===
=== Создание директории плагинов ===


1. Создайте директорию для плагинов:
1. Создайте директорию для плагинов:
<code>mkdir -p plugins</code>
<pre>mkdir -p plugins</pre>


2. Скачайте популярные плагины:
2. Скачайте популярные плагины:
<code>wget https://github.com/EssentialsX/Essentials/releases/latest/download/EssentialsX-2.20.1.jar -O plugins/EssentialsX.jar</code>
<pre>wget https://github.com/EssentialsX/Essentials/releases/latest/download/EssentialsX-2.20.1.jar -O plugins/EssentialsX.jar</pre>
<code>wget https://github.com/mcMMO-Dev/mcMMO/releases/latest/download/mcMMO.jar -O plugins/mcMMO.jar</code>
<pre>wget https://github.com/mcMMO-Dev/mcMMO/releases/latest/download/mcMMO.jar -O plugins/mcMMO.jar</pre>


3. Перезапустите сервер для загрузки плагинов:
3. Перезапустите сервер для загрузки плагинов:
<code>./start-optimized.sh</code>
<pre>./start-optimized.sh</pre>


=== Настройка EssentialsX ===
=== Настройка EssentialsX ===


1. Отредактируйте конфигурацию:
1. Отредактируйте конфигурацию:
<code>nano plugins/Essentials/config.yml</code>
<pre>nano plugins/Essentials/config.yml</pre>


2. Настройте основные параметры:
2. Настройте основные параметры:
<code>motd: "&6Добро пожаловать на сервер!"
<pre>motd: "&6Добро пожаловать на сервер!"
rules: "&cПравила сервера:"
rules: "&cПравила сервера:"
</code>
</pre>


== 7. Настройка systemd сервиса ===
== 7. Настройка systemd сервиса ==


=== Создание сервиса ===
=== Создание сервиса ===


1. Создайте systemd сервис:
1. Создайте systemd сервис:
<code>sudo nano /etc/systemd/system/minecraft.service</code>
<pre>sudo nano /etc/systemd/system/minecraft.service</pre>


2. Добавьте содержимое:
2. Добавьте содержимое:
<code>[Unit]
<pre>[Unit]
Description=Minecraft Server
Description=Minecraft Server
After=network.target
After=network.target
Строка 180: Строка 180:
[Install]
[Install]
WantedBy=multi-user.target
WantedBy=multi-user.target
</code>
</pre>


3. Перезагрузите systemd:
3. Перезагрузите systemd:
<code>sudo systemctl daemon-reload</code>
<pre>sudo systemctl daemon-reload</pre>


4. Включите и запустите сервис:
4. Включите и запустите сервис:
<code>sudo systemctl enable minecraft</code>
<pre>sudo systemctl enable minecraft</pre>
<code>sudo systemctl start minecraft</code>
<pre>sudo systemctl start minecraft</pre>


=== Управление сервисом ===
=== Управление сервисом ===


1. '''Запуск сервера''':
1. '''Запуск сервера''':
<code>sudo systemctl start minecraft</code>
<pre>sudo systemctl start minecraft</pre>


2. '''Остановка сервера''':
2. '''Остановка сервера''':
<code>sudo systemctl stop minecraft</code>
<pre>sudo systemctl stop minecraft</pre>


3. '''Перезапуск сервера''':
3. '''Перезапуск сервера''':
<code>sudo systemctl restart minecraft</code>
<pre>sudo systemctl restart minecraft</pre>


4. '''Проверка статуса''':
4. '''Проверка статуса''':
<code>sudo systemctl status minecraft</code>
<pre>sudo systemctl status minecraft</pre>


5. '''Просмотр логов''':
5. '''Просмотр логов''':
<code>sudo journalctl -u minecraft -f</code>
<pre>sudo journalctl -u minecraft -f</pre>


== 8. Настройка файрвола ===
== 8. Настройка файрвола ==


=== Настройка UFW ===
=== Настройка UFW ===


1. Разрешите порт Minecraft:
1. Разрешите порт Minecraft:
<code>sudo ufw allow 25565/tcp</code>
<pre>sudo ufw allow 25565/tcp</pre>


2. Проверьте статус:
2. Проверьте статус:
<code>sudo ufw status</code>
<pre>sudo ufw status</pre>


=== Настройка iptables ===
=== Настройка iptables ===


1. Разрешите порт через iptables:
1. Разрешите порт через iptables:
<code>sudo iptables -A INPUT -p tcp --dport 25565 -j ACCEPT</code>
<pre>sudo iptables -A INPUT -p tcp --dport 25565 -j ACCEPT</pre>


2. Сохраните правила:
2. Сохраните правила:
<code>sudo iptables-save > /etc/iptables/rules.v4</code>
<pre>sudo iptables-save > /etc/iptables/rules.v4</pre>


== 9. Резервное копирование ===
== 9. Резервное копирование ==


=== Создание скрипта бэкапа ===
=== Создание скрипта бэкапа ===


1. Создайте скрипт резервного копирования:
1. Создайте скрипт резервного копирования:
<code>sudo nano /usr/local/bin/minecraft-backup.sh</code>
<pre>sudo nano /usr/local/bin/minecraft-backup.sh</pre>


2. Добавьте содержимое:
2. Добавьте содержимое:
<code>#!/bin/bash
<pre>\#!/bin/bash


BACKUP_DIR="/backup/minecraft"
BACKUP_DIR="/backup/minecraft"
Строка 238: Строка 238:
DATE=$(date +%Y%m%d_%H%M%S)
DATE=$(date +%Y%m%d_%H%M%S)


# Остановка сервера
\# Остановка сервера
sudo systemctl stop minecraft
sudo systemctl stop minecraft


# Создание архива
\# Создание архива
tar -czf $BACKUP_DIR/minecraft_backup_$DATE.tar.gz -C $SERVER_DIR .
tar -czf $BACKUP_DIR/minecraft_backup_$DATE.tar.gz -C $SERVER_DIR .


# Запуск сервера
\# Запуск сервера
sudo systemctl start minecraft
sudo systemctl start minecraft


# Удаление старых бэкапов (старше 7 дней)
\# Удаление старых бэкапов (старше 7 дней)
find $BACKUP_DIR -name "minecraft_backup_*.tar.gz" -mtime +7 -delete
find $BACKUP_DIR -name "minecraft_backup_*.tar.gz" -mtime +7 -delete


echo "Backup completed: minecraft_backup_$DATE.tar.gz"
echo "Backup completed: minecraft_backup_$DATE.tar.gz"
</code>
</pre>


3. Сделайте скрипт исполняемым:
3. Сделайте скрипт исполняемым:
<code>sudo chmod +x /usr/local/bin/minecraft-backup.sh</code>
<pre>sudo chmod +x /usr/local/bin/minecraft-backup.sh</pre>


4. Создайте директорию для бэкапов:
4. Создайте директорию для бэкапов:
<code>sudo mkdir -p /backup/minecraft</code>
<pre>sudo mkdir -p /backup/minecraft</pre>


=== Настройка автоматического бэкапа ===
=== Настройка автоматического бэкапа ===


1. Добавьте задачу в crontab:
1. Добавьте задачу в crontab:
<code>sudo crontab -e</code>
<pre>sudo crontab -e</pre>


2. Добавьте строку для ежедневного бэкапа:
2. Добавьте строку для ежедневного бэкапа:
<code>0 3 * * * /usr/local/bin/minecraft-backup.sh</code>
<pre>0 3 * * * /usr/local/bin/minecraft-backup.sh</pre>


== 10. Мониторинг сервера ===
== 10. Мониторинг сервера ==


=== Создание скрипта мониторинга ===
=== Создание скрипта мониторинга ===


1. Создайте скрипт мониторинга:
1. Создайте скрипт мониторинга:
<code>sudo nano /usr/local/bin/minecraft-monitor.sh</code>
<pre>sudo nano /usr/local/bin/minecraft-monitor.sh</pre>


2. Добавьте содержимое:
2. Добавьте содержимое:
<code>#!/bin/bash
<pre>\#!/bin/bash


# Проверка статуса сервера
\# Проверка статуса сервера
if systemctl is-active --quiet minecraft; then
if systemctl is-active --quiet minecraft; then
     echo "Minecraft server is running"
     echo "Minecraft server is running"
Строка 294: Строка 294:
     echo "Minecraft server is down" | mail -s "Minecraft Alert" admin@example.com
     echo "Minecraft server is down" | mail -s "Minecraft Alert" admin@example.com
fi
fi
</code>
</pre>


3. Сделайте скрипт исполняемым:
3. Сделайте скрипт исполняемым:
<code>sudo chmod +x /usr/local/bin/minecraft-monitor.sh</code>
<pre>sudo chmod +x /usr/local/bin/minecraft-monitor.sh</pre>


=== Настройка мониторинга ===
=== Настройка мониторинга ===


1. Добавьте задачу мониторинга в crontab:
1. Добавьте задачу мониторинга в crontab:
<code># Проверка каждые 5 минут
<pre>\# Проверка каждые 5 минут
*/5 * * * * /usr/local/bin/minecraft-monitor.sh
*/5 * * * * /usr/local/bin/minecraft-monitor.sh
</code>
</pre>


== 11. Устранение неполадок ===
== 11. Устранение неполадок ==


=== Частые проблемы ===
=== Частые проблемы ===


1. '''Сервер не запускается''':
1. '''Сервер не запускается''':
* Проверьте версию Java: <code>java -version</code>
* Проверьте версию Java: <pre>java -version</pre>
* Проверьте права доступа: <code>ls -la /opt/minecraft</code>
* Проверьте права доступа: <pre>ls -la /opt/minecraft</pre>
* Проверьте логи: <code>sudo journalctl -u minecraft</code>
* Проверьте логи: <pre>sudo journalctl -u minecraft</pre>


2. '''Высокое использование памяти''':
2. '''Высокое использование памяти''':
Строка 321: Строка 321:


3. '''Игроки не могут подключиться''':
3. '''Игроки не могут подключиться''':
* Проверьте файрвол: <code>sudo ufw status</code>
* Проверьте файрвол: <pre>sudo ufw status</pre>
* Проверьте порт: <code>sudo netstat -tlnp | grep :25565</code>
* Проверьте порт: <pre>sudo netstat -tlnp | grep :25565</pre>
* Проверьте настройки server.properties
* Проверьте настройки server.properties


Строка 328: Строка 328:


1. Проверьте статус сервиса:
1. Проверьте статус сервиса:
<code>sudo systemctl status minecraft</code>
<pre>sudo systemctl status minecraft</pre>


2. Проверьте использование ресурсов:
2. Проверьте использование ресурсов:
<code>htop</code>
<pre>htop</pre>
<code>free -h</code>
<pre>free -h</pre>
<code>df -h</code>
<pre>df -h</pre>


3. Проверьте логи сервера:
3. Проверьте логи сервера:
<code>tail -f /opt/minecraft/logs/latest.log</code>
<pre>tail -f /opt/minecraft/logs/latest.log</pre>


== 12. Дополнительные настройки ===
== 12. Дополнительные настройки ==


=== Установка RCON ===
=== Установка RCON ===


1. Включите RCON в server.properties:
1. Включите RCON в server.properties:
<code>enable-rcon=true
<pre>enable-rcon=true
rcon.port=25575
rcon.port=25575
rcon.password=your_password
rcon.password=your_password
</code>
</pre>


2. Используйте RCON для управления:
2. Используйте RCON для управления:
<code>mcrcon -H localhost -P 25575 -p your_password "list"</code>
<pre>mcrcon -H localhost -P 25575 -p your_password "list"</pre>


=== Настройка автоматического перезапуска ===
=== Настройка автоматического перезапуска ===


1. Создайте скрипт автоматического перезапуска:
1. Создайте скрипт автоматического перезапуска:
<code>sudo nano /usr/local/bin/minecraft-restart.sh</code>
<pre>sudo nano /usr/local/bin/minecraft-restart.sh</pre>


2. Добавьте содержимое:
2. Добавьте содержимое:
<code>#!/bin/bash
<pre>\#!/bin/bash


# Остановка сервера
\# Остановка сервера
sudo systemctl stop minecraft
sudo systemctl stop minecraft


# Ожидание
\# Ожидание
sleep 10
sleep 10


# Запуск сервера
\# Запуск сервера
sudo systemctl start minecraft
sudo systemctl start minecraft


echo "Minecraft server restarted at $(date)"
echo "Minecraft server restarted at $(date)"
</code>
</pre>


3. Добавьте в crontab для ежедневного перезапуска:
3. Добавьте в crontab для ежедневного перезапуска:
<code>0 6 * * * /usr/local/bin/minecraft-restart.sh
<pre>0 6 * * * /usr/local/bin/minecraft-restart.sh
</code>
</pre>


== Заключение ==
== Заключение ==

Текущая версия от 10:29, 15 октября 2025

Minecraft на VDS Linux

1. Подготовка системы

  • Войдите в систему под учетной записью с правами root или пользователя с правами sudo.
  • Убедитесь, что у вас есть доступ к серверу через SSH или консоль.

2. Установка Java

Установка OpenJDK

1. Обновите систему:

sudo apt update

2. Установите Java 17 (рекомендуется для Minecraft 1.18+):

sudo apt install -y openjdk-17-jdk

3. Проверьте версию Java:

java -version

Альтернативная установка Java

1. Для старых версий Minecraft установите Java 8:

sudo apt install -y openjdk-8-jdk

2. Для новейших версий установите Java 21:

sudo apt install -y openjdk-21-jdk

3. Управление версиями Java:

sudo update-alternatives --config java

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

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

1. Создайте пользователя для Minecraft:

sudo useradd -m -s /bin/bash minecraft

2. Установите пароль:

sudo passwd minecraft

3. Создайте директорию для сервера:

sudo mkdir -p /opt/minecraft
sudo chown minecraft:minecraft /opt/minecraft

4. Переключитесь на пользователя minecraft:

sudo su - minecraft

4. Установка сервера Minecraft

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

1. Перейдите в директорию сервера:

cd /opt/minecraft

2. Скачайте официальный сервер Minecraft:

wget https://launcher.mojang.com/v1/objects/your-server-jar-file.jar

3. Или скачайте Paper (оптимизированная версия):

wget https://api.papermc.io/v2/projects/paper/versions/1.20.4/builds/507/downloads/paper-1.20.4-507.jar

4. Переименуйте файл:

mv paper-1.20.4-507.jar server.jar

Первый запуск

1. Создайте скрипт запуска:

nano start.sh

2. Добавьте содержимое:

\#!/bin/bash
java -Xmx2G -Xms1G -jar server.jar nogui

3. Сделайте скрипт исполняемым:

chmod +x start.sh

4. Запустите сервер в первый раз:

./start.sh

5. Примите лицензионное соглашение:

echo "eula=true" > eula.txt

5. Настройка сервера

Базовая конфигурация

1. Отредактируйте server.properties:

nano server.properties

2. Настройте основные параметры:

server-name=My Minecraft Server
server-port=25565
max-players=20
difficulty=normal
gamemode=survival
motd=A Minecraft Server
online-mode=true
white-list=false

Настройка производительности

1. Создайте оптимизированный скрипт запуска:

nano start-optimized.sh

2. Добавьте содержимое:

\#!/bin/bash
java -Xmx4G -Xms2G \
     -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 \
     -Dusing.aikars.flags=https://mcflags.emc.gs \
     -Daikars.new.flags=true \
     -jar server.jar nogui

3. Сделайте скрипт исполняемым:

chmod +x start-optimized.sh

6. Установка плагинов (Paper)

Создание директории плагинов

1. Создайте директорию для плагинов:

mkdir -p plugins

2. Скачайте популярные плагины:

wget https://github.com/EssentialsX/Essentials/releases/latest/download/EssentialsX-2.20.1.jar -O plugins/EssentialsX.jar
wget https://github.com/mcMMO-Dev/mcMMO/releases/latest/download/mcMMO.jar -O plugins/mcMMO.jar

3. Перезапустите сервер для загрузки плагинов:

./start-optimized.sh

Настройка EssentialsX

1. Отредактируйте конфигурацию:

nano plugins/Essentials/config.yml

2. Настройте основные параметры:

motd: "&6Добро пожаловать на сервер!"
rules: "&cПравила сервера:"

7. Настройка systemd сервиса

Создание сервиса

1. Создайте systemd сервис:

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

2. Добавьте содержимое:

[Unit]
Description=Minecraft Server
After=network.target

[Service]
Type=simple
User=minecraft
Group=minecraft
WorkingDirectory=/opt/minecraft
ExecStart=/opt/minecraft/start-optimized.sh
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

3. Перезагрузите systemd:

sudo systemctl daemon-reload

4. Включите и запустите сервис:

sudo systemctl enable minecraft
sudo systemctl start minecraft

Управление сервисом

1. Запуск сервера:

sudo systemctl start minecraft

2. Остановка сервера:

sudo systemctl stop minecraft

3. Перезапуск сервера:

sudo systemctl restart minecraft

4. Проверка статуса:

sudo systemctl status minecraft

5. Просмотр логов:

sudo journalctl -u minecraft -f

8. Настройка файрвола

Настройка UFW

1. Разрешите порт Minecraft:

sudo ufw allow 25565/tcp

2. Проверьте статус:

sudo ufw status

Настройка iptables

1. Разрешите порт через iptables:

sudo iptables -A INPUT -p tcp --dport 25565 -j ACCEPT

2. Сохраните правила:

sudo iptables-save > /etc/iptables/rules.v4

9. Резервное копирование

Создание скрипта бэкапа

1. Создайте скрипт резервного копирования:

sudo nano /usr/local/bin/minecraft-backup.sh

2. Добавьте содержимое:

\#!/bin/bash

BACKUP_DIR="/backup/minecraft"
SERVER_DIR="/opt/minecraft"
DATE=$(date +%Y%m%d_%H%M%S)

\# Остановка сервера
sudo systemctl stop minecraft

\# Создание архива
tar -czf $BACKUP_DIR/minecraft_backup_$DATE.tar.gz -C $SERVER_DIR .

\# Запуск сервера
sudo systemctl start minecraft

\# Удаление старых бэкапов (старше 7 дней)
find $BACKUP_DIR -name "minecraft_backup_*.tar.gz" -mtime +7 -delete

echo "Backup completed: minecraft_backup_$DATE.tar.gz"

3. Сделайте скрипт исполняемым:

sudo chmod +x /usr/local/bin/minecraft-backup.sh

4. Создайте директорию для бэкапов:

sudo mkdir -p /backup/minecraft

Настройка автоматического бэкапа

1. Добавьте задачу в crontab:

sudo crontab -e

2. Добавьте строку для ежедневного бэкапа:

0 3 * * * /usr/local/bin/minecraft-backup.sh

10. Мониторинг сервера

Создание скрипта мониторинга

1. Создайте скрипт мониторинга:

sudo nano /usr/local/bin/minecraft-monitor.sh

2. Добавьте содержимое:

\#!/bin/bash

\# Проверка статуса сервера
if systemctl is-active --quiet minecraft; then
    echo "Minecraft server is running"
    
    # Проверка использования памяти
    MEMORY=$(ps aux | grep java | grep minecraft | awk '{print $6}')
    echo "Memory usage: $MEMORY KB"
    
    # Проверка подключений
    CONNECTIONS=$(netstat -an | grep :25565 | wc -l)
    echo "Active connections: $CONNECTIONS"
    
else
    echo "Minecraft server is not running"
    # Отправка уведомления
    echo "Minecraft server is down" | mail -s "Minecraft Alert" admin@example.com
fi

3. Сделайте скрипт исполняемым:

sudo chmod +x /usr/local/bin/minecraft-monitor.sh

Настройка мониторинга

1. Добавьте задачу мониторинга в crontab:

\# Проверка каждые 5 минут
*/5 * * * * /usr/local/bin/minecraft-monitor.sh

11. Устранение неполадок

Частые проблемы

1. Сервер не запускается:

  • Проверьте версию Java:
    java -version
  • Проверьте права доступа:
    ls -la /opt/minecraft
  • Проверьте логи:
    sudo journalctl -u minecraft

2. Высокое использование памяти:

  • Уменьшите параметры -Xmx и -Xms
  • Используйте оптимизированные настройки JVM
  • Установите плагины для оптимизации

3. Игроки не могут подключиться:

  • Проверьте файрвол:
    sudo ufw status
  • Проверьте порт:
    sudo netstat -tlnp | grep :25565
  • Проверьте настройки server.properties

Диагностика

1. Проверьте статус сервиса:

sudo systemctl status minecraft

2. Проверьте использование ресурсов:

htop
free -h
df -h

3. Проверьте логи сервера:

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

12. Дополнительные настройки

Установка RCON

1. Включите RCON в server.properties:

enable-rcon=true
rcon.port=25575
rcon.password=your_password

2. Используйте RCON для управления:

mcrcon -H localhost -P 25575 -p your_password "list"

Настройка автоматического перезапуска

1. Создайте скрипт автоматического перезапуска:

sudo nano /usr/local/bin/minecraft-restart.sh

2. Добавьте содержимое:

\#!/bin/bash

\# Остановка сервера
sudo systemctl stop minecraft

\# Ожидание
sleep 10

\# Запуск сервера
sudo systemctl start minecraft

echo "Minecraft server restarted at $(date)"

3. Добавьте в crontab для ежедневного перезапуска:

0 6 * * * /usr/local/bin/minecraft-restart.sh

Заключение

Minecraft сервер успешно установлен и настроен на VDS! Теперь вы можете играть со своими друзьями.

Для размещения ваших Minecraft серверов на надежном хостинге рекомендуем воспользоваться услугами [ARK-HOSTER.RU](https://ark-hoster.ru):

Наши специалисты помогут с настройкой Minecraft и оптимизацией производительности вашего сервера!