Настройка Minecraft сервера с модами Forge-Fabric: различия между версиями

Материал из ARK-HOSTER.RU | Документация хостинга
Перейти к навигации Перейти к поиску
Новая страница: «= Настройка Minecraft сервера с модами (Forge/Fabric) = == 1. Подготовка системы == * Войдите в систему…»
 
Нет описания правки
 
Строка 7: Строка 7:
* Рекомендуется использовать Ubuntu 24.04 LTS для стабильной работы.
* Рекомендуется использовать Ubuntu 24.04 LTS для стабильной работы.


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


=== Обновление системы ===
=== Обновление системы ===


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


2. Установите необходимые пакеты:
2. Установите необходимые пакеты:
<code>sudo apt install -y wget curl unzip screen htop</code>
<pre>sudo apt install -y wget curl unzip screen htop</pre>


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


1. Установите OpenJDK 21 (рекомендуется для модов):
1. Установите OpenJDK 21 (рекомендуется для модов):
<code>sudo apt install -y openjdk-21-jdk</code>
<pre>sudo apt install -y openjdk-21-jdk</pre>


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


3. Установите альтернативную версию Java:
3. Установите альтернативную версию Java:
<code>sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-21-openjdk-amd64/bin/java 1</code>
<pre>sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-21-openjdk-amd64/bin/java 1</pre>


=== Настройка переменных окружения ===
=== Настройка переменных окружения ===


1. Настройте JAVA_HOME:
1. Настройте JAVA_HOME:
<code>echo 'export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64' >> ~/.bashrc</code>
<pre>echo 'export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64' >> ~/.bashrc</pre>
<code>echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc</code>
<pre>echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc</pre>


2. Примените изменения:
2. Примените изменения:
<code>source ~/.bashrc</code>
<pre>source ~/.bashrc</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. Добавьте пользователя в группу sudo:
3. Добавьте пользователя в группу sudo:
<code>sudo usermod -aG sudo minecraft</code>
<pre>sudo usermod -aG sudo minecraft</pre>


=== Настройка директорий ===
=== Настройка директорий ===


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


2. Установите права доступа:
2. Установите права доступа:
<code>sudo chown -R minecraft:minecraft /opt/minecraft</code>
<pre>sudo chown -R minecraft:minecraft /opt/minecraft</pre>


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


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


=== Скачивание Forge ===
=== Скачивание Forge ===


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


2. Скачайте Forge installer (замените версию на актуальную):
2. Скачайте Forge installer (замените версию на актуальную):
<code>wget https://maven.minecraftforge.net/net/minecraftforge/forge/1.20.1-47.2.0/forge-1.20.1-47.2.0-installer.jar</code>
<pre>wget https://maven.minecraftforge.net/net/minecraftforge/forge/1.20.1-47.2.0/forge-1.20.1-47.2.0-installer.jar</pre>


3. Запустите установщик:
3. Запустите установщик:
<code>java -jar forge-1.20.1-47.2.0-installer.jar --installServer</code>
<pre>java -jar forge-1.20.1-47.2.0-installer.jar --installServer</pre>


4. Удалите установщик:
4. Удалите установщик:
<code>rm forge-1.20.1-47.2.0-installer.jar</code>
<pre>rm forge-1.20.1-47.2.0-installer.jar</pre>


=== Настройка Forge сервера ===
=== Настройка Forge сервера ===


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


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


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


# Настройки сервера
\# Настройки сервера
SERVER_DIR="/opt/minecraft/forge"
SERVER_DIR="/opt/minecraft/forge"
MIN_RAM="4G"
MIN_RAM="4G"
Строка 96: Строка 96:
SCREEN_NAME="minecraft-forge"
SCREEN_NAME="minecraft-forge"


# Переход в директорию сервера
\# Переход в директорию сервера
cd $SERVER_DIR
cd $SERVER_DIR


# Проверка запущенного сервера
\# Проверка запущенного сервера
if screen -list | grep -q "$SCREEN_NAME"; then
if screen -list | grep -q "$SCREEN_NAME"; then
     echo "Forge сервер уже запущен!"
     echo "Forge сервер уже запущен!"
