Linux komutları, bir oyun sunucusunu kontrollü şekilde kontrol etmene, dosyaları yönetmene, süreçleri izlemeni ve loglarda hataları bulmanı sağlar. game-serverhosting'de teknik kontrol, destek ve izlenebilir süreçler ön plandadır: Birçok rutin görevi rahatça yönetebilirsin, ancak daha derin analiz yapmak veya manuel müdahale etmek istiyorsan en önemli terminal komutlarını bilmelisin.

Ön koşullar

Aşağıdaki komutlar için bir Linux sunucusuna veya etkinleştirilmiş SSH/terminal erişimine, uygun kullanıcı izinlerine ve oyun sunucusu dizininin yoluna ihtiyacın var. Mümkünse root olarak körlemesine çalışma. Yapılandırma dosyalarını değiştiriyorsan önce bir kopya oluştur ve neyi değiştirdiğini belgele.

Dosyaları grafik arayüzlü bir istemciyle yönetmeyi tercih ediyorsan, tamamlayıcı olarak oyun sunucusu dosyaları için SFTP erişimi rehberine bakabilirsin. Oyun içi admin komutları ayrı bir konudur: Valheim için bunları Valheim sunucu komutları ve admin komutları rehberinde, Rust için Rust sunucu komutları ve admin komutları rehberinde bulabilirsin.

Dosya sistemi

Bu komutlarla dizin ağacında yönünü bulur, dosyaları veya klasörleri değiştirirsin. Riskli işlemlerden önce her zaman mevcut yolu pwd ile ve içeriği ls -la ile kontrol et.

ls -la                    # Dosyaları göster
cd /home/server           # Klasör değiştir
pwd                       # Mevcut yolu göster
cp datei.txt backup.txt   # Dosyayı kopyala
mv alt.txt neu.txt        # Dosyayı yeniden adlandır/taşı
rm datei.txt              # Dosyayı sil
mkdir ordner              # Klasör oluştur
chmod +x start.sh         # Çalıştırılabilir yap

cp, tekil yapılandırma dosyalarının hızlı yedekleri için uygundur. mv, dosyaları yeniden adlandırabilir veya taşıyabilir. rm çöp kutusu olmadan siler; bu yüzden yalnızca dosya adı ve yol doğruysa kullan. Sunucu eksik çalıştırma izinleri nedeniyle başlamıyorsa, chmod +x start.sh ile bir başlatma betiğini çalıştırılabilir yaparsın.

Süreçler

Süreç komutları, bir oyun sunucusunun çalışıp çalışmadığını, CPU ve RAM yükünün ne kadar olduğunu ve hedefli bir yeniden başlatma için hangi süreç kimliğine ihtiyacın olduğunu gösterir.

ps aux | grep server      # Süreçleri ara
top                       # CPU/RAM özeti
htop                      # Daha iyi özet
kill <PID>                # Süreci sonlandır
kill -9 <PID>             # Süreci zorla sonlandır
screen -S server          # Screen oturumu başlat
screen -r server          # Oturuma devam et

kill <PID> bir süreci normal şekilde sonlandırır. kill -9 <PID> sonlandırmayı zorlar ve istisna olarak kalmalıdır, çünkü sunucu bu sırada temiz kayıt veya kapanış adımlarını artık gerçekleştiremeyebilir. screen, SSH oturumunu kapattıktan sonra bir sunucu sürecinin çalışmaya devam etmesi gerektiğinde kullanışlıdır.

Ağ komutları, port izinlerini, erişilebilirliği ve firewall kurallarını kontrol etmene yardımcı olur. Bu özellikle bir sunucu yerelde çalışıyor ama oyun tarayıcısında görünmüyorsa önemlidir.

netstat -tulpn            # Açık portları göster
ss -tulpn                 # Daha modern alternatif
ping 8.8.8.8              # Bağlantıyı test et
traceroute server.de      # Rotayı izle
iptables -L               # Firewall kuralları
ufw status                # UFW durumu
ufw allow 25565/tcp       # Port aç

