Le client de console Steam ou SteamCMD

(Dernière mise à jour le: 7 juillet 2021)

Le client de console Steam ou SteamCMD est une version en ligne de commande du client Steam. Son utilisation principale est d’installer et de mettre à jour divers serveurs dédiés disponibles sur Steam à l’aide d’une interface de ligne de commande. Il fonctionne avec les jeux qui utilisent le système de contenu SteamPipe. Tous les jeux ont été migrés de HLDSUpdateTool obsolète vers SteamCMD.

Téléchargement de SteamCMD

Windows

1. Créez un dossier pour SteamCMD.

par exemple

C:\steamcmd

2. Télécharger SteamCMD pour Windows: https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip

3. Extrayez le contenu du zip dans le dossier.

Linux

Créez un compte d’utilisateur nommé steam pour exécuter SteamCMD en toute sécurité, en l’isolant du reste du système d’exploitation. N’exécutez pas steamcmd tout en fonctionnant en tant qu’utilisateur root – le faire est un risque pour la sécurité.

1. En tant qu’utilisateur root, créez l’utilisateur steam:

useradd -m steam

2. Allez dans son dossier de base:

cd /home/steam

Package à partir de référentiels

1. Il est recommandé d’installer le package SteamCMD à partir de vos référentiels de distribution, s’il est disponible :

Ubuntu/Debian

sudo apt install steamcmd
 Games Graphique Pc de bureau   note:Si vous utilisez une machine 64 bits, vous devrez ajouter du multivers

 sudo add-apt-repository multiverse
 sudo dpkg --add-architecture i386
 sudo apt update
 sudo apt install lib32gcc1 steamcmd 

RedHat/CentOS

yum install steamcmd

Arch Linux

git clone https://aur.archlinux.org/steamcmd.git
cd steamcmd
makepkg -si

2. Liez l’exécutable steamcmd:

ln -s /usr/games/steamcmd steamcmd

docker

Si votre serveur exécute Docker, vous pouvez simplement utiliser:

docker run -it --name=steamcmd cm2network/steamcmd bash

steamcmd.sh emplacement : /home/steam/steamcmd

Cette image peut être utilisée comme image de base pour les serveurs dédiés basés sur Steam. Exemple : https://hub.docker.com/r/cm2network/csgo/

Vous trouverez la page Docker Hub associée ici : https://hub.docker.com/r/cm2network/steamcmd/

manuellement

1. Avant de commencer, vous devez d’abord installer les dépendances requises pour exécuter SteamCMD :

Ubuntu/Debian (x86-64)

sudo apt-get install lib32gcc1

RedHat/CentOS (x86-64)

yum install glibc.i686 libstdc++.i686

2. En tant qu’utilisateur root, escaladez à l’utilisateur steam:

su - steam

Si vous ne vous connectez pas en tant que root et que vous utilisez plutôt pour effectuer l’administration, transmettez-le à l’utilisateur steam comme suit: sudo

sudo -iu steam

3. Créez un répertoire pour SteamCMD et basculez-y.

mkdir ~/Steam && cd ~/Steam

4. Téléchargez et extrayez SteamCMD pour Linux.

curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -

5. Installez tmux et / ou l’écran pour faciliter la gestion du serveur

sudo apt-get install tmux screen -y;

macOS

1. Ouvrez Terminal.app et créez un répertoire pour SteamCMD.

mkdir ~/Steam && cd ~/Steam

2. Téléchargez et extrayez SteamCMD pour macOS.

curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_osx.tar.gz" | tar zxvf -

Exécution de SteamCMD

Lors de la première exécution, SteamCMD se met automatiquement à jour et vous entre dans une invite Steam>. Tapez help pour plus d’informations.

Windows

Ouvrez une invite de commandes et démarrez SteamCMD.

cd C:\steamcmd
steamcmd

Linux/macOS

Ouvrez un terminal et démarrez SteamCMD.

Si vous l’avez installé à l’aide du package à partir de référentiels :

cd ~
steamcmd

Si vous l’avez installé manuellement :

cd ~/Steam
./steamcmd.sh

Connexion SteamCMD

anonyme