Строка 105: Строка 105:
fi
fi


# Запуск сервера
\# Запуск сервера
echo "Запуск Minecraft Forge сервера..."
echo "Запуск Minecraft Forge сервера..."
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 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar forge-1.20.1-47.2.0.jar nogui
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 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar forge-1.20.1-47.2.0.jar nogui
Строка 111: Строка 111:
echo "Forge сервер запущен в screen сессии: $SCREEN_NAME"
echo "Forge сервер запущен в screen сессии: $SCREEN_NAME"
echo "Для подключения к консоли используйте: screen -r $SCREEN_NAME"
echo "Для подключения к консоли используйте: screen -r $SCREEN_NAME"
</code>
</pre>


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


== 5. Установка Fabric сервера ===
== 5. Установка Fabric сервера ==


=== Скачивание Fabric ===
=== Скачивание Fabric ===


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


2. Скачайте Fabric installer:
2. Скачайте Fabric installer:
<code>wget https://maven.fabricmc.net/net/fabricmc/fabric-installer/1.0.0/fabric-installer-1.0.0.jar</code>
<pre>wget https://maven.fabricmc.net/net/fabricmc/fabric-installer/1.0.0/fabric-installer-1.0.0.jar</pre>


3. Скачайте Minecraft server jar:
3. Скачайте Minecraft server jar:
<code>wget https://launcher.mojang.com/v1/objects/8c3115e0ed1dfd6aeb6fecdd61636aa7184c6170/server.jar</code>
<pre>wget https://launcher.mojang.com/v1/objects/8c3115e0ed1dfd6aeb6fecdd61636aa7184c6170/server.jar</pre>


4. Запустите Fabric installer:
4. Запустите Fabric installer:
<code>java -jar fabric-installer-1.0.0.jar server -mcversion 1.20.1 -loader 0.14.22 -downloadMinecraft</code>
<pre>java -jar fabric-installer-1.0.0.jar server -mcversion 1.20.1 -loader 0.14.22 -downloadMinecraft</pre>


5. Удалите установщик:
5. Удалите установщик:
<code>rm fabric-installer-1.0.0.jar</code>
<pre>rm fabric-installer-1.0.0.jar</pre>


=== Настройка Fabric сервера ===
=== Настройка Fabric сервера ===


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


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


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


# Настройки сервера
\# Настройки сервера
SERVER_DIR="/opt/minecraft/fabric"
SERVER_DIR="/opt/minecraft/fabric"
MIN_RAM="4G"
MIN_RAM="4G"
Строка 152: Строка 152:
SCREEN_NAME="minecraft-fabric"
SCREEN_NAME="minecraft-fabric"


# Переход в директорию сервера
\# Переход в директорию сервера
cd $SERVER_DIR
cd $SERVER_DIR


# Проверка запущенного сервера
\# Проверка запущенного сервера
if screen -list | grep -q "$SCREEN_NAME"; then
if screen -list | grep -q "$SCREEN_NAME"; then
     echo "Fabric сервер уже запущен!"
     echo "Fabric сервер уже запущен!"
Строка 161: Строка 161:
fi
fi


# Запуск сервера
\# Запуск сервера
echo "Запуск Minecraft Fabric сервера..."
echo "Запуск Minecraft Fabric сервера..."
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 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar fabric-server-launch.jar nogui
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 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar fabric-server-launch.jar nogui
Строка 167: Строка 167:
echo "Fabric сервер запущен в screen сессии: $SCREEN_NAME"
echo "Fabric сервер запущен в screen сессии: $SCREEN_NAME"
echo "Для подключения к консоли используйте: screen -r $SCREEN_NAME"
echo "Для подключения к консоли используйте: screen -r $SCREEN_NAME"
</code>
</pre>


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


== 6. Установка модов ===
== 6. Установка модов ==


=== Установка модов для Forge ===
=== Установка модов для Forge ===


1. Создайте директорию для модов:
1. Создайте директорию для модов:
<code>mkdir -p /opt/minecraft/forge/mods</code>
<pre>mkdir -p /opt/minecraft/forge/mods</pre>


