LIONFIN
Oyun Sunucuları

SteamCMD Kullanımı: Oyun Sunucusu Dosyalarını İndirme ve Güncelleme

5 dk okuma Güncelleme: 1 görüntülenme
SteamCMD Kullanımı: Oyun Sunucusu Dosyalarını İndirme ve Güncelleme

SteamCMD kullanımı, Steam üzerinde dağıtılan oyun sunucularını (dedicated server) grafik arayüz olmadan kurmanın ve güncellemenin standart yoludur. SteamCMD, Valve’ın Steam istemcisinin komut satırı sürümüdür; Linux ve Windows sunucularda çalışır ve tek bir komut satırıyla gigabaytlarca sunucu dosyasını indirip doğrulayabilir.

CS2, Team Fortress 2, Garry’s Mod, Valheim ve 7 Days to Die gibi pek çok oyunun sunucusu SteamCMD ile kurulur. Bu kurulumları kendi VDS sunucunuzda yapabilir ya da LIONFIN oyun sunucuları panelinde hazır bulabilirsiniz; örneğin CS2 sunucu kiralama ve Valheim sunucu kiralama sayfalarında paketler listelenir.

Kısa cevap

SteamCMD kullanımı, Valve’ın komut satırı Steam istemcisiyle oyun sunucusu dosyalarını indirip güncellemektir. Temel komut sırası şudur: +force_install_dir ile kurulum klasörünü belirleyin, +login anonymous ile oturum açın, +app_update UYGULAMA_ID validate ile dosyaları indirin ve +quit ile çıkın. Uygulama kimliği oyunun değil, sunucu yazılımının kimliğidir; örneğin CS2 için 730, CS 1.6 (HLDS) için 90. Bazı sunucular anonim yerine oyunu satın almış bir hesap ister.

SteamCMD Linux ve Windows’ta nasıl kurulur?

Ubuntu’da SteamCMD, multiverse deposundaki paketle; Windows’ta ise Valve’ın dağıttığı steamcmd.zip dosyasıyla kurulur.

Ubuntu / Debian türevleri: SteamCMD 32 bit bileşenler içerdiği için önce i386 mimarisini etkinleştirin:

sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y steamcmd lib32gcc-s1
sudo useradd -m -s /bin/bash steam
sudo -iu steam
/usr/games/steamcmd +quit

İlk çalıştırmada SteamCMD kendini günceller; +quit ile güncelleme bitince çıkar. Paket kullanmak istemezseniz Valve’ın Linux arşivini ev dizinine açıp ./steamcmd.sh ile de çalıştırabilirsiniz.

Windows: steamcmd.zip dosyasını C:\steamcmd gibi boş bir klasöre açın ve steamcmd.exe dosyasını bir kez çalıştırın; gerekli dosyaları indirip güncellenir.

Sunucu dosyalarını ve SteamCMD’yi root yerine ayrı bir kullanıcıyla çalıştırmak, olası bir açığın tüm sisteme yayılmasını önler. Sunucunun ilk güvenlik ayarları için VPS ilk kurulum adımları rehberine bakabilirsiniz.

SteamCMD komutları hangi sırayla kullanılır?

SteamCMD kullanımı tek bir kurala dayanır: komutlar tek satırda, başlarına + konarak sırayla yazılır; kurulum klasörü oturum açılmadan önce belirlenmelidir.

steamcmd +force_install_dir /home/steam/sunucu +login anonymous +app_update 896660 validate +quit
KomutGörevi
+force_install_dir YOLDosyaların kurulacağı klasör; +login komutundan önce gelmelidir
+login anonymousHesapsız oturum; çoğu sunucu için yeterlidir
+login KULLANICIHesapla oturum; oyunun sahipliğini isteyen sunucular için
+app_update IDUygulamayı kurar ya da günceller
validateTüm dosyaları doğrular, bozuk ya da eksik olanları yeniden indirir
-beta DALBelirli bir beta dalını kurar (app_update ID -beta DAL)
+app_info_print IDUygulama bilgilerini ve dalları gösterir
+quitİşlem bitince SteamCMD’den çıkar