Pour télécharger la plupart des serveurs de jeux, vous pouvez vous connecter de manière anonyme.

login anonymous

Avec un compte Steam

Certains serveurs nécessitent que vous vous connectiez avec un compte Steam.

 Games Graphique Pc de bureau   note:Pour des raisons de sécurité, il est recommandé de créer un nouveau compte Steam uniquement pour vos serveurs dédiés.
 Games Graphique Pc de bureau   note:Un utilisateur ne peut être connecté qu’une seule fois à tout moment (en comptant à la fois le client graphique et les connexions SteamCMD).
login <username>

Entrez ensuite votre mot de passe.

Si Steam Guard est activé sur le compte utilisateur, vérifiez votre e-mail pour un code d’accès Steam Guard et entrez-le. Cela n’est requis que la première fois que vous vous connectez (ainsi que lorsque vous supprimez les fichiers dans lesquels SteamCMD stocke les informations de connexion).

Vous devriez voir un message indiquant que vous vous êtes connecté avec votre compte.

Téléchargement d’une application

1. Démarrez SteamCMD et connectez-vous.

2. Définissez le répertoire d’installation de votre application. (Remarque : utilisez des barres obliques pour Linux/macOS et des barres obliques inverses pour Windows.)

force_install_dir <path>

par exemple, un répertoire nommé à l’intérieur du répertoire courant: cs_go

force_install_dir ./cs_go/

Pour Windows: force_install_dir c:\cs_go\

3. Installez ou mettez à jour l’application à l’aide de la commande (en fournissant un ID d’application Steam). Veuillez vérifier ici la liste des serveurs dédiés : Liste des serveurs dédiés. Pour valider également l’application, ajoutez à la commande. Pour télécharger une branche bêta, utilisez l’option – par exemple, la branche bêta HLDS est nommée et la branche bêta SrcDS est nommée . Certaines branches bêta sont protégées par un mot de passe ; pour pouvoir télécharger à partir d’eux, ajoutez également l’option. app_updatevalidate-beta <betaname>betaprerelease-betapassword <password>

app_update <app_id> [-beta <betaname>] [-betapassword <password>] [validate]

HLDS est un cas particulier: l’ID d’application est toujours 90 et un mod doit être choisi en premier. Pour ce faire, définissez l’option de configuration de l’application sur la valeur demandée. mod

app_set_config <app_id> <option_name> <option_value>
Exemple : Installez et validez le serveur dédié Counter Strike: Global Offensive :
app_update 740 validate
Exemple : Installer et valider HLDS avec Team Fortress Classic :
app_set_config 90 mod tfc
app_update 90 validate
 Games Graphique Pc de bureau   punaise:HLDS (appid 90) nécessite actuellement plusieurs exécutions de la commande avant que tous les fichiers requis soient installés avec succès. Il suffit de s’exécuter plusieurs fois jusqu’à ce qu’aucune autre mise à jour n’ait lieu.app_updateapp_update 90 validate
Exemple : Installer et valider la version bêta de HLDS (Half-Life) :
app_update 90 -beta beta validate
Exemple : installer et valider la version bêta du Counter Strike : Serveur dédié source :
app_update 232330 -beta prerelease validate
Exemple : installer et valider une version bêta privée du serveur dédié Natural Selection 2 (nom, mot de passe) :alphanatsel
[nom bêta] est le nom de la branche bêta privée
[code bêta] est le mot de passe de la branche bêta privée
app_update 4940 -beta alpha -betapassword natsel validate

3. Une fois terminé, tapez pour vous déconnecter correctement des serveurs Steam. quit

quit

valider

validate

Validate est une commande qui vérifie tous les fichiers du serveur pour s’assurer qu’ils correspondent aux fichiers SteamCMD. Cette commande est utile si vous pensez que les fichiers peuvent être manquants ou corrompus.

 Games Graphique Pc de bureau   note:La validation remplace tous les fichiers qui ont été modifiés. Cela peut entraîner des problèmes avec les serveurs personnalisés. Par exemple, si vous personnalisez , ce fichier sera remplacé par la valeur par défaut du serveur. Tous les fichiers qui ne font pas partie de l’installation par défaut ne seront pas affectés.mapcycle.txt

