SteamCMD is a new tool to install and update dedicated servers using a command line interface.
Downloading and Running SteamCMD
- Download the SteamCMD Update Tool:
- Extract the contents to a directory.
- Do not extract the contents of the updater tool to the regular Steam Client folder or to a folder that has the older HLDSUpdateTool program.
- Linux: type tar xvfz steamcmd.tar.gz
- Launch SteamCMD for the first time
- 1. Open a command prompt in that directory and start SteamCmd
- Windows: type steamcmd
- Linux: type STEAMEXE=steamcmd ./steam.sh
- The program will automatically update and enter you in to a Steam> prompt. Type help for more information.
- 2. Log in with your Steam Account
- You must log out of the regular Steam client in order to properly log in to SteamCMD Update Tool
login <username> <password>
- 3. If you receive a Steam Guard error, check your e-mail for your access code and login using the following command (you'll only need to do this once per computer):
login <username> <password> <steam guard code>
- 4. You should see a message stating that you have successfully logged in with your account.
Downloading an app
- Run SteamCMD and set your app install directory.
- On some linux distributions the path cannot contain any capital letters.
force_install_dir c:\csgo-ds\ force_install_dir .\csgo-ds\
force_install_dir ~/csgo-ds/ force_install_dir ./csgo-ds/
- Install or update the app.
- Once finished, type quit to properly log off of the Steam servers.
There are two ways to automate SteamCmd.
- 1. Add commands to the command line. Example:
SteamCmd +login user password +force_install_dir ../csgo_ds +app_update 740 validate
- 2. Create a script.
- a. Put your SteamCmd commands in a text file. Example:
// update_csgo_ds.txt // login user password force_install_dir ../csgo_ds app_update 740 validate exit
- b. Run SteamCmd with the +runscript option. Example:
SteamCmd +runscript csgo_ds.txt
Protect your AccountLogin with gpg under Linux
Write your loginscript like the example and save the file as update_csgo_ds.txt. You have to encrypt with gpg the textfile with a symmetric encryption:
gpg -c --force-mdc update_csgo_ds.txt # enter your password # the new encrypted file update_csgo_ds.txt.gpg will be created # delete the original file with # rm update_csgo_ds.txt
You can check the decryption with:
gpg -d update_csgo_ds.txt.gpg # enter you password # the text will be written to stdout, when your password is ok
When everything is ok, you can use a little shell script to pipe the stdout from gpg to steam.sh:
#!/bin/sh read -p "Enter your password: " -s pass gpg --passphrase $pass -d login.gpg 2>/dev/null | STEAMEXE=steamcmd ./steam.sh pass=""