Как установить Forge на сервер
1. Подготовка выделенного сервера в панели proxify.cloud
- Авторизуйтесь в панели управления proxify.cloud.
- Перейдите в раздел «Мои услуги» → «Выделенные серверы» и выберите нужный сервер.
- Убедитесь, что на сервере установлена Ubuntu 22.04 LTS или 24.04 LTS. При необходимости переустановите ОС через кнопку «Переустановить ОС» в панели управления сервером.
- Откройте консоль VNC (кнопка «Консоль VNC») или подключитесь по SSH с вашего компьютера:
IP-адрес указан в деталях сервера в панели proxify.cloud.ssh root@<IP_АДРЕС_СЕРВЕРА> - Обновите пакеты и установите базовые утилиты:
Forge 1.20.1+ требует Java 21. Для версий 1.18–1.20 используйтеapt update && apt upgrade -y apt install -y openjdk-21-jre-headless screen wget curl unzip gitopenjdk-17-jre-headless.
2. Создание пользователя и директории сервера
Не запускайте сервер от root. Создайте отдельного пользователя:
adduser --disabled-password --gecos "" mcuser
su - mcuser
mkdir -p ~/server/forge
cd ~/server/forge
Все дальнейшие команды выполняйте от имени mcuser в директории ~/server/forge.
3. Определение версии Forge и скачивание установщика
- Перейдите на официальный сайт files.minecraftforge.net.
- Выберите версию Minecraft (например,
1.20.1) и тип Recommended (стабильная) или Latest (последняя). - Скопируйте ссылку на Installer (файл
forge-<version>-installer.jar).
Пример для версии 1.20.1 (Recommended 47.2.0):
wget -O forge-installer.jar "https://maven.minecraftforge.net/net/minecraftforge/forge/1.20.1-47.2.0/forge-1.20.1-47.2.0-installer.jar"
Проверьте, что файл скачался:
ls -lh forge-installer.jar
4. Установка Forge сервера
Запустите установщик в режиме сервера (--installServer). Это создаст необходимые библиотеки, run.sh / run.bat и файл forge-<version>-universal.jar (или server.jar в новых версиях).
java -jar forge-installer.jar --installServer
Результат успешной установки:
The server installed successfully
После установки появится файл run.sh (скрипт запуска для Linux). Сделайте его исполняемым:
chmod +x run.sh
5. Принятие EULA и базовая настройка server.properties
- Примите лицензионное соглашение Mojang:
echo "eula=true" > eula.txt - Отредактируйте
server.propertiesпод ваши нужды. Минимальные изменения:
Если у вас куплен домен и настроен SRV-запись, порт можно оставить 25565. В панели proxify.cloud убедитесь, что порт 25565/TCP открыт в файрволе (раздел «Сеть» → «Файрвол»).cat > server.properties <<'EOF' server-port=25565 server-ip=0.0.0.0 motd=Forge Server on proxify.cloud max-players=20 online-mode=true enable-command-block=true difficulty=normal gamemode=survival view-distance=10 simulation-distance=10 EOF
6. Настройка параметров запуска (JVM Arguments)
Откройте run.sh и проверьте/отредактируйте параметры памяти. Для выделенного сервера с 16–32 ГБ RAM рекомендуется выделить 6–10 ГБ под кучу.
Пример содержимого run.sh:
#!/bin/sh
java -Xms6G -Xmx10G \
-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-universal.jar nogui
Замените имя jar-файла на актуальный (посмотрите ls forge*.jar). Флаги выше — оптимизация по Aikar для G1GC.
7. Первый запуск и генерация модов/конфигов
Запустите сервер в screen, чтобы он продолжал работать после отключения SSH:
screen -S forge ./run.sh
Сервер запустится, сгенерирует папки mods, configs, world, defaultconfigs и остановится (если нет модов) или будет работать. Чтобы выйти из screen без остановки сервера: нажмите Ctrl+A, затем D.
Вернуться в консоль сервера:
screen -r forge
Остановить сервер корректно: в консоли screen введите stop и нажмите Enter.
8. Установка модов
- Скачайте моды (
.jarфайлы) строго под версию Forge и Minecraft (например, с CurseForge или Modrinth). - Загрузите их в папку
modsна сервере. Через SCP (с вашего ПК):
Или черезscp /путь/к/моду/*.jar mcuser@<IP_СЕРВЕРА>:~/server/forge/mods/wgetпрямо на сервере, если есть прямые ссылки. - Убедитесь, что на клиенте установлены те же версии модов.
- Перезапустите сервер (
stopв консоли ->./run.shв screen).
9. Автозапуск через systemd (рекомендуется для выделенных серверов)
Создайте сервис, чтобы сервер запускался при включении питания и перезапускался при краше.
Выйдите из пользователя
mcuser(exit) и вернитесь к root.Создайте файл юнита:
cat > /etc/systemd/system/mc-forge.service <<'EOF' [Unit] Description=Minecraft Forge Server After=network.target [Service] WorkingDirectory=/home/mcuser/server/forge User=mcuser Group=mcuser Restart=on-failure RestartSec=10 ExecStart=/home/mcuser/server/forge/run.sh ExecStop=/bin/sh -c 'screen -S forge -p 0 -X stuff "stop\n"' KillMode=none Type=forking GuessMainPID=no TimeoutStartSec=120 TimeoutStopSec=30 [Install] WantedBy=multi-user.target EOFПримечание:
Type=forkingиGuessMainPID=noиспользуются, так какrun.shзапускает java в фоне внутри screen. Если вы уберете screen изrun.shи запускаете java напрямую, используйтеType=simpleи уберитеExecStopчерез screen.Перезагрузите systemd и включите автозапуск:
systemctl daemon-reload systemctl enable mc-forge.service systemctl start mc-forge.serviceПроверьте статус и логи:
systemctl status mc-forge.service journalctl -u mc-forge.service -f
10. Настройка бэкапов (простой скрипт + cron)
Создайте скрипт бэкапа мира и конфигов:
su - mcuser
cat > ~/backup.sh <<'EOF'
#!/bin/bash
DATE=$(date +%F_%H-%M)
SRC="/home/mcuser/server/forge"
DST="/home/mcuser/backups"
mkdir -p "$DST"
tar -czf "$DST/forge_backup_$DATE.tar.gz" -C "$SRC" world mods config defaultconfigs server.properties eula.txt
find "$DST" -name "forge_backup_*.tar.gz" -mtime +7 -delete
EOF
chmod +x ~/backup.sh
Добавьте в crontab (ежедневно в 04:00):
crontab -e
# Добавьте строку:
0 4 * * * /home/mcuser/backup.sh >> /home/mcuser/backup.log 2>&1
11. Подключение к серверу
- В клиенте Minecraft установите такую же версию Forge и те же моды.
- В меню «Мультиплеер» → «Добавить сервер» укажите:
- Адрес сервера: IP вашего выделенного сервера proxify.cloud (или домен, если настроен A/AAAA запись).
- Порт: 25565 (стандартный, если не меняли в
server.properties).
Возможные проблемы и решения
1. Ошибка Unsupported class file major version 65 / major version 61
Причина: Несоответствие версии Java и Forge/Minecraft. Решение:
- Minecraft 1.20.5+ (Forge 48+) → Java 21 (
openjdk-21-jre-headless). - Minecraft 1.18–1.20.1 (Forge 40–47) → Java 17 (
openjdk-17-jre-headless). - Minecraft 1.17 → Java 16.
- Minecraft 1.16.5 и ниже → Java 8.
Проверьте версию:
java -version. Установите нужную и обновите альтернативы:update-alternatives --config java.
2. Сервер запускается, но сразу падает (Crash) / java.lang.OutOfMemoryError
Причина: Недостаточно выделенной RAM (-Xmx) или утечка памяти в моде.
Решение:
- Увеличьте
-Xmxвrun.sh(не более 75% физической RAM). - Добавьте флаг
-XX:+HeapDumpOnOutOfMemoryErrorдля анализа
Комментарии (0)