انتقل إلى المحتوى الرئيسي
العودة إلى الفئة

تثبيت SteamCMD: أداة إدارة خوادم ألعاب Steam

تثبيت SteamCMD على Linux، تنزيل وتحديث خوادم الألعاب، سكريبت التحديث التلقائي، تسجيل الدخول المجهول والمشاكل الشائعة.

وقت القراءة: 12 دقيقة إعداد خادم الألعاب
steamcmdsteamخادم ألعابlinuxتثبيتتحديث

جدول المحتويات

مقدمة

SteamCMD (Steam Console Client) هو عميل Steam يعمل من سطر الأوامر طوّرته Valve. يُستخدم لتنزيل وتحديث وإدارة ملفات خوادم الألعاب. يتم إعداد الخوادم المخصصة لـ CS2 و Garry's Mod و Rust و ARK و Palworld والعديد من الألعاب الأخرى من خلال SteamCMD. يغطي هذا الدليل تثبيت SteamCMD على Linux واستخدامه وتكوين التحديث التلقائي.

متطلبات النظام

الموردالحد الأدنى
نظام التشغيلUbuntu 20.04+ / Debian 11+
الذاكرة512 ميجابايت
القرص500 ميجابايت (SteamCMD) + مساحة خادم اللعبة
البنية64-بت (مكتبات 32-بت مطلوبة)

طرق التثبيت

الطريقة 1: التثبيت عبر APT (Ubuntu/Debian)

hljs bash
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y steamcmd

الطريقة 2: التثبيت اليدوي (موصى به)

hljs bash
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

تحقق من التثبيت:

hljs bash
./steamcmd.sh +quit

التثبيت اليدوي يتيح لك إنشاء مستخدمين منفصلين لكل خادم لعبة وإدارة الصلاحيات بشكل أفضل.

الاستخدام الأساسي

هيكل أوامر SteamCMD

hljs bash
./steamcmd.sh +login <مستخدم> +force_install_dir <مجلد> +app_update <app_id> +quit

تسجيل الدخول المجهول

معظم خوادم الألعاب يمكن تنزيلها بتسجيل دخول مجهول:

hljs bash
./steamcmd.sh +login anonymous +quit

تسجيل الدخول بحساب

بعض خوادم الألعاب تتطلب حساب Steam:

hljs bash
./steamcmd.sh +login اسم_المستخدم +quit

إذا كان Steam Guard مفعّلاً، ستحتاج لإدخال رمز التحقق. يتم تخزين الرمز مؤقتًا بعد أول تسجيل دخول.

خوادم الألعاب الشائعة ومعرفات التطبيقات

اللعبةمعرف التطبيقدخول مجهول
Counter-Strike 2730نعم
Garry's Mod4020نعم
Rust258550نعم
ARK: Survival Evolved376030نعم
Palworld2394010نعم
Unturned1110390نعم
Terraria (tShock)105600نعم
Valheim896660نعم
Project Zomboid380870نعم
V Rising1829350نعم
Enshrouded2278520نعم

أمثلة تنزيل خوادم الألعاب

خادم CS2

hljs bash
./steamcmd.sh \
  +force_install_dir ~/cs2-server \
  +login anonymous \
  +app_update 730 validate \
  +quit

خادم Rust

hljs bash
./steamcmd.sh \
  +force_install_dir ~/rust-server \
  +login anonymous \
  +app_update 258550 validate \
  +quit

سكريبت التحديث التلقائي

hljs bash
nano ~/steamcmd/update_all.sh
hljs bash
#!/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
hljs bash
chmod +x ~/steamcmd/update_all.sh
crontab -e
0 4 * * * /home/steam/steamcmd/update_all.sh

ملفات سكريبت SteamCMD

hljs bash
nano ~/steamcmd/cs2_update.txt
@ShutdownOnFailedCommand 1
@NoPromptForPassword 1
login anonymous
force_install_dir /home/steam/cs2-server
app_update 730 validate
quit

التشغيل:

hljs bash
./steamcmd.sh +runscript ~/steamcmd/cs2_update.txt

تثبيت فرع بيتا

hljs bash
./steamcmd.sh \
  +force_install_dir ~/game-server \
  +login anonymous \
  +app_update APP_ID -beta BETA_NAME \
  +quit

تنزيل محتوى Workshop

hljs bash
./steamcmd.sh \
  +login anonymous \
  +workshop_download_item APP_ID WORKSHOP_ID \
  +quit

المشاكل الشائعة والحلول

خطأ مكتبات 32-بت

hljs bash
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6

مساحة قرص غير كافية

hljs bash
df -h
rm -rf ~/steamcmd/steamapps/downloading/*
rm -rf ~/steamcmd/steamapps/temp/*

أخطاء التنزيل

hljs bash
./steamcmd.sh +force_install_dir ~/game-server \
  +login anonymous +app_update APP_ID validate +quit

توصيات الأمان

  1. مستخدمون منفصلون: أنشئ مستخدم Linux منفصل لكل خادم لعبة
  2. لا تستخدم root: لا تشغّل SteamCMD أبدًا كـ root
  3. جدار الحماية: افتح فقط المنافذ الضرورية
  4. التحديثات: حدّث بانتظام
  5. النسخ الاحتياطي: انسخ ملفات الخادم احتياطيًا بانتظام

الخلاصة

SteamCMD هو الأداة الأساسية لإدارة خوادم الألعاب على Linux. مع تسجيل الدخول المجهول يمكنك تنزيل معظم خوادم الألعاب بسهولة، ومع سكريبتات التحديث التلقائي تحافظ على خوادمك محدّثة. توفر بنية REXE VDS القوية تشغيلاً سلسًا لخوادم الألعاب المبنية على SteamCMD.