Il est recommandé d’utiliser cette commande uniquement lors de l’installation initiale et s’il existe des problèmes de serveur.

Serveurs pris en charge

Une liste des serveurs connus qui utilisent SteamCMD pour l’installation est disponible sur la page Liste des serveurs dédiés. Notez que toutes les commandes supplémentaires répertoriées doivent être exécutées avant la ligne app_update.

Automatisation de SteamCMD

Il existe deux façons d’automatiser SteamCMD. (Remplacer par sur Linux/macOS.) steamcmd./steamcmd.sh

ligne de commande

 Games Graphique Pc de bureau   note:Lorsque vous utilisez l’option sur la ligne de commande, elle doit être mise entre guillemets d’une manière spéciale, telle que .-beta+app_update "90 -beta beta"
 Games Graphique Pc de bureau   note:Si cela ne fonctionne pas, essayez de le mettre comme à la place."+app_update 90 -beta beta"

Ajoutez les commandes à la ligne de commande précédée de caractères plus, par exemple :

steamcmd +login anonymous +force_install_dir ../csgo_ds +app_update 740 +quit

Pour installer un mod de jeu spécifique pour HL1, tel que Counter-Strike: Condition Zero:

steamcmd +login anonymous +force_install_dir ../czero +app_set_config 90 mod czero +app_update 90 +quit

Pour un jeu qui nécessite des connexions, comme Killing Floor:

steamcmd +login <username> <password> +force_install_dir c:\KFServer\ +app_update 215350 +quit

Création d’un script

1. Placez vos commandes SteamCMD dans un fichier texte. (Vous pouvez ajouter des commentaires qui commencent par .) exemple: //

// update_csgo_ds.txt
//
@ShutdownOnFailedCommand 1 //set to 0 if updating multiple servers at once
@NoPromptForPassword 1
login <username> <password>
//for servers which don't need a login
//login anonymous 
force_install_dir ../csgo_ds
app_update 740 validate
quit

2. Exécutez SteamCMD avec l’option, en référence au fichier que vous avez créé précédemment. exemple: +runscript

steamcmd +runscript csgo_ds.txt

Installation multiplateforme

Il est possible de choisir la plate-forme pour laquelle SteamCMD doit télécharger des fichiers, même si ce n’est pas la plate-forme sur laquelle elle s’exécute actuellement. Cela se fait à l’aide de la variable. (Oui, ce sont deux « s » au début du nom de la variable.) Par exemple, pour télécharger le serveur dédié Windows CSGO sur Linux, vous pouvez exécuter la commande suivante : @sSteamCmdForcePlatformType

./steamcmd.sh +@sSteamCmdForcePlatformType windows +login anonymous +force_install_dir ../csgo_ds +app_update 740 validate +quit

ou utilisez le script suivant :

@ShutdownOnFailedCommand 1
@NoPromptForPassword 1
@sSteamCmdForcePlatformType windows
login anonymous
force_install_dir ../csgo_ds
app_update 740 validate
quit

Les valeurs prises en charge sont , et . windowsmacoslinux

Logiciels/scripts Windows

condenseur

condenser est un programme d’amorçage pour l’installation, la configuration et le lancement d’applications serveur dédiées Steam.

Mise à jour automatique SteamCMD

Installer et mettre à jour automatiquement n’importe quel serveur de jeux

Référentiel GitHub : https://github.com/C0nw0nk/SteamCMD-AutoUpdate-Any-Gameserver

Interface graphique SteamCMD

Cet outil permet à l’utilisateur d’utiliser SteamCMD sur Windows sans lignes de commande et/ou fichiers de commandes.

Référentiel GitHub : https://github.com/DioJoestar/SteamCMD-GUI

SteamCMD Guardian 1.2

Voir et télécharger ici: http://pastebin.com/BRUbsGQh

SteamPS

SteamPS est un module PowerShell qui peut être utilisé pour mettre à jour les serveurs, récupérer des informations sur le serveur. Il présente également un flux de travail pour mettre à jour les serveurs de jeux.

Linux Scripts

LinuxGSM

Gestionnaires de serveurs de jeux Linux

