Pt-br/SteamCMD

O Console do Cliente Steam ou SteamCMD é uma versão de linha de comando do cliente Steam. Seu principal uso é instalar e atualizar vários servidores dedicados disponíveis no Steam usando uma interface de linha de comando. Funciona com jogos que usam o sistema de conteúdo . Todos os jogos foram migrados da ferramente obsoleta para o SteamCMD.
== Baixando o SteamCMD ==
=== Windows ===
1. Crie uma pasta para o SteamCMD.
Por exemplo
 C:\steamcmd
2. Faça o download do SteamCMD para Windows: https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip 
3. Extraia o conteúdo do zip para a pasta.
=== Linux ===
Crie uma conta de usuário chamada steam tpara executar o SteamCMD com segurança, isolando-o do resto do sistema operacional. Não execute o steamcmd enquanto estiver operando como usuário root - isso é um risco de segurança.
1. Como usuário root, crie o usuário steam:
 useradd -m steam
2. Vá para sua pasta inicial:
 cd /home/steam
==== Pacote de repositórios ====
1. É recomendado instalar o pacote SteamCMD a partir dos seus repositórios de distribuição, se disponível:
Ubuntu/Debian
 sudo apt-get install steamcmd
RedHat/CentOS
 yum install steamcmd
Para o Arch Linux: instale steamcmd do AUR.
2. Vincule o executável do steamcmd:
 ln -s /usr/games/steamcmd steamcmd
==== Manualmente ====
1. Antes de começar, você deve primeiro instalar as dependências necessárias para executar o SteamCMD:
Ubuntu/Debian 64-Bit
 sudo apt-get install lib32gcc1
RedHat/CentOS
 yum install glibc libstdc++
RedHat/CentOS 64-Bit
 yum install glibc.i686 libstdc++.i686
2. Como usuário root, escalonar para o usuário de steam:
 su - steam
Se você não estiver efetuando login como root e usar sudo a administração para escalonar para o usuário steam da seguinte maneira:
 sudo -iu steam
3. Crie um diretório para o SteamCMD e mude para ele.
 mkdir ~/Steam && cd ~/Steam
4. Faça o download e extraia o SteamCMD para Linux.
 curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -
=== OS X ===
1. Abra o Terminal.app e crie um diretório para o SteamCMD.
 mkdir ~/Steam && cd ~/Steam
2. Faça o download e extraia o SteamCMD para o OS X.
 curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_osx.tar.gz" | tar zxvf -
== Executando o SteamCMD ==
Na primeira execução, o SteamCMD atualizará automaticamente e entrará em você em um promptSteam>. Digite help para mais informações.
=== Windows ===
Abra um prompt de comando e inicie o SteamCMD.
 cd C:\steamcmd
 steamcmd
=== Linux/OS X ===
Abra um terminal e inicie o SteamCMD.
Se você instalou usando o pacote de repositórios:
 cd ~
 steamcmd
Se você instalou manualmente:
 cd ~/Steam
 ./steamcmd.sh
== Login no SteamCMD ==
=== Anônimo ===
Para baixar a maioria dos servidores de jogos, você pode fazer o login anonimamente.
 login anonymous
=== Com uma conta Steam ===
Alguns servidores exigem que você faça o login com uma conta Steam.
 login <username>
Em seguida, digite sua senha.
Se o Steam Guard estiver ativado na conta do usuário, verifique seu e-mail em busca de um código de acesso do Steam Guard e insira-o. Isto é requerido apenas na primeira vez que você efetua login (assim como quando você exclui os arquivos onde o SteamCMD armazena as informações de login).
Você deverá ver uma mensagem informando que fez login com sucesso em sua conta.
== Baixando um aplicativo ==
1. Inicie o SteamCMD e faça o login.
2. Defina seu diretório de instalação do aplicativo. (Nota: use barras para o Linux / OS X e barras invertidas para o Windows.)
 force_install_dir <path>
por exemplo, um diretório chamado cs_go dentro do diretório atual:
 force_install_dir ./cs_go/