2. Скачайте популярные моды (примеры):
2. Скачайте популярные моды (примеры):
<code>cd /opt/minecraft/forge/mods</code>
<pre>cd /opt/minecraft/forge/mods</pre>


3. '''Установка JEI (Just Enough Items)''':
3. '''Установка JEI (Just Enough Items)''':
<code>wget https://mediafilez.forgecdn.net/files/4727/0/jei-1.20.1-forge-12.4.0.16.jar</code>
<pre>wget https://mediafilez.forgecdn.net/files/4727/0/jei-1.20.1-forge-12.4.0.16.jar</pre>


4. '''Установка Applied Energistics 2''':
4. '''Установка Applied Energistics 2''':
<code>wget https://mediafilez.forgecdn.net/files/4726/0/appliedenergistics2-forge-15.0.0.jar</code>
<pre>wget https://mediafilez.forgecdn.net/files/4726/0/appliedenergistics2-forge-15.0.0.jar</pre>


5. '''Установка Thermal Expansion''':
5. '''Установка Thermal Expansion''':
<code>wget https://mediafilez.forgecdn.net/files/4725/0/thermal_expansion-1.20.1-10.3.0.1.jar</code>
<pre>wget https://mediafilez.forgecdn.net/files/4725/0/thermal_expansion-1.20.1-10.3.0.1.jar</pre>


=== Установка модов для Fabric ===
=== Установка модов для Fabric ===


1. Создайте директорию для модов:
1. Создайте директорию для модов:
<code>mkdir -p /opt/minecraft/fabric/mods</code>
<pre>mkdir -p /opt/minecraft/fabric/mods</pre>


2. Скачайте популярные моды (примеры):
2. Скачайте популярные моды (примеры):
<code>cd /opt/minecraft/fabric/mods</code>
<pre>cd /opt/minecraft/fabric/mods</pre>


3. '''Установка JEI (Just Enough Items)''':
3. '''Установка JEI (Just Enough Items)''':
<code>wget https://mediafilez.forgecdn.net/files/4727/0/jei-1.20.1-fabric-12.4.0.16.jar</code>
<pre>wget https://mediafilez.forgecdn.net/files/4727/0/jei-1.20.1-fabric-12.4.0.16.jar</pre>


4. '''Установка Applied Energistics 2''':
4. '''Установка Applied Energistics 2''':
<code>wget https://mediafilez.forgecdn.net/files/4726/0/appliedenergistics2-fabric-15.0.0.jar</code>
<pre>wget https://mediafilez.forgecdn.net/files/4726/0/appliedenergistics2-fabric-15.0.0.jar</pre>


5. '''Установка Tech Reborn''':
5. '''Установка Tech Reborn''':
<code>wget https://mediafilez.forgecdn.net/files/4724/0/TechReborn-5.7.0.jar</code>
<pre>wget https://mediafilez.forgecdn.net/files/4724/0/TechReborn-5.7.0.jar</pre>


== 7. Настройка конфигурации модов ===
== 7. Настройка конфигурации модов ==


=== Настройка Forge модов ===
=== Настройка Forge модов ===


1. Запустите Forge сервер один раз для создания конфигурационных файлов:
1. Запустите Forge сервер один раз для создания конфигурационных файлов:
<code>cd /opt/minecraft/forge</code>
<pre>cd /opt/minecraft/forge</pre>
<code>./start-forge.sh</code>
<pre>./start-forge.sh</pre>


2. Остановите сервер через несколько секунд:
2. Остановите сервер через несколько секунд:
<code>screen -S minecraft-forge -X stuff "stop$(printf \\r)"</code>
<pre>screen -S minecraft-forge -X stuff "stop$(printf \\r)"</pre>


3. Настройте конфигурацию модов:
3. Настройте конфигурацию модов:
<code>nano /opt/minecraft/forge/config/jei/jei-client.toml</code>
<pre>nano /opt/minecraft/forge/config/jei/jei-client.toml</pre>


