12/03/2023
Para cualquier administrador de servidores de juegos o entusiasta que busque un control más profundo sobre sus instalaciones de Steam, dominar la herramienta de línea de comandos de Valve es fundamental. Hablamos de SteamCMD, la versión de consola del cliente de Steam, una utilidad potente y versátil diseñada principalmente para instalar y actualizar servidores dedicados. Aunque su interfaz de texto puede parecer intimidante al principio, su uso es sorprendentemente lógico y eficiente una vez que se comprenden sus comandos básicos. Esta guía completa te llevará de la mano a través de todo el proceso, desde la instalación en diferentes sistemas operativos hasta la automatización de tareas complejas, resolviendo los errores más comunes en el camino.

¿Qué es Exactamente SteamCMD?
SteamCMD (Steam Console Client) es la herramienta oficial de Valve que reemplazó al antiguo HLDSUpdateTool. Su propósito principal es permitir a los usuarios instalar y mantener actualizados los servidores de juegos que utilizan el sistema de contenido SteamPipe. A diferencia del cliente gráfico de Steam que todos conocemos, SteamCMD opera exclusivamente a través de comandos de texto, lo que lo hace ideal para entornos de servidor sin interfaz gráfica y para la automatización mediante scripts. Si alguna vez has querido montar tu propio servidor de Counter-Strike, Left 4 Dead, o cualquier otro juego popular, esta es la herramienta que necesitas conocer.
Instalación de SteamCMD: Guía Paso a Paso
El proceso de instalación varía ligeramente dependiendo de tu sistema operativo, pero en todos los casos es un procedimiento sencillo.
Instalación en Windows
- Crear una Carpeta: Primero, crea una carpeta dedicada para SteamCMD para mantener todo organizado. Por ejemplo:
C:\steamcmd. - Descargar el Archivo: Descarga el archivo ZIP de SteamCMD para Windows desde el sitio oficial de Valve.
- Extraer el Contenido: Extrae el contenido del archivo
steamcmd.zipdirectamente en la carpeta que creaste en el primer paso.
Instalación en Linux
En Linux, es crucial no ejecutar SteamCMD como usuario root por razones de seguridad. Se recomienda crear un usuario específico para ello.
- Instalar Dependencias: Antes de nada, necesitas instalar las librerías de 32 bits necesarias.
- Ubuntu/Debian (64-Bit):
sudo apt-get install lib32gcc1 - RedHat/CentOS (64-Bit):
sudo yum install glibc.i686 libstdc++.i686
- Ubuntu/Debian (64-Bit):
- Crear un Usuario (Recomendado): Crea un usuario dedicado para Steam y tus servidores.
sudo useradd -m steamsudo su - steam - Crear el Directorio y Descargar: Ya como el nuevo usuario, crea el directorio y descarga la herramienta.
mkdir ~/steamcmdcd ~/steamcmdwget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz - Extraer el Archivo: Descomprime el paquete descargado.
tar -xvzf steamcmd_linux.tar.gz
Instalación en macOS
- Abrir la Terminal: Inicia la aplicación Terminal.app.
- Crear un Directorio: Crea una carpeta para la herramienta.
mkdir ~/steamcmdcd ~/steamcmd - Descargar y Extraer: Descarga el archivo para macOS y extráelo en el directorio.
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_osx.tar.gz" | tar zxvf -
Uso Básico de SteamCMD: Ejecución e Inicio de Sesión
Una vez instalado, el siguiente paso es ejecutar la herramienta y conectarte a los servidores de Steam. La primera vez que lo ejecutes, se actualizará automáticamente y te dejará en un prompt que dice Steam>.
Ejecutando la Herramienta
- Windows: Abre una Símbolo del sistema (cmd), navega a tu carpeta (
cd C:\steamcmd) y escribesteamcmd. - Linux/macOS: Abre una terminal, navega a tu carpeta (
cd ~/steamcmd) y ejecuta./steamcmd.sh.
Iniciando Sesión en Steam
Tienes dos formas principales de iniciar sesión, dependiendo de lo que necesites descargar.
1. Inicio de Sesión Anónimo
Para la mayoría de los servidores de juegos públicos, no necesitas una cuenta de Steam. Puedes iniciar sesión de forma anónima. Este es el método más común y recomendado si el servidor lo permite.
login anonymous
2. Inicio de Sesión con tu Cuenta de Steam
Algunos servidores requieren que hayas comprado el juego base en una cuenta de Steam para poder descargar los archivos del servidor. Para estos casos, necesitarás iniciar sesión con un usuario y contraseña.
¡Advertencia de Seguridad! Se recomienda encarecidamente crear una cuenta de Steam nueva y separada exclusivamente para tus servidores. No uses tu cuenta principal. Además, un usuario solo puede estar conectado en un lugar a la vez (ya sea en el cliente gráfico o en SteamCMD).
login tu_nombre_de_usuario
A continuación, se te pedirá la contraseña. Si tu cuenta tiene Steam Guard activado, deberás introducir el código de acceso que recibirás por correo electrónico. Este paso solo es necesario la primera vez.
Descargando y Actualizando Servidores de Juegos
Este es el núcleo de la funcionalidad de SteamCMD. El proceso consta de tres comandos principales.
- Establecer el Directorio de Instalación: Primero, dile a SteamCMD dónde quieres que se instalen los archivos del servidor. Usa barras invertidas
\para Windows y barras normales/para Linux/macOS.force_install_dir ./cs_go_server/ - Descargar o Actualizar la Aplicación: Usa el comando
app_updateseguido del ID de la aplicación del juego. Puedes encontrar estos IDs en la web de Valve o en bases de datos como SteamDB. Añadir el parámetrovalidateal final es una buena práctica, ya que verifica la integridad de los archivos y repara los que estén corruptos o faltantes.app_update 740 validate - Salir de SteamCMD: Una vez que la descarga o actualización haya finalizado, cierra la sesión de forma segura.
quit
Tabla de Comandos de Ejemplo
Aquí tienes una tabla con ejemplos para descargar algunos servidores populares.
| Juego / Servidor | Comandos de Ejemplo |
|---|---|
| Counter-Strike: Global Offensive | force_install_dir ./csgo/app_update 740 validate |
| HLDS (Team Fortress Classic) | force_install_dir ./hlds_tfc/app_set_config 90 mod tfcapp_update 90 validate |
| Counter-Strike: Source (Beta) | force_install_dir ./css_beta/app_update 232330 -beta prerelease validate |
| Servidor con Beta Privada | force_install_dir ./private_beta/app_update 4940 -beta alpha -betapassword natsel validate |
Automatización y Scripts
La verdadera potencia de SteamCMD reside en su capacidad para ser automatizado, lo que te permite crear scripts para actualizar tus servidores con un solo clic.
Desde la Línea de Comandos
Puedes encadenar comandos directamente al ejecutar SteamCMD usando el prefijo +. Esto es útil para tareas rápidas.
steamcmd +login anonymous +force_install_dir ../csgo_ds +app_update 740 validate +quit
Creando un Archivo de Script
Para tareas más complejas, puedes crear un archivo de texto (por ejemplo, update_script.txt) con todos los comandos, uno por línea, y luego ejecutarlo.
Contenido de update_script.txt:
// Iniciar sesión de forma anónima login anonymous // Establecer el directorio de instalación force_install_dir ../mi_servidor // Actualizar y validar el servidor (ej: App ID 740 para CS:GO) app_update 740 validate // Salir quitLuego, ejecutas el script de la siguiente manera:
steamcmd +runscript update_script.txt
Preguntas Frecuentes y Solución de Errores Comunes
Como toda herramienta de consola, a veces pueden surgir problemas. Aquí te presentamos los más habituales y cómo solucionarlos.
¿Por qué recibo el error "No subscription"?
Este error significa que el servidor que intentas descargar requiere que el juego base esté comprado en la cuenta con la que has iniciado sesión. Si estás usando login anonymous, prueba a iniciar sesión con una cuenta de Steam que posea el juego.
SteamCMD no funciona en mi Linux de 64 bits.
Esto casi siempre se debe a la falta de las librerías de 32 bits. SteamCMD es una aplicación de 32 bits. Asegúrate de haber instalado los paquetes correctos para tu distribución (lib32gcc1 en Debian/Ubuntu o glibc.i686 libstdc++.i686 en CentOS/RHEL).
Me aparece "Login Failure: No Connection".
En servidores Linux, este error suele estar relacionado con las reglas del firewall (iptables). Debes asegurarte de que el tráfico UDP saliente en los puertos que Steam utiliza (generalmente en el rango 27000-27030) esté permitido. En Windows, este error puede solucionarse a veces activando la "Detección automática de la configuración" en las Opciones de Internet de Internet Explorer.
¿Qué es el error "ulimit" en Linux?
Este error indica que el sistema ha alcanzado el límite de descriptores de archivos abiertos. SteamCMD necesita abrir muchos archivos simultáneamente. Puedes aumentar este límite temporalmente con ulimit -n 2048 o de forma permanente editando el archivo /etc/security/limits.conf si tienes permisos de root.
Al descargar un mod de HLDS, solo se descarga el motor.
Este es un problema conocido con el App ID 90 (HLDS). A veces, es necesario ejecutar el comando app_update 90 validate varias veces hasta que todos los archivos del mod se descarguen correctamente. Es un comportamiento extraño, pero repetir el comando suele ser la solución.
Si quieres conocer otros artículos parecidos a Domina SteamCMD: Guía Completa de Instalación y Uso puedes visitar la categoría Juegos.