ss -tulpn, birçok güncel Linux sisteminde dinleyen TCP ve UDP portlarını görmek için tercih edilen seçenektir. ping temel erişilebilirliği kontrol eder, ancak oyun portunun açık olup olmadığını söylemez. ufw allow 25565/tcp bir port izni örneğidir; portu ve protokolü oyununun değerleriyle değiştir.

Dosyaları düzenleme ve logları okuma

Loglar çoğu zaman sebebe giden en hızlı yoldur: eksik mod dosyaları, yanlış başlatma parametreleri, port çakışmaları veya bozuk yapılandırmalar genellikle görünür belirtilerden önce orada ortaya çıkar.

nano datei.txt            # Editörü aç
vim datei.txt             # Vim editörü
cat datei.txt             # Dosyayı göster
tail -f server.log        # Logu canlı izle
grep "error" server.log   # Dosyada ara

nano hızlı değişiklikler için daha kolay erişilebilir, vim daha güçlüdür ama alışkanlık gerektirir. tail -f server.log ile başlatmayı canlı izlersin. grep "error" server.log hata mesajlarına göre filtreler; gerekirse ek olarak failed, exception, denied, port veya bir modun adı gibi terimleri de ara.

Sunucu yönetimi

Oyun sunucun systemd servisi olarak kurulduysa, onu systemctl ile kontrol eder ve sistem loglarını journalctl ile okursun. Resmi systemd dokümantasyonu systemctl aracını systemd sistem ve servis yöneticisini kontrol etmek için kullanılan araç olarak açıklar: freedesktop.org dokümantasyonu

systemctl status server   # Servis durumu
systemctl restart server  # Servisi yeniden başlat
journalctl -u server      # Logları göster
df -h                     # Depolama alanını kontrol et
free -h                   # RAM kullanımı

systemctl status server, bir servisin aktif olup olmadığını ve hangi son log satırlarının ilgili olabileceğini gösterir. Daha fazla geçmişe ihtiyacın varsa journalctl -u server daha ayrıntılıdır. df -h boş depolama alanını kontrol eder; dolu diskler güncellemeleri, kayıt dosyalarını ve log dosyalarını engelleyebilir. free -h, belleğin azalıp azalmadığını gösterir.

SteamCMD

Birçok dedicated oyun sunucusu SteamCMD üzerinden kurulur veya güncellenir. Mevcut komut anonim giriş kullanır, bir App-ID'yi günceller, dosyaları doğrular ve ardından SteamCMD'yi kapatır.

steamcmd +login anonymous +app_update <appid> validate +quit
Oyun App-ID
CS2 730
Rust 258550
ARK 376030
Valheim 896660
7D2D 294420

<appid> değerini uygun App-ID ile değiştir. Bir güncellemeden sonra sunucuyu başlatmalı, başlatma logunu kontrol etmeli ve sunucunun erişilebilir olup olmadığını test etmelisin. Modifiye edilmiş sunucularda validate yerel değişikliklerin üzerine yazabilir; bu yüzden önemli yapılandırmaları ve mod dosyalarını önceden yedekle.

Sonucu kontrol et

Değişikliklerden sonra üç adımda kontrol et: Süreç çalışıyor mu, port dinliyor mu ve loglar yeni hata göstermiyor mu? Pratik sıra şudur: systemctl status server veya ps aux | grep server, ardından ss -tulpn, son olarak tail -f server.log veya journalctl -u server. Ancak bu katman uygunsa oyun istemcisinde test etmeye değer.

Sorun giderme

Sunucu başlamıyor

Önce başlatma logunu kontrol et. Yaygın sebepler start.sh üzerinde eksik çalıştırma izinleri, yanlış çalışma klasörü, eksik dosyalar veya dolu bir porttur. pwd, ls -la, chmod +x start.sh komutlarını ve ardından log çıktısını kontrol et.

Porta erişilemiyor

Oyun portunu, query portunu ve protokolü karşılaştır. Bazı oyun sunucuları TCP ve UDP'yi farklı kullanır. Servisin dinleyip dinlemediğini ss -tulpn ile, firewall'un bağlantıya izin verip vermediğini ufw status ile kontrol et.

