¡Hola a todos! Ésta entrada será corta… básicamente es como un recordatorio personal para cuando quiera reiniciar servicios vía CMD. En una entrada anterior vimos que podemos entrar remotamente a un equipo vía CMD, y pues ahora veremos un ¿Porqué? de hacer esto… De más esta mencionar que se debe de tener privilegios de administrador para poder administrar servicios de Windows vía CMD, o sea, si estamos dentro del equipo en cuestión, debemos de dar clic derecho al CMD y seleccionar la opción de «Ejecutar como administrador».
Una vez en CMD, ya podemos iniciar pero antes, un pequeño detalle… Hay que conocer el nombre del servicio que queremos gestionar. Para esto les traigo tres opciones (una inservible para éste tutorial):
Nos muestra una lista de los servicios de Windows con su nombre completo (tomar en cuenta que solo nos muestra los servicios iniciados).
net start
Nos muestra una lista de los servicios de Windows con su nombre corto (todos).
wmic service get name
Nos muestra el listado completo de servicios con mucha información adicional, entre la que esta el nombre para mostrar del servicio, el nombre corto y su estado. La mejor, es esta:
sc query
Solo que, para digerir toda la información, lo mejor es pasarlo a un archivo de texto así:
sc query > servicios.txt
y entrar y buscar con su editor de texto favorito (notepad por ejemplo ¬¬ ) el servicio que se quiera. Realmente, en éste caso, solo nos servirán los nombres cortos.
Para efectos de ésta entrada, utilizaremos el servicio de «Cola de impresión» (típico…), el cual su nombre corto es: Spooler . También, usaremos 2 comandos para el mismo fin:
- net (viene desde el DOS y es muy básico)
- sc (Es bastante actual, mucho más avanzado y se pueden hacer muchas cosas más como cambiar configuraciones, entrar directamente a host remotos (sin psexec…), crear y eliminar servicios (digno de otra entrada en un futuro espero…), entre otros.
Iniciar un servicio
Para iniciar el servicio, ingresamos:
net start spooler ó sc start spoole
Detener un servicio
Usamos el mismo comando net pero con el atributo stop, seguido del nombre corto del servicio.
net stop spooler ó sc stop spoole
Pausar y reanudar un servicio
Para pausar:
net pause spooler ó sc pause spooler
Para reanudar:
net continue spooler ó sc pause spooler
Nota: el Spooler no se puede pausar y reanudar, pero bueno… otros servicios sí.
Ver el estado de un servicio
Solo aplica para sc:
sc interrogate spooler
Y si esperabas el de reiniciar servicio, pues ese no existe en Windows xD se debe de hacer el stop y el start manualmente. Cómo se extraña Linux ¿verdad?.
¡Saludos!
¿Cómo lograría pasar un servicio a manual o deshabilitado desde símbolos del sistema?
Sería algo así: sc config «Nombre del Servicio» start=disabled
tengo un problema al querer manejar un servicio en especifico, sucede que con cualquier comando que sugiera un cambio en sus parámetros me denegá el acceso a eso, me da toda la información que fuese a necesitar pero no logro obtener su control.
Como podría solucionar eso? en mi pc solo hay un usuario, el admin que vendría siendo yo, pero a pesar de esto tengo varios problemas cuando a permisos refiere.
El CMD se debe de ejecutar como administrador (Clic derecho, «ejecutar como administrador»); con eso, ya se tendría los privilegios necesarios para gestionar los servicios. Saludos.
Hola, como podria hacer que el cmd vea que este el servicio ejecutandose y lo detenga y cuando este detenido lo ejecute?
Hola. Supongo que tendrías que hacer un batch con la comprobación manual del servicio (net start | find «nombre_servicio») y, si esta detenido (no devuelve nada), que lo inicie; luego creas una tarea programada (comando at) que lo invoque y que se esté ejecutando cada, digamos, 5 minutos. La forma más fácil es con entorno gráfico… puedes ir al servicio y hay una opción por ahí de qué hacer cuando se detenga el servicio (iniciarlo, en éste caso).
HOLA BUENAS TARDES COMO PUEDO PASAR UN SERVICIO DE DESHABILITADO A AUTOMATICO GRCIAS POR LA AYUDA
Hola. Siempre en línea de comando, se ingresa: sc config «nombre-del-servicio» start=auto
Por ejemplo: sc config «dnscache» start=auto
como puedo pasar de automatico a manual la cola de impresion por comandos
Hola!
Como podria cambiar el logon account para un servicio desde CMD?
Hola. Recuerdo que se usa el comando «sc config», y he visto que tiene 2 parámetros: obj y password, con los que creo que se puede hacer el cambio que necesitas.
https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/sc-config
Saludos