validate ilk kurulumda ve sorun şüphesinde kullanılır; her güncellemede çalıştırmak, sizin değiştirdiğiniz bazı oyun dosyalarının da varsayılana döndürülmesine yol açabilir.

Hangi oyun sunucusu hangi uygulama kimliğini kullanır?

SteamCMD’de indirdiğiniz şey oyunun kendisi değil, ayrı bir uygulama kimliğine (App ID) sahip sunucu yazılımıdır; bu kimlik çoğu zaman mağazadaki oyun kimliğinden farklıdır. Sık kullanılan örnekler:

OyunSunucu App IDNot
Counter-Strike 2730Sunucu ve istemci aynı kimliği paylaşır
Counter-Strike 1.6 (HLDS)90+app_set_config 90 mod cstrike gerekir
Team Fortress 2232250Ayrı sunucu uygulaması
Garry’s Mod4020SRCDS tabanlı
Valheim896660Bazı kullanıcılar anonim oturumda sorun bildiriyor
7 Days to Die294420Ayrı sunucu uygulaması

Kimliği bilmediğiniz bir oyun için oyunun resmî sunucu belgelerine ya da Steam kütüphanesindeki Araçlar (Tools) listesine bakın. Bazı oyunların sunucu uygulamaları anonim oturuma kapalıdır ve oyunu satın almış bir hesapla +login gerektirir. Oyuna özel adımlar için CS2 sunucu kurulumu ve CS 1.6 sunucu kurulumu rehberlerine bakabilirsiniz.

Hesapla oturum açmak ve Steam Guard nasıl yönetilir?

Anonim oturumun yetmediği sunucularda SteamCMD’ye bir Steam hesabıyla girilir; hesapta Steam Guard açıksa ilk girişte bir doğrulama kodu istenir.

  1. SteamCMD’yi etkileşimli başlatıp login KULLANICI yazın, parolanızı ve Steam Guard kodunu girin.
  2. Başarılı girişten sonra oturum bilgisi önbelleğe alınır; sonraki çalıştırmalarda yalnızca kullanıcı adı yeterli olur.
  3. Betiklerde parolayı komut satırına yazmayın; komut geçmişinde ve süreç listesinde görünür.

Güvenlik için sunucularda kişisel ana hesabınız yerine yalnızca gerekli oyunlara sahip ayrı bir Steam hesabı kullanmak daha doğru bir yaklaşımdır. Sunucu ele geçirilirse önbellekteki oturum bilgisi kötüye kullanılabilir; bu yüzden SteamCMD’yi yetkisiz ayrı bir kullanıcıyla çalıştırın ve SSH erişimini anahtarla sınırlandırın.

Dikkat: Steam hesabı parolanızı paylaşılan betiklere, yapılandırma dosyalarına ya da destek taleplerine yazmayın; gerekiyorsa ayrı bir hesap açın.

Güncelleme betiği ve runscript nasıl kullanılır?

Düzenli SteamCMD kullanımı için sık tekrarlanan komutları bir betik dosyasında toplayıp +runscript ile çalıştırmak, güncellemeleri tek komuta indirir ve yazım hatası riskini azaltır. Örnek guncelle.txt:

force_install_dir /home/steam/cs2
login anonymous
app_update 730
quit

Betik dosyasında komutların başına + konmaz. Çalıştırmak için:

/usr/games/steamcmd +runscript /home/steam/guncelle.txt

Tam bir güncelleme düzeni genellikle şu sırayı izler:

  1. Sunucuyu durdurun (systemctl stop).
  2. Gerekiyorsa yapılandırma ve kayıt dosyalarının yedeğini alın.
  3. SteamCMD betiğini çalıştırın.
  4. Sunucuyu yeniden başlatın ve günlükleri kontrol edin.