Süreç takılıyor veya yanıt vermiyor

Süreç kimliğini ps aux | grep server ile ara. Önce servis veya oyun sunucusu konsolu üzerinden normal durdurmayı dene. kill -9 <PID> komutunu yalnızca süreç artık temiz şekilde sonlandırılamıyorsa kullan.

Güncelleme yapılandırmayı değiştirdi

SteamCMD doğrulamasından sonra ayarlar eksikse yedeğini geri yükle veya etkilenen dosyaları karşılaştır. Özellikle modlarda ve özelleştirilmiş başlatma parametrelerinde değişiklikleri güncellemelerden önce yedeklemelisin.

Kontrol, sınırlar ve güvenli geri dönüş

“Linux oyun sunucusu komutları – önemli terminal komutları” rehberi, makalede açıklanan sunucu türü ve kontrol anında görünen sürüm durumu için geçerlidir. Menü adları, mevcut sürümler, mod veya eklenti uyumluluğu ve gereken kaynaklar güncellemelerden sonra farklılık gösterebilir. Bu yüzden değerleri kontrol etmeden başka bir oyun, loader veya sunucu sürümüne aktarma.

Dünya, kayıt, yapılandırma veya eklentilerde değişiklik yapmadan önce etkilenen dosyaların yedeğini oluştur. Ardından yalnızca birbiriyle ilişkili tek bir adımı değiştir ve daha sonra oynamak istediğin aynı istemci ve sunucu sürümüyle kontrol et.

Kontrol noktası Beklenen sonuç İptal ve geri dönüş
Sunucu başlangıcı Sunucu yeni hata mesajı olmadan çalışmaya hazır duruma ulaşır. Başlatma hatalarında değişikliği geri al ve son yedeği yükle.
Bağlantı testi Bir test hesabı panelde gösterilen adres üzerinden bağlanabilir. Sürüm veya bağlantı hatalarında sürümü, portu ve izinleri tekrar karşılaştır.
İşlev testi Somut olarak değiştirilen işlev, mevcut dünya veya oyun verilerine zarar vermeden çalışır. Yan etkilerde sunucuyu durdur ve yedeklenen dosyaları geri yükle.

Başarılı tekil bir test, performans veya erişilebilirlik garantisi değildir. Dünya boyutu, modlar, eklentiler, oyuncu sayısı, ağ yolu ve eşzamanlı yük sonucu değiştirebilir. Daha sonraki sapmaları takip edebilmen için sürümü, değişikliği ve test sonucunu belgele.

FAQ

game-serverhosting'de bu Linux komutlarına her zaman ihtiyacım var mı?

Hayır. Birçok standart görev yönetim arayüzleri ve desteklenen işletim süreçleri üzerinden çalışır. Komutlar özellikle teknik sebepleri kendin izlemek veya destek yönergeleriyle hedefli şekilde çalışmak istediğinde faydalıdır.

netstat mı yoksa ss mi daha iyi?

ss, daha yeni araç ailesini kullandığı için modern Linux sistemlerinde genellikle daha uygun seçimdir. Sisteminde netstat mevcutsa basit kontroller için yine de çalışabilir.

kill -9 komutunu ne zaman kullanmalıyım?

Yalnızca bir süreç normal durdurmalara yanıt vermediğinde son çare olarak. Zorla sonlandırma yazma işlemlerini kesebilir, bu yüzden ardından logları ve kayıt dosyalarını kontrol etmelisin.

SteamCMD'yi her oyun için anonim kullanabilir miyim?

Hayır. Gösterilen komut yalnızca anonim erişime izin veren sunucu uygulamaları için çalışır. Bir oyun giriş veya ek izinler gerektiriyorsa ilgili oyunun resmi dokümantasyonuna dikkat etmelisin.

Hata arama için en önemli komut hangisi?

Tek bir komut yok. Pratikte tail -f server.log, ss -tulpn ve systemctl status server kombinasyonu özellikle faydalıdır, çünkü log hatalarını, portları ve servis durumunu birlikte görünür kılar.