4. Настройте основные параметры:
4. Настройте основные параметры:
<code># JEI Configuration
<pre>\# JEI Configuration
[advanced]
[advanced]
   searchMode = "require_cheat_mode"
   searchMode = "require_cheat_mode"
Строка 232: Строка 232:
   searchTextColor = 0xFFFFFF
   searchTextColor = 0xFFFFFF
   searchHighlightColor = 0xFFFF00
   searchHighlightColor = 0xFFFF00
</code>
</pre>


=== Настройка Fabric модов ===
=== Настройка Fabric модов ===


1. Запустите Fabric сервер один раз для создания конфигурационных файлов:
1. Запустите Fabric сервер один раз для создания конфигурационных файлов:
<code>cd /opt/minecraft/fabric</code>
<pre>cd /opt/minecraft/fabric</pre>
<code>./start-fabric.sh</code>
<pre>./start-fabric.sh</pre>


2. Остановите сервер через несколько секунд:
2. Остановите сервер через несколько секунд:
<code>screen -S minecraft-fabric -X stuff "stop$(printf \\r)"</code>
<pre>screen -S minecraft-fabric -X stuff "stop$(printf \\r)"</pre>


3. Настройте конфигурацию модов:
3. Настройте конфигурацию модов:
<code>nano /opt/minecraft/fabric/config/jei/jei-client.toml</code>
<pre>nano /opt/minecraft/fabric/config/jei/jei-client.toml</pre>


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


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


1. Выйдите из пользователя minecraft:
1. Выйдите из пользователя minecraft:
<code>exit</code>
<pre>exit</pre>


2. Создайте systemd сервис для Forge:
2. Создайте systemd сервис для Forge:
<code>sudo nano /etc/systemd/system/minecraft-forge.service</code>
<pre>sudo nano /etc/systemd/system/minecraft-forge.service</pre>


3. Добавьте конфигурацию:
3. Добавьте конфигурацию:
<code>[Unit]
<pre>[Unit]
Description=Minecraft Forge Server
Description=Minecraft Forge Server
After=network.target
After=network.target
Строка 273: Строка 273:
[Install]
[Install]
WantedBy=multi-user.target
WantedBy=multi-user.target
</code>
</pre>


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


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


2. Добавьте конфигурацию:
2. Добавьте конфигурацию:
<code>[Unit]
<pre>[Unit]
Description=Minecraft Fabric Server
Description=Minecraft Fabric Server
After=network.target
After=network.target
Строка 297: Строка 297:
[Install]
[Install]
WantedBy=multi-user.target
WantedBy=multi-user.target
</code>
</pre>


=== Запуск сервисов ===
=== Запуск сервисов ===


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


2. Включите автозапуск:
2. Включите автозапуск:
<code>sudo systemctl enable minecraft-forge</code>
<pre>sudo systemctl enable minecraft-forge</pre>
<code>sudo systemctl enable minecraft-fabric</code>
<pre>sudo systemctl enable minecraft-fabric</pre>


3. Запустите нужный сервис:
3. Запустите нужный сервис:
<code>sudo systemctl start minecraft-forge</code>
<pre>sudo systemctl start minecraft-forge</pre>
# или
# или
<code>sudo systemctl start minecraft-fabric</code>
<pre>sudo systemctl start minecraft-fabric</pre>


4. Проверьте статус:
4. Проверьте статус:
<code>sudo systemctl status minecraft-forge</code>
<pre>sudo systemctl status minecraft-forge</pre>
<code>sudo systemctl status minecraft-fabric</code>
<pre>sudo systemctl status minecraft-fabric</pre>


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


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


1. Установите UFW:
1. Установите UFW:
<code>sudo apt install -y ufw</code>
<pre>sudo apt install -y ufw</pre>


2. Настройте правила:
2. Настройте правила:
<code>sudo ufw allow 22/tcp</code>
<pre>sudo ufw allow 22/tcp</pre>
<code>sudo ufw allow 25565/tcp</code>
<pre>sudo ufw allow 25565/tcp</pre>
<code>sudo ufw enable</code>
<pre>sudo ufw enable</pre>


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


