Подробный гайд: Установка и настройка выделенного сервера Battlefield 2142 на Linux Mint

Установка выделенного сервера Battlefield 2142 на Linux Mint через Wine: настройка, запуск, автозапуск и устранение неполадок для проекта сообщества.

2026.04.26                  


Подробный гайд: Установка и настройка выделенного сервера Battlefield 2142 на Linux MintПодробный гайд: Установка и настройка выделенного сервера Battlefield 2142 на Linux Mint

Важно:

Официальные серверы EA/DICE для Battlefield 2142 были отключены много лет назад. На 2026 год игра поддерживается исключительно сообществом (проект BF2142.com / Project Revival). Данный гайд описывает установку сервера через Wine с использованием патчей сообщества. Официальных нативных Linux-бинарников не существует.


Требования

Компонент Минимальные требования
ОС Linux Mint 21.x / 22.x (Ubuntu 22.04/24.04 base)
Архитектура x86_64 (с поддержкой 32-битных библиотек)
RAM 2 ГБ (рекомендуется 4 ГБ для 32 слотов)
CPU 2 ядра (сервер однопоточный, важна частота)
Сеть Открытый UDP-порт 16567 (и TCP при необходимости)
Лицензия Оригинальная копия BF2142 требуется только для клиентов. Серверные файлы предоставляются сообществом.

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

1. Обновите пакеты и включите поддержку 32-битной архитектуры:
sudo dpkg --add-architecture i386
sudo apt update && sudo apt upgrade -y
2. Установите базовые утилиты:
sudo apt install -y screen wget unzip curl ufw build-essential libgl1-mesa-dri:i386 libgl1:i386

Шаг 2: Установка Wine и зависимостей

BF2142 сервер — 32-битное Windows-приложение. Рекомендуется изолированный префикс.
  1. Добавьте официальный репозиторий WineHQ и установите стабильную версию:
sudo mkdir -pm755 /etc/apt/keyrings
sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key
sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/$(lsb_release -cs)/winehq-$(lsb_release -cs).sources
sudo apt update
sudo apt install --install-recommends winehq-stable -y
2. Установите winetricks:
sudo apt install winetricks -y
3. Создайте чистый 32-битный префикс и установите рантаймы:
export WINEPREFIX="$HOME/.wine-bf2142"
export WINEARCH=win32
winecfg  # Закройте окно после создания префикса
winetricks vcrun2005 vcrun2008 d3dx9 directmusic quartz

Если winetricks ругается на отсутствие каталога winetricks, выполните: sudo apt install cabextract p7zip-full


Шаг 3: Получение серверных файлов

Официальные дистрибутивы больше не доступны. Используйте актуальный патч от сообщества:
  1. Перейдите на официальный сайт проекта: bf2142.com/download/ (или зеркало projectrevival.eu)
  2. Скачайте Server Package (обычно BF2142_Server_Patch_vX.X.zip)
3. Распакуйте в удобную директорию:
mkdir -p ~/bf2142-server
cd ~/bf2142-server
unzip ~/Downloads/BF2142_Server_Patch_*.zip -d .
Структура должна содержать:
mods/
  bf2142/
    settings/
      server.con
      mapList.con
BF2142.exe
bf2142_icon.bmp

Шаг 4: Настройка сервера

Откройте основной конфиг:
nano ~/bf2142-server/mods/bf2142/settings/server.con
Пример минимальной конфигурации:
sv.serverName "RU | BF2142 Revival | 32 slots"
sv.serverPassword ""
sv.maxPlayers 32
sv.gamePort 16567
sv.masterServer "master.bf2142.com"  # Укажите актуальный адрес из документации сообщества
sv.adminPassword "your_admin_pass"
sv.friendlyFire 1
sv.roundsPerMap 2
sv.startMap "Grosswerk"
sv.timeLimit 15
Настройка ротации карт (mapList.con):
mapList.add Goliath CQ 64
mapList.add Grosswerk CQ 64
mapList.add Suez Canal TDM 32
mapList.add Tunis 1968 TDM 32
mapList.reset

Все параметры подробно описаны в server.con (закомментированные строки). Не используйте кириллицу в имени сервера, если мастер-сервер не поддерживает UTF-8.

Шаг 5: Запуск и тестирование