LinuxGSM est l’outil de ligne de commande pour un déploiement et une gestion rapides et simples des serveurs de jeux dédiés Linux.

fonctionnalités

  • installateur
  • Updater
  • moniteur
  • Alertes
  • Détails du serveur
  • Sauvegardes
  • consoler

Serveurs pris en charge

Il y a maintenant plus de 100 serveurs de jeux différents pris en charge et en hausse. Pour une liste complète, visitez le site Web.

Liens

Site Web : https://linuxgsm.com

Référentiel GitHub : https://github.com/GameServerManagers/LinuxGSM

SteamCMD Guardian 1.2

Le script suivant a été testé sur Debian Wheezy.

Voir et télécharger ici: http://pastebin.com/hcpMpmaZ

installation

Pour que ce script fonctionne, nous avons besoin d’un emplacement. De préférence, vous avez créé un utilisateur (par exemple steam) avec son propre répertoire de base (/ home / steam) et vous êtes connecté via SSH, tty ou en utilisant su.

  1. Créer le fichier.
    nano updateserver.sh
  2. Coller dans le code
  3. Modifiez le code, ajoutez au moins 1 jeu aux lignes.DL_SV*=
  4. Fermez le fichier avec Ctrl+o, suivi de  Entrez et en concluant avec Ctrl+X.
  5. Accorder des droits d’exécution au fichier pour l’utilisateur
    chmod u+x ./updateserver.sh
  6. Exécuter le fichier
    ./updateserver.sh

Le fichier téléchargera automatiquement SteamCMD, le mettra à jour et installera tous les jeux choisis (jusqu’à 4). Réexécutez le fichier pour mettre à jour les jeux.

Problèmes connus

erreur! Echec de l’installation de l’application ‘xxxxxx’ (pas d’abonnement)

Si vous obtenez l’erreur « Aucun abonnement », le jeu / serveur que vous essayez de télécharger nécessite une connexion ou que vous avez acheté le jeu. Vous devrez donc vous connecter avec un nom d’utilisateur et un mot de passe Steam – si cela ne vous aide pas, vous devrez peut-être d’abord acheter une copie du jeu sur Steam. 

 Games Graphique Pc de bureau   note:Pour des raisons de sécurité, il est recommandé de créer un nouveau compte Steam uniquement pour vos serveurs dédiés.

par exemple

steamcmd +login <username> <password>

Bibliothèques 32 bits sur les systèmes Linux 64 bits

Étant donné que SteamCMD est un binaire 32 bits, des bibliothèques 32 bits sont requises.

L’erreur suivante peut se produire :

steamcmd: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

La résolution dépend de votre distribution:

Distributions basées sur Debian (Ubuntu, Mint, etc.)

sudo apt-get install lib32stdc++6
 Games Graphique Pc de bureau   note:ia32-libs ne sont pas requis pour installer SteamCMD ; suffit.lib32gcc1

Avec Debian 7 « Wheezy », vous pouvez rencontrer cette erreur :

The following packages have unmet dependencies: ia32-libs : Depends: ia32-libs-multiarch but it is not installable
E: Unable to correct problems, you have held broken packages.

Pour résoudre ce problème, procédez comme suit :

 dpkg --add-architecture i386
 apt-get update
 apt-get install lib32gcc1

Distributions basées sur Red Hat (RHEL, Fedora, CentOS, etc.)

yum install glibc.i686 libstdc++.i686

Arch Linux

N’oubliez pas d’activer d’abord le référentiel multilib.

pacman -S lib32-gcc-libs

Échec de la connexion : aucune connexion

Sur les serveurs Linux, vous pouvez rencontrer une erreur « Échec de connexion: aucune connexion ». Ceci est lié aux règles iptables manquantes. Vous voudrez quelque chose dans ce sens:

iptables -A INPUT -p udp -m udp --sport 27000:27030 --dport 1025:65355 -j ACCEPT
iptables -A INPUT -p udp -m udp --sport 4380 --dport 1025:65355 -j ACCEPT

La liste des ports se trouve ici : https://support.steampowered.com/kb_article.php?ref=8571-GLVN-8711&l=english