== 10. Мониторинг и диагностика ===
== 10. Мониторинг и диагностика ==


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


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


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


# Проверка статуса Forge сервера
\# Проверка статуса Forge сервера
if ! systemctl is-active --quiet minecraft-forge; then
if ! systemctl is-active --quiet minecraft-forge; then
     echo "Minecraft Forge сервер не запущен!" | mail -s "Minecraft Alert" admin@example.com
     echo "Minecraft Forge сервер не запущен!" | mail -s "Minecraft Alert" admin@example.com
fi
fi


# Проверка статуса Fabric сервера
\# Проверка статуса Fabric сервера
if ! systemctl is-active --quiet minecraft-fabric; then
if ! systemctl is-active --quiet minecraft-fabric; then
     echo "Minecraft Fabric сервер не запущен!" | mail -s "Minecraft Alert" admin@example.com
     echo "Minecraft Fabric сервер не запущен!" | mail -s "Minecraft Alert" admin@example.com
fi
fi


# Проверка использования памяти
\# Проверка использования памяти
MEMORY_USAGE=$(ps aux | grep -E "(forge|fabric)" | grep -v grep | awk '{print $4}' | head -1)
MEMORY_USAGE=$(ps aux | grep -E "(forge|fabric)" | grep -v grep | awk '{print $4}' | head -1)
if [ ! -z "$MEMORY_USAGE" ] && [ $(echo "$MEMORY_USAGE > 80" | bc) -eq 1 ]; then
if [ ! -z "$MEMORY_USAGE" ] && [ $(echo "$MEMORY_USAGE > 80" | bc) -eq 1 ]; then
Строка 358: Строка 358:
fi
fi


# Проверка доступности порта
\# Проверка доступности порта
if ! nc -z localhost 25565; then
if ! nc -z localhost 25565; then
     echo "Minecraft сервер не отвечает на порту 25565!" | mail -s "Minecraft Alert" admin@example.com
     echo "Minecraft сервер не отвечает на порту 25565!" | mail -s "Minecraft Alert" admin@example.com
fi
fi
</code>
</pre>


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


4. Добавьте в crontab:
4. Добавьте в crontab:
<code>sudo crontab -e</code>
<pre>sudo crontab -e</pre>


5. Добавьте задачу:
5. Добавьте задачу:
<code>*/5 * * * * /usr/local/bin/minecraft-mods-monitor.sh</code>
<pre>*/5 * * * * /usr/local/bin/minecraft-mods-monitor.sh</pre>


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


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


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


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


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


# Создание директории для бэкапа
\# Создание директории для бэкапа
mkdir -p $BACKUP_DIR
mkdir -p $BACKUP_DIR


# Остановка серверов для бэкапа
\# Остановка серверов для бэкапа
systemctl stop minecraft-forge
systemctl stop minecraft-forge
systemctl stop minecraft-fabric
systemctl stop minecraft-fabric


# Создание архива Forge
\# Создание архива Forge
if [ -d "/opt/minecraft/forge" ]; then
if [ -d "/opt/minecraft/forge" ]; then
     tar -czf $BACKUP_DIR/forge-backup-$DATE.tar.gz -C /opt/minecraft forge
     tar -czf $BACKUP_DIR/forge-backup-$DATE.tar.gz -C /opt/minecraft forge
fi
fi


# Создание архива Fabric
\# Создание архива Fabric
if [ -d "/opt/minecraft/fabric" ]; then
if [ -d "/opt/minecraft/fabric" ]; then
     tar -czf $BACKUP_DIR/fabric-backup-$DATE.tar.gz -C /opt/minecraft fabric
     tar -czf $BACKUP_DIR/fabric-backup-$DATE.tar.gz -C /opt/minecraft fabric
fi
fi


# Запуск серверов
\# Запуск серверов
systemctl start minecraft-forge
systemctl start minecraft-forge
systemctl start minecraft-fabric
systemctl start minecraft-fabric


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


echo "Minecraft mods backup completed: $DATE"
echo "Minecraft mods backup completed: $DATE"
</code>
</pre>


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