1. Запустите сервер в изолированном префиксе:
cd ~/bf2142-server
WINEPREFIX="$HOME/.wine-bf2142" wine BF2142.exe +set dedicated 1 +set gamePort 16567 +set server 1
2. Проверьте, что процесс слушает порт:
ss -tulnp | grep 16567

Ожидаемый вывод: udp UNCONN 0 0 0.0.0.0:16567 ...

  1. Подключитесь клиентом с тем же патчем сообщества.
Если сервер не появляется в списке, проверьте:
  • Открытость порта на файрволе/роутере
  • Корректность sv.masterServer
  • Версию патча клиента и сервера (должны совпадать)

Шаг 6: Управление и автозапуск

Вариант A: screen (рекомендуется для ручной перезагрузки)
screen -S bf2142
WINEPREFIX="$HOME/.wine-bf2142" wine BF2142.exe +set dedicated 1 +set gamePort 16567 +set server 1
# Отсоединиться: Ctrl+A, D
# Подключиться: screen -r bf2142
# В консоли сервера: sv.restart, sv.shutdown, sv.kick <id>
Вариант B: systemd (автостарт при загрузке)
Создайте файл службы:
sudo nano /etc/systemd/system/bf2142-server.service
Вставьте:
[Unit]
Description=Battlefield 2142 Dedicated Server
After=network.target

[Service]
Type=simple
User=ваш_пользователь
WorkingDirectory=/home/ваш_пользователь/bf2142-server
ExecStart=/usr/bin/wine BF2142.exe +set dedicated 1 +set gamePort 16567 +set server 1
Restart=on-failure
RestartSec=10
Environment="WINEPREFIX=/home/ваш_пользователь/.wine-bf2142"
Environment="WINEDEBUG=-all"
Environment="DISPLAY=:0"
StandardInput=null
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
Активируйте:
sudo systemctl daemon-reload
sudo systemctl enable --now bf2142-server.service
sudo systemctl status bf2142-server

Шаг 7: Файрвол и сеть

1. Настройте UFW:
sudo ufw allow 16567/udp
sudo ufw allow 16567/tcp  # требуется для некоторых мастер-серверов
sudo ufw reload
2. Если сервер находится за NAT (домашняя сеть), пробросьте порты на роутере:
  • Протокол: UDP (обязательно) + TCP
  • Внутренний IP: IP машины с Linux Mint
  • Внешний/Внутренний порт: 16567
3. Проверьте доступность извне:
nc -vuz ваш_внешний_ip 16567

Шаг 8: Устранение неполадок

Симптом Решение
wine: cannot find 'BF2142.exe' Проверьте путь, регистр букв, наличие прав на выполнение: chmod +x BF2142.exe
Сервер запускается, но не виден в списке Убедитесь, что sv.masterServer указывает на актуальный адрес сообщества. Проверьте ss -tulnp | grep 16567
Ошибки d3dx9, vcrun2005 Повторите winetricks vcrun2005 vcrun2008 d3dx9 с правильным WINEPREFIX
Высокий CPU-usage BF2142 сервер однопоточный. Используйте taskset -c 0 wine ... или ограничьте частоту ядра
Консоль не принимает команды Запускайте через screen или tmux. В systemd консоль недоступна напрямую
Падения при старте Запустите с отладкой: WINEPREFIX=~/.wine-bf2142 WINEDEBUG=+seh wine BF2142.exe ... и изучите вывод

Важные примечания (2026)

  1. Поддержка сообщества: Все обновления, фиксы безопасности и совместимость с современными ОС предоставляются добровольцами. Следите за новостями на bf2142.com.
  2. Безопасность: Никогда не запускайте Wine от root. Используйте отдельного пользователя или своего аккаунта с ограниченными правами.
  3. Античит: Официальный PunkBuster не работает. Используйте встроенные серверные фильтры или моды сообщества (например, BF2142-AC).
  4. Резервное копирование: Регулярно сохраняйте server.con, mapList.con и каталог mods/.
  5. Лицензия: Серверные файлы модифицированы сообществом. Для подключения игроков требуется легальная копия BF2142.

Полезные ресурсы

  • Официальный сайт сообщества: bf2142.com
  • Документация по конфигам: wiki.bf2142.com/Server_Configuration
  • GitHub патчей: github.com/BF2142Revival (актуальные релизы)

Если сервер стабильно работает 24/7, появляется в мастер-списке и принимает подключения — установка завершена успешно.

Удачи на полях сражений!