SteamCMD — официальный CLI для загрузки dedicated server. Запускайте его отдельным непривилегированным пользователем и храните каждый сервер в своём каталоге.
Важно: AppID и anonymous-login зависят от игры. Проверьте их в официальном списке перед загрузкой.
1. Установите 32-bit runtime
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y steamcmd lib32gcc-s1
2. Создайте пользователя
sudo useradd -m -s /bin/bash steam
sudo -iu steam
3. Установите игру по AppID
steamcmd +force_install_dir /home/steam/server +login anonymous +app_update APP_ID validate +quit
4. Обновляйте перед запуском
Повторяйте app_update в отдельном ExecStartPre или maintenance script. Не запускайте игровой процесс от root.
5. Создайте systemd service
Укажите User=steam, WorkingDirectory, Restart=on-failure, лимиты и точную команду запуска конкретной игры.
Если SteamCMD используется для публичного проекта, заранее сравните хостинги для игровых серверов по ресурсам и сетевым условиям.