4. Добавьте в crontab:
4. Добавьте в crontab:
<code>sudo crontab -e</code>
<pre>sudo crontab -e</pre>


5. Добавьте задачу:
5. Добавьте задачу:
<code>0 3 * * * /usr/local/bin/minecraft-mods-backup.sh</code>
<pre>0 3 * * * /usr/local/bin/minecraft-mods-backup.sh</pre>


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


=== Частые проблемы ===
=== Частые проблемы ===
Строка 444: Строка 444:


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


2. '''Проверка логов''':
2. '''Проверка логов''':
<code>sudo journalctl -u minecraft-forge -f</code>
<pre>sudo journalctl -u minecraft-forge -f</pre>
<code>sudo journalctl -u minecraft-fabric -f</code>
<pre>sudo journalctl -u minecraft-fabric -f</pre>


3. '''Проверка модов''':
3. '''Проверка модов''':
<code>ls -la /opt/minecraft/forge/mods/</code>
<pre>ls -la /opt/minecraft/forge/mods/</pre>
<code>ls -la /opt/minecraft/fabric/mods/</code>
<pre>ls -la /opt/minecraft/fabric/mods/</pre>


4. '''Проверка конфигурации''':
4. '''Проверка конфигурации''':
<code>ls -la /opt/minecraft/forge/config/</code>
<pre>ls -la /opt/minecraft/forge/config/</pre>
<code>ls -la /opt/minecraft/fabric/config/</code>
<pre>ls -la /opt/minecraft/fabric/config/</pre>


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

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

Настройка Minecraft сервера с модами (Forge/Fabric)

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

Установка OpenJDK

1. Установите OpenJDK 21 (рекомендуется для модов):

sudo apt install -y openjdk-21-jdk

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

java --version

3. Установите альтернативную версию Java:

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-21-openjdk-amd64/bin/java 1

Настройка переменных окружения

1. Настройте JAVA_HOME:

echo 'export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc

2. Примените изменения:

source ~/.bashrc

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

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

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

sudo useradd -m -s /bin/bash minecraft

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

sudo passwd minecraft

3. Добавьте пользователя в группу sudo:

sudo usermod -aG sudo minecraft

Настройка директорий

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

sudo mkdir -p /opt/minecraft/forge
sudo mkdir -p /opt/minecraft/fabric

2. Установите права доступа:

sudo chown -R minecraft:minecraft /opt/minecraft

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

sudo su - minecraft

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

Скачивание Forge

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

cd /opt/minecraft/forge

2. Скачайте Forge installer (замените версию на актуальную):

wget https://maven.minecraftforge.net/net/minecraftforge/forge/1.20.1-47.2.0/forge-1.20.1-47.2.0-installer.jar

3. Запустите установщик:

java -jar forge-1.20.1-47.2.0-installer.jar --installServer

4. Удалите установщик:

rm forge-1.20.1-47.2.0-installer.jar

Настройка Forge сервера

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

echo "eula=true" > eula.txt

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

nano start-forge.sh

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

\#!/bin/bash

\# Настройки сервера
SERVER_DIR="/opt/minecraft/forge"
MIN_RAM="4G"
MAX_RAM="8G"
SCREEN_NAME="minecraft-forge"

\# Переход в директорию сервера
cd $SERVER_DIR

\# Проверка запущенного сервера
if screen -list | grep -q "$SCREEN_NAME"; then
    echo "Forge сервер уже запущен!"
    exit 1
fi

\# Запуск сервера
echo "Запуск Minecraft Forge сервера..."
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 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar forge-1.20.1-47.2.0.jar nogui

echo "Forge сервер запущен в screen сессии: $SCREEN_NAME"
echo "Для подключения к консоли используйте: screen -r $SCREEN_NAME"

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

chmod +x start-forge.sh

5. Установка Fabric сервера

Скачивание Fabric

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

cd /opt/minecraft/fabric

2. Скачайте Fabric installer:

wget https://maven.fabricmc.net/net/fabricmc/fabric-installer/1.0.0/fabric-installer-1.0.0.jar

