SteamCMD 游戏服务器管理教程

SteamCMD 是 Valve 提供的命令行工具,用于在 Linux 服务器上安装和更新 Steam 平台的游戏专用服务端。几乎所有 Steam 上的游戏专用服务器都通过 SteamCMD 进行下载和管理,包括 CS2ValheimRustARK 等热门游戏。本文将系统介绍 SteamCMD 的安装、使用方法和自动化管理技巧。购买搬瓦工 VPS 搭建游戏服务器请参考 全部方案,使用优惠码 NODESEEK2026 可享受 6.77% 的折扣。

一、安装 SteamCMD

1.1 Ubuntu/Debian 系统

apt update
apt install lib32gcc-s1 lib32stdc++6 curl wget -y

# 创建专用用户
useradd -m -s /bin/bash steam
su - steam

# 下载并解压 SteamCMD
mkdir -p ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz

1.2 CentOS/RHEL 系统

yum install glibc.i686 libstdc++.i686 curl wget -y

useradd -m -s /bin/bash steam
su - steam

mkdir -p ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz

1.3 验证安装

~/steamcmd/steamcmd.sh +quit

首次运行时 SteamCMD 会自动更新自身,完成后显示 Steam> 提示符即表示安装成功。

二、SteamCMD 基础用法

2.1 交互模式

# 启动 SteamCMD 进入交互模式
~/steamcmd/steamcmd.sh

# 在 Steam> 提示符下执行命令
Steam> login anonymous
Steam> force_install_dir /home/steam/game-server
Steam> app_update 740 validate
Steam> quit

2.2 单行命令模式

更常用的方式是将所有命令写在一行中:

~/steamcmd/steamcmd.sh +force_install_dir ~/game-server +login anonymous +app_update 740 validate +quit

2.3 脚本模式

对于复杂的操作,可以将命令写入脚本文件:

cat > ~/steamcmd/update_cs2.txt << 'EOF'
@ShutdownOnFailedCommand 1
@NoPromptForPassword 1
force_install_dir /home/steam/cs2-server
login anonymous
app_update 730 validate
quit
EOF

# 执行脚本
~/steamcmd/steamcmd.sh +runscript ~/steamcmd/update_cs2.txt

三、常用游戏 App ID 速查表

以下是常见游戏专用服务器的 Steam App ID:

  • CS2:730
  • Valheim:896660
  • Rust:258550
  • ARK: Survival Evolved:376030
  • Palworld:2394010
  • Terraria (TShock):105600
  • 7 Days to Die:294420
  • Garry's Mod:4020
  • Team Fortress 2:232250
  • Left 4 Dead 2:222860
  • Project Zomboid:380870
  • Satisfactory:1690800

四、登录模式

4.1 匿名登录

大部分游戏服务端支持匿名登录下载,无需 Steam 账号:

~/steamcmd/steamcmd.sh +login anonymous +app_update 730 validate +quit

4.2 账号登录

少数游戏服务端需要使用拥有该游戏的 Steam 账号登录:

~/steamcmd/steamcmd.sh +login your_username your_password +app_update APPID validate +quit

如果账号开启了 Steam Guard 两步验证,首次登录时需要输入验证码。登录成功后凭据会被缓存,后续无需再次输入密码。

五、自动更新脚本

创建通用的服务端更新脚本,方便管理多个游戏服务器:

cat > ~/update-game.sh << 'EOF'
#!/bin/bash
# 通用游戏服务端更新脚本
# 用法: ./update-game.sh   [service_name]

APP_ID=$1
INSTALL_DIR=$2
SERVICE_NAME=$3

if [ -z "$APP_ID" ] || [ -z "$INSTALL_DIR" ]; then
    echo "Usage: $0   [service_name]"
    exit 1
fi

# 停止服务(如果指定了服务名)
if [ -n "$SERVICE_NAME" ]; then
    echo "Stopping $SERVICE_NAME..."
    sudo systemctl stop $SERVICE_NAME
fi

# 更新服务端
echo "Updating App ID $APP_ID..."
~/steamcmd/steamcmd.sh +force_install_dir $INSTALL_DIR +login anonymous +app_update $APP_ID validate +quit

# 启动服务
if [ -n "$SERVICE_NAME" ]; then
    echo "Starting $SERVICE_NAME..."
    sudo systemctl start $SERVICE_NAME
fi

echo "Update completed at $(date)"
EOF
chmod +x ~/update-game.sh

# 使用示例
./update-game.sh 896660 ~/valheim-server valheim
./update-game.sh 258550 ~/rust-server rust

六、定时自动更新

# 每天凌晨 4 点自动更新所有游戏服务端
(crontab -l 2>/dev/null; echo "0 4 * * * /home/steam/update-game.sh 896660 /home/steam/valheim-server valheim >> /home/steam/logs/update.log 2>&1") | crontab -
(crontab -l 2>/dev/null; echo "10 4 * * * /home/steam/update-game.sh 258550 /home/steam/rust-server rust >> /home/steam/logs/update.log 2>&1") | crontab -

mkdir -p ~/logs

七、Workshop 内容下载

SteamCMD 也可以下载 Steam Workshop 中的 Mod 和地图:

# 下载 Workshop 物品
~/steamcmd/steamcmd.sh +login anonymous +workshop_download_item GAME_APPID WORKSHOP_ITEM_ID +quit

# 示例:下载 ARK 的某个 Mod
~/steamcmd/steamcmd.sh +login anonymous +workshop_download_item 346110 731604991 +quit

下载的内容保存在 ~/steamcmd/steamapps/workshop/content/ 目录下。

八、磁盘空间管理

# 查看各服务器占用空间
du -sh ~/*/

# 清理 SteamCMD 缓存
rm -rf ~/steamcmd/steamapps/downloading/*
rm -rf ~/steamcmd/steamapps/temp/*

# 查看总磁盘使用情况
df -h

九、常见问题

SteamCMD 更新失败

如果 SteamCMD 在更新过程中报错,可以尝试清理缓存后重试:

rm -rf ~/steamcmd/steamapps
rm -rf ~/steamcmd/package
~/steamcmd/steamcmd.sh +quit

lib32gcc 缺失

这是最常见的依赖问题,确保已安装 32 位库:

# Ubuntu/Debian
dpkg --add-architecture i386
apt update
apt install lib32gcc-s1 lib32stdc++6 -y

# CentOS
yum install glibc.i686 libstdc++.i686 -y

下载速度慢

SteamCMD 的下载速度取决于服务器到 Steam CDN 的网络质量。搬瓦工 VPS 的多个数据中心通常都有不错的下载速度。如果特别慢,可以尝试在低峰时段下载。

总结

SteamCMD 是管理 Linux 游戏服务器的核心工具,掌握它的使用方法可以轻松搭建和维护各种 Steam 游戏服务器。如果你需要更直观的图形化管理界面,推荐使用 Pterodactyl 游戏面板。具体的游戏服务器搭建教程请参阅 ValheimRustCS2幻兽帕鲁 等。购买搬瓦工 VPS 请访问 bwh81.net,使用优惠码 NODESEEK2026 可享受 6.77% 的折扣。

关于本站

搬瓦工VPS中文网(bwgvps.com)是非官方中文信息站,整理搬瓦工的方案、优惠和教程。我们不销售主机,不提供技术服务。

新手必读
搬瓦工优惠码

NODESEEK2026(优惠 6.77%)

购买时填入即可抵扣。