Sur les serveurs Windows, vous pouvez rencontrer « SteamUpdater: Erreur: Échec du téléchargement: erreur http 0 » et « SteamUpdater: Erreur: Steam doit être en ligne pour mettre à jour. Veuillez confirmer votre connexion réseau et réessayer. Ceci est généralement résolu en cochant « Détecter automatiquement les paramètres » dans IE (Internet Explorer) via les paramètres lan dans le menu d’options Internet.

  1. Ouvrez Internet Explorer (IE).
  2. Cliquez sur Outils  Options Internet
  3. Cliquez sur l’onglet Connexions
  4. En bas, vous devriez voir Paramètres du réseau local (LAN).
  5. Cochez la première case (Détecter automatiquement les paramètres)
  6. Appuyez sur OKet sur Appliquer. Essayez à nouveau d’exécuter SteamCMD ; si cela ne fonctionne toujours pas. essayez d’abaisser votre zone de niveau de sécurité Internet à moyen ou inférieur. Vous pouvez le trouver dans l’onglet Sécurité des Options Internet.

Erreurs de démarrage de SteamCMD

Impossible de localiser une instance en cours d’exécution de Steam

Vous pouvez obtenir l’erreur suivante lors du démarrage d’un serveur avec Linux:

[S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.dll.

Résolvez le problème en créant une liaison vers le répertoire : steamclient.so~/.steam/sdk32/steamclient.so

ln -s steamcmd/linux32/steamclient.so ~/.steam/sdk32/steamclient.so

Erreur de démarrage de Linux ulimit

Certains utilisateurs peuvent obtenir une erreur (aucune autorisation / impossible d’ouvrir le fichier) lors du démarrage du script. Cette erreur est due à un paramètre faible du paramètre (nombre de descripteurs de fichiers) de . SteamCMD utilise des commandes standard à l’intérieur du script shell d’initialisation pour modifier automatiquement le, mais certains serveurs peuvent interdire d’augmenter les valeurs après le démarrage (ou au-delà d’une limite définie par ). ulimit-nulimitulimitulimitroot

Cela peut être corrigé en modifiant le numéro de descripteur de fichier ulimit:

ulimit -n 2048

Si une erreur apparaît(pas d’autorisation),vous devrez vous connecter en tant que root pour modifier le paramètre. Pour vérifier le paramètre actuel, tapez ulimit -a; le système répondra avec de nombreuses lignes, vous devez en trouver une:

open files                      (-n) 1024

Dans ce cas, 1024 est la valeur actuelle.

root peut également modifier les limites dans le fichier. /etc/security/limits.conf

Dans la plupart des cas, vous recevrez simplement un message d’avertissement, mais cela n’empêchera pas SteamCMD de s’exécuter.

Obtention d’une steamclient.so Linux 64 bits sur une machine Windows

WSL ne joue pas bien avec les fichiers 32 bits. Si vous avez besoin du fichier steamclient.so 64 bits, vous pouvez simplement exécuter la commande suivante:

steamcmd.exe +@sSteamCmdForcePlatformType linux +login anonymous +app_update 1007 +quit

Vous trouverez alors le fichier ici:

.\steamapps\common\Steamworks SDK Redist\linux64

Seul le moteur HLDS est téléchargé

Lorsque vous essayez de télécharger un mod HL1 comme TFC, initialement, il ne télécharge que les fichiers du moteur du HLDS, mais pas le mod. Cela se produit à la fois avec la version régulière et la version bêta. Vous devrez peut-être essayer plusieurs fois jusqu’à ce que tous les fichiers requis soient téléchargés, mais une fois que cela est fait, les fichiers doivent être mis à jour correctement la prochaine fois.

Contourner ce problème ici : http://danielgibbs.co.uk/2017/10/hlds-steamcmd-workaround-appid-90-part-ii/

Il suffit de supprimer les fichiers appmanifest, sans télécharger les remplacements d’un tiers, peut fonctionner aussi bien! Vous obtiendrez une erreur au début, se plaignant que quelque chose s’est mal passé, ce qui est dû aux fichiers supprimés.

FaiblePa malMoyenIntéressantExilent (No Ratings Yet)
Loading...

Laisser un commentaire

Translate »