3. Скачайте Minecraft server jar:

wget https://launcher.mojang.com/v1/objects/8c3115e0ed1dfd6aeb6fecdd61636aa7184c6170/server.jar

4. Запустите Fabric installer:

java -jar fabric-installer-1.0.0.jar server -mcversion 1.20.1 -loader 0.14.22 -downloadMinecraft

5. Удалите установщик:

rm fabric-installer-1.0.0.jar

Настройка Fabric сервера

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

echo "eula=true" > eula.txt

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

nano start-fabric.sh

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

\#!/bin/bash

\# Настройки сервера
SERVER_DIR="/opt/minecraft/fabric"
MIN_RAM="4G"
MAX_RAM="8G"
SCREEN_NAME="minecraft-fabric"

\# Переход в директорию сервера
cd $SERVER_DIR

\# Проверка запущенного сервера
if screen -list | grep -q "$SCREEN_NAME"; then
    echo "Fabric сервер уже запущен!"
    exit 1
fi

\# Запуск сервера
echo "Запуск Minecraft Fabric сервера..."
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 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar fabric-server-launch.jar nogui

echo "Fabric сервер запущен в screen сессии: $SCREEN_NAME"
echo "Для подключения к консоли используйте: screen -r $SCREEN_NAME"

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

chmod +x start-fabric.sh

6. Установка модов

Установка модов для Forge

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

mkdir -p /opt/minecraft/forge/mods

2. Скачайте популярные моды (примеры):

cd /opt/minecraft/forge/mods

3. Установка JEI (Just Enough Items):

wget https://mediafilez.forgecdn.net/files/4727/0/jei-1.20.1-forge-12.4.0.16.jar

4. Установка Applied Energistics 2:

wget https://mediafilez.forgecdn.net/files/4726/0/appliedenergistics2-forge-15.0.0.jar

5. Установка Thermal Expansion:

wget https://mediafilez.forgecdn.net/files/4725/0/thermal_expansion-1.20.1-10.3.0.1.jar

Установка модов для Fabric

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

mkdir -p /opt/minecraft/fabric/mods

2. Скачайте популярные моды (примеры):

cd /opt/minecraft/fabric/mods

3. Установка JEI (Just Enough Items):

wget https://mediafilez.forgecdn.net/files/4727/0/jei-1.20.1-fabric-12.4.0.16.jar

4. Установка Applied Energistics 2:

wget https://mediafilez.forgecdn.net/files/4726/0/appliedenergistics2-fabric-15.0.0.jar

5. Установка Tech Reborn:

wget https://mediafilez.forgecdn.net/files/4724/0/TechReborn-5.7.0.jar

7. Настройка конфигурации модов

Настройка Forge модов

1. Запустите Forge сервер один раз для создания конфигурационных файлов:

cd /opt/minecraft/forge
./start-forge.sh

2. Остановите сервер через несколько секунд:

screen -S minecraft-forge -X stuff "stop$(printf \\r)"

3. Настройте конфигурацию модов:

nano /opt/minecraft/forge/config/jei/jei-client.toml

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

\# JEI Configuration
[advanced]
  searchMode = "require_cheat_mode"
  maxRecipeGuiHeight = 300
  maxRecipeGuiWidth = 400

[colors]
  searchTextColor = 0xFFFFFF
  searchHighlightColor = 0xFFFF00

Настройка Fabric модов

1. Запустите Fabric сервер один раз для создания конфигурационных файлов:

cd /opt/minecraft/fabric
./start-fabric.sh

2. Остановите сервер через несколько секунд:

screen -S minecraft-fabric -X stuff "stop$(printf \\r)"

3. Настройте конфигурацию модов:

nano /opt/minecraft/fabric/config/jei/jei-client.toml

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

Создание сервиса для Forge

1. Выйдите из пользователя minecraft:

exit

2. Создайте systemd сервис для Forge:

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

3. Добавьте конфигурацию:

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

[Service]
Type=simple
User=minecraft
Group=minecraft
WorkingDirectory=/opt/minecraft/forge
ExecStart=/usr/bin/java -Xms4G -Xmx8G -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 forge-1.20.1-47.2.0.jar nogui
ExecStop=/bin/kill -15 $MAINPID
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