Bu adımları bir kabuk betiğine yazıp zamanlanmış görevle gece saatlerinde çalıştırabilirsiniz; ancak eklentili sunucularda güncellemenin eklentileri bozabileceğini unutmayın. Zamanlanmış görev ayrıntıları için Linux temel komutlar rehberi başlangıç sağlar, yedek düzeni için oyun sunucusu yedekleme rehberine bakın.

Workshop içerikleri ve sık hatalar

Steam Workshop’taki haritalar ve modlar workshop_download_item komutuyla oyunun uygulama kimliği ve içeriğin kimliği verilerek indirilir:

steamcmd +force_install_dir /home/steam/sunucu +login anonymous \
  +workshop_download_item OYUN_APP_ID ICERIK_ID +quit

İndirilen içerik oyun klasörüne değil, steamapps/workshop/content/OYUN_APP_ID/ICERIK_ID altına iner; sunucunun beklediği mod klasörüne kopyalamanız ya da bağlamanız gerekir. Bazı oyunların sunucuları Workshop koleksiyonlarını kendi başlatma parametreleriyle kendiliğinden indirir.

Sık karşılaşılan sorunlar:

  • “No subscription” hatası: Uygulama anonim oturuma kapalıdır; sahip olan bir hesapla giriş yapın.
  • İndirme yarıda kesiliyor: Disk alanını kontrol edin ve aynı komutu yeniden çalıştırın; SteamCMD kaldığı yerden devam eder.
  • Sunucu güncellemeden sonra açılmıyor: validate ile dosyaları doğrulayın; eklentileri geçici olarak kaldırıp deneyin.
  • Oyuncular “sunucu sürümü eski” uyarısı alıyor: Oyun güncellenmiştir; sunucuyu da güncelleyin.

Sık Sorulan Sorular

SteamCMD ücretsiz mi, Steam hesabı gerekir mi?

SteamCMD ücretsizdir ve Valve tarafından dağıtılır. Sunucu yazılımlarının çoğu login anonymous ile, yani hesap olmadan indirilebilir. Bazı oyunların sunucu dosyaları ise yalnızca oyunu satın almış bir hesapla indirilebilir; bu durumda SteamCMD’ye o hesapla giriş yapmanız gerekir. Sunucular için kişisel ana hesabınız yerine ayrı bir hesap kullanmak daha güvenlidir.

force_install_dir neden login komutundan önce yazılmalı?

SteamCMD, kurulum klasörü oturum açıldıktan sonra değiştirildiğinde uyarı verir ve dosyalar beklenmedik bir konuma inebilir. Bu yüzden Valve belgeleri ve topluluk rehberleri, +force_install_dir komutunun +login komutundan önce yazılmasını önerir. Komut sırası şöyle olmalıdır: kurulum klasörü, oturum, app_update ve son olarak quit.

Sunucuyu her güncellemede validate ile mi güncellemeliyim?

Gerekmez. validate, tüm dosyaları Steam’deki kopyayla karşılaştırır ve farklı olanları yeniden indirir; bu ilk kurulumda ve dosya bozulmasından şüphelendiğinizde faydalıdır. Rutin güncellemelerde app_update komutunu validate olmadan çalıştırmak hem daha hızlıdır hem de sizin düzenlediğiniz bazı oyun dosyalarının varsayılana dönmesini önler.

SteamCMD ile beta sürüm nasıl kurulur?

app_update komutuna -beta parametresi ve dal adı eklenir: örneğin app_update UYGULAMA_ID -beta DAL_ADI. Parola korumalı dallar için ayrıca -betapassword parametresi gerekir. Hangi dalların bulunduğunu app_info_print komutuyla görebilirsiniz. Beta dalından kararlı sürüme dönmek için dal adı olarak public yazıp yeniden güncellemek yeterlidir; öncesinde yedek almayı unutmayın.

Bu makale yardımcı oldu mu?

Geri bildiriminiz için teşekkürler!

kişi faydalı buldu

Paylaş

X LinkedIn WhatsApp

Sorunuz mu var? Destek ekibimize yazın.