Para Windows: force_install_dir c:\cs_go\
3. Instale ou atualize o aplicativo usando o comando app_update (sfornecendo um ). Por favor, verifique aqui a lista de servidores dedicados: . Para validar também o aplicativo, adicione o comando validate. Para baixar uma branch(ramificação) beta, use a opção -beta <betaname> – Por exemplo, a branch(ramificação) beta do HLDS é chamada beta e a branch(ramificação) do SrcDS é chamada de prerelease. Algumas branches(ramificações) são protegidas por senha; para poder fazer o download a partir delas, adicione também a opção -betapassword <password>.
 app_update <app_id> [-beta <betaname>] [-betapassword <senha>] [validate]
O HLDS é um caso especial: o ID do aplicativo é sempre 90 e um mod deve ser escolhido primeiro. Isso é feito configurando a opção de configuração do aplicativo modpara o valor solicitado.
app_set_config <app_id> <option_name> <option_value>
: Exemplo: Instale e valide o servidor dedicado do Counter-Strike: Global Offensive:
 app_update 740 validate
: Exemplo: Instale e valide o HLDS com o Team Fortress Classic:
 app_set_config 90 mod tfc
 app_update 90 validate
: Exemplo: Instale e valide a versão beta do HLDS (Half-Life):
 app_update 90 -beta beta validate
: Exemplo: instale e valide a instalação do servidor dedicado do Counter-Strike: Source:
 app_update 232330 -beta prerelease validate
: Exemplo: instalar e validar uma versão beta privada do servidor dedicado Natural Selection 2 (nome alpha, senha natsel):
: [beta name] is the name of the private beta branch
: [beta code] is the password for the private beta branch
 app_update 4940 -beta alpha -betapassword natsel validate
3. Uma vez terminado, digite quit para fazer logoff corretamente dos servidores Steam.
 quit
=== Validar ===
 validate
Validate é um comando que verificará todos os arquivos do servidor para garantir que correspondam aos arquivos do SteamCMD. Este comando é útil se você acha que os arquivos podem estar ausentes ou corrompidos.
É recomendado que você use este comando somente na instalação inicial e se houver problemas no servidor.
=== Servidores Suportados ===
Uma lista de servidores conhecidos que usam o SteamCMD para instalar está disponível na página . Note que qualquer comando extra listado precisa ser executado antes da linha app_update.
== Automatizando o SteamCMD ==
Existem duas maneiras de automatizar o SteamCMD. (Substitua steamcmd por ./steamcmd.sh no Linux/OS X.)
=== Linha de comando ===
Acrescente os comandos à linha de comando prefixados com mais caracteres, por exemplo:
 steamcmd +login anonymous +force_install_dir ../csgo_ds +app_update 740 +quit
Para instalar um mod de jogo específico para HL1, como Counter-Strike: Condition Zero:
 steamcmd +login anonymous +force_install_dir ../czero +app_set_config 90 mod czero +app_update 90 +quit
Para um jogo que requer logins, como Killing Floor:
 steamcmd +login <username> <password> +force_install_dir c:\KFServer\ +app_update 215350 +quit
