PSExec "no puede encontrar el archivo especificado" en la máquina local

PSExec "no puede encontrar el archivo especificado" en la máquina local

Como puede ver en la captura de pantalla a continuación, C:\Windows\system32\cmd.exeexiste (ya que el símbolo del sistema usa esa ruta), e intento hacer referencia a él con el nombre corto de cmd.exe y la ruta completa, pero ambos resultan en el mismo error de PsExec. exe:

The system cannot find the specified file.

El usuario del Servicio de Red existe; si escribo mal si recibo una solicitud de contraseña y un mensaje que dice que la contraseña del nombre de usuario no existe.

Recibo este mensaje de error en varias computadoras, pero funciona en otras; con una combinación de Windows Server 2008 R2 y 2012 R2. Estoy usando la última versión de PsExec.exe, que actualmente es 2.11, y estoy ejecutando el símbolo del sistema que uso para iniciar PsExec como administrador, por lo que debería tener los permisos necesarios.

Encontré muchas publicaciones sobre cómo ver este problema al ejecutar PsExec en una máquina remota, pero ninguna para la máquina local, que estoy haciendo.

¿Alguna idea sobre cuál es el problema?

ingrese la descripción de la imagen aquí

Respuesta1

La solución terminó siendo NO ejecutar el símbolo del sistema desde el que estaba iniciando PsExec como administrador. Si ejecuto el comando desde un símbolo cmd que se ejecuta como administrador, aparece el error. Si lo ejecuto desde un símbolo del sistema no elevado, funciona bien.

Respuesta2

Otra razón por la que esto puede suceder es que haya detenido o deshabilitado los servicios LanmanServer (Servidor) o LanmanWorkstation (Estación de trabajo).

De la forma en que funciona PsExec, los necesita para funcionar.

Respuesta3

También descubrí que si copio PSExec a otro directorio (y el directorio Sysinternals no está en PATH) e intento ejecutarlo desde allí, fallará como se indicó anteriormente. Si ejecuto PSExec en el directorio Sysinternals, la opción -s funcionará.

Entonces, otro elemento a verificar es asegurarse de que la carpeta Sysinternals esté en la ruta o que PSExec se ejecute desde ese directorio.

Aparentemente, necesita otro ejecutable de Sysinternals...

Respuesta4

Lo que me solucionó fue ejecutar el comando 'psexec' desde la ubicación cmd predeterminada (c:\windows\system32 en mi caso) y proporcionar la ruta completa al argumento (la aplicación que estás ejecutando):

C:\WINDOWS\system32>psexec c:\Projects\newdesktop\someapp.exe

información relacionada