Создание сервиса для Fabric

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

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

2. Добавьте конфигурацию:

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

[Service]
Type=simple
User=minecraft
Group=minecraft
WorkingDirectory=/opt/minecraft/fabric
ExecStart=/usr/bin/java -Xms4G -Xmx8G -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 fabric-server-launch.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-forge
sudo systemctl enable minecraft-fabric

3. Запустите нужный сервис:

sudo systemctl start minecraft-forge
  1. или
sudo systemctl start minecraft-fabric

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

sudo systemctl status minecraft-forge
sudo systemctl status minecraft-fabric

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

Настройка 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

10. Мониторинг и диагностика

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

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

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

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

\#!/bin/bash

\# Проверка статуса Forge сервера
if ! systemctl is-active --quiet minecraft-forge; then
    echo "Minecraft Forge сервер не запущен!" | mail -s "Minecraft Alert" admin@example.com
fi

\# Проверка статуса Fabric сервера
if ! systemctl is-active --quiet minecraft-fabric; then
    echo "Minecraft Fabric сервер не запущен!" | mail -s "Minecraft Alert" admin@example.com
fi

\# Проверка использования памяти
MEMORY_USAGE=$(ps aux | grep -E "(forge|fabric)" | grep -v grep | awk '{print $4}' | head -1)
if [ ! -z "$MEMORY_USAGE" ] && [ $(echo "$MEMORY_USAGE > 80" | bc) -eq 1 ]; then
    echo "Высокое использование памяти: ${MEMORY_USAGE}%" | mail -s "Minecraft Alert" admin@example.com
fi

\# Проверка доступности порта
if ! nc -z localhost 25565; then
    echo "Minecraft сервер не отвечает на порту 25565!" | mail -s "Minecraft Alert" admin@example.com
fi

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

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

4. Добавьте в crontab:

sudo crontab -e

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

*/5 * * * * /usr/local/bin/minecraft-mods-monitor.sh

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

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

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

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

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

\#!/bin/bash

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

\# Создание директории для бэкапа
mkdir -p $BACKUP_DIR

\# Остановка серверов для бэкапа
systemctl stop minecraft-forge
systemctl stop minecraft-fabric

\# Создание архива Forge
if [ -d "/opt/minecraft/forge" ]; then
    tar -czf $BACKUP_DIR/forge-backup-$DATE.tar.gz -C /opt/minecraft forge
fi

\# Создание архива Fabric
if [ -d "/opt/minecraft/fabric" ]; then
    tar -czf $BACKUP_DIR/fabric-backup-$DATE.tar.gz -C /opt/minecraft fabric
fi

\# Запуск серверов
systemctl start minecraft-forge
systemctl start minecraft-fabric

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

echo "Minecraft mods backup completed: $DATE"

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

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

4. Добавьте в crontab:

sudo crontab -e

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

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

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

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

1. Моды не загружаются:

  • Проверьте совместимость версий модов
  • Проверьте зависимости модов
  • Проверьте логи сервера

2. Проблемы с производительностью:

  • Увеличьте выделенную память
  • Оптимизируйте JVM параметры
  • Проверьте конфликтующие моды

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

  • Проверьте целостность файлов модов
  • Проверьте конфигурацию модов
  • Проверьте логи сервера

Диагностика

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

sudo systemctl status minecraft-forge
sudo systemctl status minecraft-fabric

2. Проверка логов:

sudo journalctl -u minecraft-forge -f
sudo journalctl -u minecraft-fabric -f

3. Проверка модов:

ls -la /opt/minecraft/forge/mods/
ls -la /opt/minecraft/fabric/mods/

4. Проверка конфигурации:

ls -la /opt/minecraft/forge/config/
ls -la /opt/minecraft/fabric/config/

Заключение

Minecraft серверы с модами (Forge/Fabric) успешно установлены и настроены! Теперь у вас есть полнофункциональные серверы с поддержкой модов, мониторингом и резервным копированием.

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

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