=== Criando um script ===
1. Coloque seus comandos do SteamCMD em um arquivo de texto. (Você pode adicionar comentários que começam com //.) Exemplo:
// update_csgo_ds.txt
//
@ShutdownOnFailedCommand 1 //definido como 0 se atualizar vários servidores de uma só vez
@NoPromptForPassword 1
login <username> <password>
//para servidores que não precisam de login
//login anônimo 
force_install_dir ../csgo_ds
app_update 740 validate
quit
2. Execute o SteamCMD com a +runscriptopção, referindo-se ao arquivo que você criou anteriormente. Exemplo:
 steamcmd +runscript csgo_ds.txt
== Instalação entre plataformas ==
É possível escolher a plataforma para a qual o SteamCMD deve baixar arquivos, mesmo que não seja a plataforma em que está atualmente sendo executada. Isso é feito usando a variavel @sSteamCmdForcePlatformType. (Sim, esses são dois "s" no início do nome da variável.) For example, Por exemplo, para baixar o servidor dedicado do Windows CSGO no Linux, você pode executar o seguinte comando:
 ./steamcmd.sh +@sSteamCmdForcePlatformType windows +login anonymous +force_install_dir ../csgo_ds +app_update 740 validate +quit
ou use o seguinte script:
@ShutdownOnFailedCommand 1
@NoPromptForPassword 1
@sSteamCmdForcePlatformType windows
login anonymous
force_install_dir ../csgo_ds
app_update 740 validate
quit
Os valores são suportados são windows, macos e linux.
== Windows Software/Scripts ==
=== condenser ===
o condenser é um bootstrapper para instalar, configurar e iniciar aplicativos de servidor dedicados do Steam.
=== SteamCMD AutoUpdater ===
Instalar e atualizar automaticamente qualquer servidor de jogo
GitHub Repo:
https://github.com/C0nw0nk/SteamCMD-AutoUpdate-Any-Gameserver
=== SteamCMD GUI ===
Esta ferramenta permite ao usuário usar o SteamCMD no Windows sem linhas de comando e / ou arquivos em lote.
GitHub Repo:
https://github.com/DioJoestar/SteamCMD-GUI
===SteamCMD Guardian 1.2===
Veja e faça o download aqui: http://pastebin.com/BRUbsGQh
== Linux Scripts ==
===Linux Game Server Managers===
right|thumb|370px|Linux Game Server Managers
O LinuxGSM é a ferramenta de linha de comando para implementação e gerenciamento rápidos e simples de servidores de jogos dedicados, usando o SteamCMD.
====Recursos====
* Cópia de segurança
* Console
* Detalhes
* Instalador (SteamCMD)
* Monitor
* Alertas (Email, Pushbullet)
* Atualização (SteamCMD)
* Iniciar / Parar / Reiniciar servidor
====Servidores Suportados====
Existem agora mais de 70 servidores de jogos diferentes suportados e em ascensão. Para uma lista completa, visite o site
====Links====
Website: https://gameservermanagers.com
GitHub Repo: https://github.com/GameServerManagers/LinuxGSM
===SteamCMD Guardian 1.2===
O seguinte script foi testado no Debian Wheezy.
Veja e faça o download aqui:
http://pastebin.com/hcpMpmaZ
Instalação 
Para fazer este script funcionar, precisamos de um local. De preferência você criou um usuário (por exemplo, steam) com seu próprio diretório pessoal (/home/steam) e está logado como via SSH, tty ou usando su.
# Faça o arquivo.
#: nano updateserver.sh
# Cole o código
# Modifique o código, adicione pelo menos 1 jogo as linhas DL_SV*=.
# Feche o arquivo , seguido por e concluindo com .
# Give the file execute rights for the user
#: chmod u+x ./updateserver.sh
# Run the file
#: ./updateserver.sh
O arquivo irá baixar automaticamente o SteamCMD, atualizá-lo e instalar todos os jogos escolhidos (até 4). Execute o arquivo novamente para atualizar os jogos.
== Problemas Conhecidos ==
===ERROR! Failed to install app 'xxxxxx' (No subscription)===
ISe você receber o erro 'No subscription',o jogo/servidor que você está tentando baixar requer um login ou que você compre o jogo. Você terá que fazer o login com um nome de usuário e senha Steam - se isso não ajudar, talvez seja necessário adquirir uma cópia do jogo no Steam primeiro Veja .
Por exemplo
steamcmd +login <username> <password>
=== Bibliotecas de 32 bits em sistemas Linux de 64 bits ===
Como o SteamCMD é um binário de 32 bits, são necessárias bibliotecas de 32 bits.
O seguinte erro pode ocorrer:
 steamcmd: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
A resolução depende da sua distribuição:
==== Distribuições baseadas em Debian (Ubuntu, Mint, etc.) ====
 sudo apt-get install lib32stdc++6
Com o Debian 7 "Wheezy" você pode encontrar este erro:
 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.
Para corrigir isso, faça o seguinte:
 dpkg --add-architecture i386
 apt-get update
 apt-get install lib32gcc1
==== Distribuições baseadas no Red Hat (RHEL, Fedora, CentOS, etc.) ====
 yum install glibc.i686 libstdc++.i686
==== Arch Linux ====
Não se esqueça de primeiro ativar o multilib.
 pacman -S lib32-gcc-libs
=== Falha de login: sem conexão ===
Em servidores Linux, você pode enfrentar um erro "Falha de logon: sem conexão". Isso está relacionado a falta de regras do iptables. Você vai querer algo ao longo destas linhas:
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
A lista de portas encontra-se aqui: https://support.steampowered.com/kb_article.php?ref=8571-GLVN-8711&l=english
Em servidores Windows, você pode experimentar "SteamUpdater: Erro: Falha no download: erro HTTP http" e "SteamUpdater: Erro: o Steam precisa estar online para atualizar. Confirme sua conexão de rede e tente novamente." Isso geralmente é corrigido, verificando "Detectar automaticamente as configurações" no IE (Internet Explorer) através das configurações de lan no menu de opções da Internet.
# Abra o Internet Explorer (IE).
# Clique em Ferramentas → Opções da Internet
# Clique na guia Conexões
# Na parte inferior, você deve ver as configurações da rede local (LAN).
# Marque a primeira caixa (Detectar automaticamente as configurações)
# Clique em OK e em Aplicar. Tente executar o SteamCMD novamente; se ainda não funcionar. tente reduzir sua zona de nível de segurança da Internet para médio ou baixo. Você pode encontrar isso na guia Segurança em Opções da Internet.
=== Erros de inicialização do SteamCMD ===
==== Não é possível localizar uma instância em execução do Steam ====
Você pode obter o seguinte erro ao iniciar um servidor com o Linux:
 [S_API FAIL] SteamAPI_Init() failed; unable to locate a running instance of Steam, or a local steamclient.dll.
Resolva o problema ligando steamclient.so para o diretório ~/.steam/sdk32/steamclient.so:
 ln -s steamcmd/linux32/steamclient.so ~/.steam/sdk32/steamclient.so
==== ulimit erro de inicialização do Linux ====
Alguns usuários podem receber um erro ulimit (sem permissão / não é possível abrir o arquivo) enquanto o script está sendo iniciado. TEste erro causado por uma configuração baixa do parâmetro -n (número de descritores de arquivo) de ulimit. O SteamCMD usa comandos padrão dentro do script de shell de inicialização para alterar o ulimit automaticamente, mas alguns servidores podem proibir ulimit valores crescentes após a inicialização (ou além de um limite definido por root).
Isso pode ser corrigido alterando o número do descritor de arquivo ulimit:
 ulimit -n 2048
Se aparecer um erro (sem permissão), você precisará fazer o login como root para alterar o parâmetro. Para verificar a configuração atual, digite ulimit -a ; o sistema irá responder com muitas linhas, você precisa encontrar um:
 open files (-n) 1024
Nesse caso, 1024 é o valor atual.
root também pode modificar os limites no /etc/security/limits.conf arquivo.
Na maioria dos casos, você simplesmente receberá uma mensagem de aviso, mas não impedirá a execução do SteamCMD.
=== Apenas o mecanismo HLDS é baixado ===
Ao tentar baixar um mod HL1 como o TFC, inicialmente ele só baixa os arquivos de mecanismo do HLDS, mas não o mod. Isso acontece com a versão regular e a versão beta. Você pode ter que tentar várias vezes até que todos os arquivos necessários sejam baixados, mas uma vez feito isso, os arquivos devem atualizar corretamente na próxima vez.
Solução alternativa para este problema aqui: http://danielgibbs.co.uk/2017/10/hlds-steamcmd-workaround-appid-90-part-ii/
Apenas apagar os arquivos do appmanifest, sem baixar os substitutos de terceiros, pode funcionar também! Você vai ter um erro no início, porém, reclamando que algo deu errado, o que é devido aos arquivos excluídos.
Em uma nota lateral, por algum motivo, o CS também é instalado.
== Veja também ==
* 
* 
* 
* 
Category:Steam
Category:Steam Applications
Category:Dedicated Server