Установка SteamCMD: Инструмент управления игровыми серверами Steam
Установка SteamCMD на Linux, загрузка и обновление игровых серверов, скрипт автоматического обновления, анонимный вход и распространённые проблемы.
Содержание
Введение
SteamCMD (Steam Console Client) — это консольный клиент Steam, разработанный Valve. Он используется для загрузки, обновления и управления файлами игровых серверов. Установка выделенных серверов CS2, Garry's Mod, Rust, ARK, Palworld и многих других игр выполняется через SteamCMD. В этом руководстве описана установка SteamCMD на Linux, использование и настройка автоматического обновления.
Системные требования
| Ресурс | Минимум |
|---|---|
| ОС | Ubuntu 20.04+ / Debian 11+ |
| RAM | 512 МБ |
| Диск | 500 МБ (SteamCMD) + место для игрового сервера |
| Архитектура | 64-бит (требуются 32-битные библиотеки) |
Методы установки
Метод 1: Установка через APT (Ubuntu/Debian)
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y steamcmd
Метод 2: Ручная установка (Рекомендуется)
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 wget tar
sudo adduser steam --disabled-login --gecos ""
sudo su - steam
mkdir -p ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xzf steamcmd_linux.tar.gz
rm steamcmd_linux.tar.gz
Проверьте установку:
./steamcmd.sh +quit
Ручная установка позволяет создавать отдельных пользователей для каждого игрового сервера и лучше управлять правами.
Основное использование
Структура команд SteamCMD
./steamcmd.sh +login <пользователь> +force_install_dir <каталог> +app_update <app_id> +quit
Анонимный вход
Большинство игровых серверов можно загрузить с анонимным входом:
./steamcmd.sh +login anonymous +quit
Вход с аккаунтом
Некоторые серверы требуют аккаунт Steam:
./steamcmd.sh +login имя_пользователя +quit
При включённом Steam Guard потребуется ввести код подтверждения. Токен кэшируется после первого входа.
Популярные игровые серверы и App ID
| Игра | App ID | Анонимный вход |
|---|---|---|
| Counter-Strike 2 | 730 | Да |
| Garry's Mod | 4020 | Да |
| Rust | 258550 | Да |
| ARK: Survival Evolved | 376030 | Да |
| Palworld | 2394010 | Да |
| Unturned | 1110390 | Да |
| Terraria (tShock) | 105600 | Да |
| Valheim | 896660 | Да |
| Project Zomboid | 380870 | Да |
| V Rising | 1829350 | Да |
| Enshrouded | 2278520 | Да |
Примеры загрузки серверов
Сервер CS2
./steamcmd.sh \
+force_install_dir ~/cs2-server \
+login anonymous \
+app_update 730 validate \
+quit
Сервер Rust
./steamcmd.sh \
+force_install_dir ~/rust-server \
+login anonymous \
+app_update 258550 validate \
+quit
Скрипт автоматического обновления
nano ~/steamcmd/update_all.sh
#!/bin/bash
STEAMCMD="/home/steam/steamcmd/steamcmd.sh"
LOG_FILE="/home/steam/update.log"
echo "========================================" >> $LOG_FILE
echo "$(date): Обновление начато" >> $LOG_FILE
$STEAMCMD +force_install_dir /home/steam/cs2-server \
+login anonymous +app_update 730 +quit >> $LOG_FILE 2>&1
$STEAMCMD +force_install_dir /home/steam/rust-server \
+login anonymous +app_update 258550 +quit >> $LOG_FILE 2>&1
echo "$(date): Обновление завершено" >> $LOG_FILE
chmod +x ~/steamcmd/update_all.sh
crontab -e
0 4 * * * /home/steam/steamcmd/update_all.sh
Скриптовые файлы SteamCMD
nano ~/steamcmd/cs2_update.txt
@ShutdownOnFailedCommand 1
@NoPromptForPassword 1
login anonymous
force_install_dir /home/steam/cs2-server
app_update 730 validate
quit
Запуск:
./steamcmd.sh +runscript ~/steamcmd/cs2_update.txt
Установка бета-ветки
./steamcmd.sh \
+force_install_dir ~/game-server \
+login anonymous \
+app_update APP_ID -beta BETA_NAME \
+quit
Загрузка контента Workshop
./steamcmd.sh \
+login anonymous \
+workshop_download_item APP_ID WORKSHOP_ID \
+quit
Распространённые проблемы
Ошибка 32-битных библиотек
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6
Недостаточно места на диске
df -h
rm -rf ~/steamcmd/steamapps/downloading/*
rm -rf ~/steamcmd/steamapps/temp/*
Ошибки загрузки
./steamcmd.sh +force_install_dir ~/game-server \
+login anonymous +app_update APP_ID validate +quit
Рекомендации по безопасности
- Отдельные пользователи: Создавайте отдельного пользователя Linux для каждого сервера
- Не используйте root: Никогда не запускайте SteamCMD от root
- Файрвол: Открывайте только необходимые порты
- Обновления: Регулярно обновляйте
- Резервные копии: Регулярно создавайте резервные копии
Заключение
SteamCMD — основной инструмент управления игровыми серверами на Linux. С анонимным входом вы можете легко загрузить большинство серверов, а с автоматическими скриптами обновления — поддерживать их в актуальном состоянии. Мощная инфраструктура REXE VDS обеспечивает бесперебойную работу ваших серверов на базе SteamCMD.
Связанные статьи
Как установить сервер FiveM: пошаговое руководство
Полное руководство по установке сервера FiveM на REXE VDS: настройка txAdmin, портов и оптимизация производительности для GTA V roleplay-серверов.
Как установить сервер Minecraft: руководство по Paper
Полное руководство по установке сервера Paper/Spigot Minecraft на REXE VDS: настройка Java, управление плагинами и оптимизация производительности для стабильной игры.
Как установить сервер CS2: полное руководство
Полное руководство по установке выделенного сервера CS2 на REXE VDS: SteamCMD, GSLT-токен, настройка сервера, игровые режимы и защита от DDoS через Path Panel.