Установка игрового сервера Left 4 Dead 2 на Linux

Материал из ARK-HOSTER.RU | Документация хостинга
Перейти к навигации Перейти к поиску

Инструкция по установке выделенного сервера Left 4 Dead 2 на VDS с Ubuntu 24.04. Все команды и снимки экрана сняты с настоящего сервера: инструкция проверена 15 ноября 2026 года на чистой Ubuntu 24.04.4 с сервером версии 2.2.4.3.

Что понадобится

  • VDS с Ubuntu 24.04 LTS и доступом root по SSH.
  • Память: пустой сервер занимает около 200 МБ. Хватит VDS с 2 ГБ.
  • Диск: файлы сервера занимают 9,3 ГБ; с запасом на обновления нужно от 20 ГБ свободного места.
  • Процессор: от 2 ядер.

Учётная запись Steam и купленная игра для установки сервера не нужны.

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

sudo apt update && sudo apt upgrade -y

На свежей системе обновление идёт от 5 минут до получаса. По ходу могут появиться два места, где нужно ваше участие.

Окно выбора раскладки клавиатуры. Обновление остановится и покажет окно «Configuring keyboard-configuration». Ничего менять не нужно: нажмите Enter, в следующем окне снова Enter.

Сообщение о новом ядре. Если в конце вы видите «Pending kernel upgrade», система обновила ядро и ждёт перезагрузки.

Перезагрузите сервер и подключитесь снова через минуту:

sudo reboot

2. Установите нужные пакеты

sudo apt install -y wget lib32gcc-s1 lib32stdc++6
  • lib32gcc-s1 и lib32stdc++6 нужны программе SteamCMD, через которую скачивается сервер.

3. Создайте пользователя для сервера

Игровой сервер не должен работать от root. Создайте для него отдельного пользователя:

sudo useradd -m -s /bin/bash l4d2

Пароль этому пользователю не нужен: входить под ним по SSH никто не будет, а переключаться на него вы будете командой из шага 5.

4. Скачайте SteamCMD

sudo mkdir -p /opt/steamcmd
cd /opt/steamcmd
sudo wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
sudo tar -xzf steamcmd_linux.tar.gz
sudo chown -R l4d2:l4d2 /opt/steamcmd

Архив маленький (2,3 МБ), но с серверов Steam он может качаться около минуты — это нормально.

5. Установите сервер Left 4 Dead 2

Переключитесь на пользователя l4d2 и запустите SteamCMD:

sudo su - l4d2
cd /opt/steamcmd
./steamcmd.sh

При первом запуске SteamCMD скачивает собственное обновление (около 40 МБ). С серверов Steam оно может идти несколько минут — дождитесь приглашения Steam> и ничего не вводите раньше.

Затем введите по очереди пять команд. Обычная установка в три команды для этой игры под Linux не работает: SteamCMD отвечает «ERROR! Failed to install app '222860' (Invalid platform)». Обходной путь — сначала скачать версию сервера для Windows, а затем поверх неё версию для Linux:

force_install_dir /home/l4d2/l4d2-server
login anonymous
@sSteamCmdForcePlatformType windows
app_update 222860 validate
@sSteamCmdForcePlatformType linux
app_update 222860 validate

Так выглядит ошибка, если ввести app_update без этих двух команд:

Если вместо загрузки появилась строка «ERROR! Failed to install app … (Missing configuration)», просто введите команду app_update ещё раз: при первом запуске SteamCMD такое случается, со второго раза загрузка начинается.

Первая команда app_update скачивает около 9,7 ГБ и идёт 25–30 минут, вторая докачивает файлы для Linux за несколько минут. После каждой из них появляется строка успеха. Дождитесь строки «Success! App '222860' fully installed.»:

Выйдите из SteamCMD:

quit

Проверьте, что файлы на месте:

ls /home/l4d2/l4d2-server

6. Настройте сервер

Библиотека Steam. Сервер ищет библиотеку Steam в каталоге ~/.steam/sdk32, а её там нет. Без неё он пишет «Unable to load Steam support library. This server will operate in LAN mode only» и не соединяется со Steam. Сделайте ссылку на библиотеку из SteamCMD:

mkdir -p ~/.steam/sdk32
ln -s /opt/steamcmd/linux32/steamclient.so ~/.steam/sdk32/steamclient.so

Настройки. Создайте файл server.cfg:

nano ~/l4d2-server/left4dead2/cfg/server.cfg
hostname "My L4D2 Server"
sv_password ""
  • hostname — название сервера в списке.
  • sv_password — пароль для входа. Пустые кавычки — вход без пароля.

Число игроков в Left 4 Dead 2 зависит от режима игры (4 в кампании, 8 в сражении) и отдельно не задаётся.

Сохраните файл (в nano: Ctrl+O, Enter, Ctrl+X), проверьте результат и вернитесь к root:

ls -l ~/.steam/sdk32
cat ~/l4d2-server/left4dead2/cfg/server.cfg
exit

7. Настройте автозапуск

Чтобы сервер запускался вместе с системой и поднимался после сбоя, создайте для него службу:

sudo nano /etc/systemd/system/l4d2-server.service

Вставьте:

[Unit]
Description=Left 4 Dead 2 Dedicated Server
After=network.target

[Service]
Type=simple
User=l4d2
WorkingDirectory=/home/l4d2/l4d2-server
ExecStart=/home/l4d2/l4d2-server/srcds_run -norestart -console -condebug -game left4dead2 +map c1m1_hotel
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

Что означают ключи запуска:

  • -norestart — штатный скрипт не перезапускает сервер сам: за этим следит служба.
  • -condebug — сервер записывает свою консоль в файл left4dead2/console.log. Без этого ключа под службой его сообщений не видно.
  • +map c1m1_hotel — стартовая карта (первая глава кампании «Вымерший центр»). Имена карт Left 4 Dead 2 начинаются с номера кампании: c2m1_highway, c5m1_waterfront и так далее. Карт с именами вида l4d_… из первой части игры здесь нет.

8. Запустите сервер и проверьте его

sudo systemctl daemon-reload
sudo systemctl enable l4d2-server
sudo systemctl start l4d2-server

Запуск занимает около минуты. Проверьте состояние службы — должно быть active (running):

sudo systemctl status l4d2-server --no-pager -n 0

Сервер готов, когда он занял порт 27015, а в его консоли есть строки «Connection to Steam servers successful» и «VAC secure mode is activated»:

sudo ss -uln | grep 27015
sudo grep -E "Connection to Steam|VAC secure|LAN mode" /home/l4d2/l4d2-server/left4dead2/console.log | tail -n 3

Управление службой:

sudo systemctl stop l4d2-server      # остановить
sudo systemctl restart l4d2-server   # перезапустить
sudo journalctl -u l4d2-server -f    # смотреть журнал, выход — Ctrl+C

9. Откройте порты в файрволе

Внимание: сначала разрешите SSH и только потом включайте файрвол. Иначе связь с сервером оборвётся. Если SSH у вас на нестандартном порту, вместо первой команды выполните sudo ufw allow НОМЕР_ПОРТА/tcp.

sudo ufw allow OpenSSH
sudo ufw allow 27015/udp
sudo ufw enable

Если появится вопрос «Command may disrupt existing ssh connections. Proceed with operation (y|n)?», ответьте y. Проверьте результат:

sudo ufw status

10. Зайдите на сервер

В игре откройте консоль и введите connect IP_СЕРВЕРА:27015. Чтобы игра с друзьями создавалась именно на вашем сервере, перед созданием лобби введите в консоли mm_dedicated_force_servers IP_СЕРВЕРА:27015.


Обновление сервера

После выхода обновления игры остановите сервер, обновите файлы и запустите снова:

sudo systemctl stop l4d2-server
sudo -u l4d2 /opt/steamcmd/steamcmd.sh +force_install_dir /home/l4d2/l4d2-server +login anonymous +@sSteamCmdForcePlatformType windows +app_update 222860 validate +@sSteamCmdForcePlatformType linux +app_update 222860 validate +quit
sudo systemctl start l4d2-server

Команда обновления повторяет тот же обходной путь, что и установка, поэтому она длиннее обычной.

Где лежат сохранения

У сервера нет мира, который нужно сохранять. Важные файлы:

  • /home/l4d2/l4d2-server/left4dead2/cfg/server.cfg — настройки;
  • /home/l4d2/l4d2-server/left4dead2/addons/ — дополнения и свои кампании;
  • /home/l4d2/l4d2-server/left4dead2/console.log — журнал консоли.

Если что-то пошло не так

Что видите Причина и решение
SteamCMD отвечает «ERROR! Failed to install app '222860' (Invalid platform)» Пропущены команды @sSteamCmdForcePlatformType. Введите все пять команд из шага 5 по порядку.
В консоли «Unable to load Steam support library. This server will operate in LAN mode only» Не сделана ссылка на библиотеку Steam из шага 6.
В журнале службы (journalctl) мало строк Без терминала сервер не выводит свою консоль. Смотрите файл left4dead2/console.log — его включает ключ -condebug.
Сервер запустился без карты В ключе +map указано имя карты, которой нет в игре. Используйте имена вида c1m1_hotel.
SteamCMD отвечает «ERROR! Failed to install app '222860' (Missing configuration)» Так иногда бывает при первом запуске SteamCMD. Введите команду app_update ещё раз — со второго раза загрузка начинается.
После установки нет каталога /home/l4d2/l4d2-server Команда force_install_dir была введена с ошибкой или после login, и сервер установился в /home/l4d2/Steam/steamapps/common/. Запустите SteamCMD заново и повторите три команды из шага 5 по порядку.
Служба в состоянии «failed» Посмотрите причину: sudo journalctl -u l4d2-server -n 50 --no-pager. Чаще всего это опечатка в пути или скрипт запуска не сделан исполняемым.
Сервер запущен, но зайти не удаётся Проверьте, что порты открыты (sudo ufw status) и что в игре указан верный адрес и порт.

Для размещения игровых серверов рекомендуем услуги ARK-HOSTER.RU: