¿Por qué la consulta sc falla desde una máquina pero funciona desde otra?

¿Por qué la consulta sc falla desde una máquina pero funciona desde otra?

Estoy usando el comando sc para consultar el estado de un servicio que se ejecuta en la computadora PRODSRV desde dos computadoras. Funciona bien desde uno, pero falla desde otro. ¿Qué hago mal?

PRODSRV es Windows Server 2003. La computadora desde la que funciona sc también es Windows Server 2003, el resultado de sc:

sc \\prodsrv query mssqlserver

SERVICE_NAME: mssqlserver
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 4  RUNNING
                                (STOPPABLE, PAUSABLE, ACCEPTS_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

La computadora desde la cual sc no funciona es Windows Vista y el resultado es:

sc \\prodsrv query mssqlserver
[SC] OpenSCManager FAILED 5:

Access is denied.

¡Gracias!

Respuesta1

Parece que su credencial para acceder a PRODSRV de forma remota no tiene derechos para consultar servicios.

¿Las máquinas PRODSRV y Vista que estás mostrando son miembros del mismo dominio? ¿Cómo inicia sesión en cada máquina cuando ejecuta este comando?

Parece que todo lo que estás enfrentando es un problema de credenciales. Háganos saber lo anterior y resolveremos cómo debe iniciar sesión. Probablemente pueda salirse con la suya haciendo un "USO NETO" a PRODSRV antes de ejecutar el comando SC y estar libre de casa...

Editar: antes de ejecutar el SC, haga lo siguiente:

NET USE \\PRODSRV\IPC$ /USER:<username you logon to PRODSRV with> <password you use on PRODSRV>

Sospecho que no estás usando exactamente el nombre de usuario y la contraseña en la máquina Vista y PRODSRV, pero estás en PRODSRV y el otro cuadro de Windows 2003.

Respuesta2

Puede consultar el registro de eventos de seguridad para ver qué piensa PRODSRV sobre sus credenciales del sistema Vista. Eso podría proporcionar una pista sobre lo que está pasando. Puede acceder al registro de eventos de seguridad ejecutando compmgmt.msc en el sistema 2003, Herramientas del sistema - Visor de eventos - Seguridad.

Respuesta3

Dependiendo de quién esté ejecutando la consulta y dónde, obtendrá resultados diferentes, en gran medida dependiendo de si es miembro del grupo "Interactivo".

Escribí una publicación sobreconsultar el estado de un servicio de Windowsen mi blog hace un tiempo, que creo que tiene una solución (o al menos será útil para otras personas). Mira el servicio consubinacly vea la lista de control de acceso.

Luego puede agregar permiso para realizar consultas para su usuario/grupo específico.

información relacionada