none
Ejecutar comando para todas las máquinas del dominio RRS feed

  • Pregunta

  • Hola a tod@s!

    Me gustaría saber si hay alguna forma de ejecutar por ejemplo un comando en todos los PC´s del dominio de forma instantanea.

    Conozco que se pueden ejecutar por el Psexec conectandote a cada maquina y ejecutar comandos o también podría crear una tarea programada en todos los PC´s por comandos, pero me gustaría saber si hay alguna opción en la que le digas que por ejemplo en todos los PC´s del dominio se les habra el documento que está almacenado en la unidad mapeada que tienen todos los PC´s.

     

    Gracias de antemano.

    Un saludo.

    martes, 8 de junio de 2010 10:10

Respuestas

  • BUenas,  al final he instalado un office :-) a ver si es cosa del word....pero siento decirte que el comando comentado me funciona sin problemas en mi entorno.

    Es decir que una consola de comandos si la abre, pero Winword no abre en consola pero tienes el proceso corriendo, es lo que te ocurre? Sigo pensando que es cosa de la sesion....

    En cuanto al ejecutar un comando en una ventana de CMD, tambien lo he probado y funciona también.

    En cuanto al "Acceso Denegado"

    Qué SO usas en origen  y destino? Deben ser minimo Xp o W2003. Si son Vistas/win7o W2K8 hay q ver el tema del UAC....

    El usuario que utilizas es administrador local de la maquina de destino?

    Tienes habilitado el recurso Admin$

    Existe algun Antivirus, AntiSpyware en el equipo destino? En tal caso, es viable deshabilitarlo.

    LLegados a este punto, si sigues teniendo problemas de "acceso denegado"

    Revisa estos links:

    Acceso denegado : http://forum.sysinternals.com/topic3420_page1&TPN=1.html

    FAQ PStools: http://forum.sysinternals.com/topic15920.html

    Y tambien he visto esto por algun foro, si bien ya se recogen en los links que te envié antes.

    Pstools Prerequisites:
    :: turn off simple file share
    reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa" /v forceguest /t REG_DWORD /d 00000000 /f
    :: turn on admin$ share XP
    rem reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 00000001 /f
    :: enable file and print sharing in firewall
    netsh firewall set service type = fileandprint mode = enable
    add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" /v  AutoShareWks /t REG_DWORD /d 00000001 /f

    Si no lo sacas, o nos tomamos unas cañas o vamos a tener que cortarnos las venas :-D

    Saludos y suerte.

     


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    viernes, 11 de junio de 2010 17:16

Todas las respuestas

  • Pues se me ocurre o bien GPO's, pero dependes del inicio de maquina o de usuario o bien productos de managment de escritorio que tengan un agente en los equipos digase, SCCM o similares y que te permita en un tiempo muy corto lanzar "ordenes" a tus equipos.

    Saludos.


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    martes, 8 de junio de 2010 10:49
  • Hola Carlos,

    Hacerlo por GPO´s no me vendría bien ya que tienen que cerrar sesion y volverla a iniciar.  He visto que por psexec parece que se puede pero no me funciona, en prencipio ejecutando lo siguiente debería funcionar:

    psexec \\* \\EquipoServidor\Carpeta\documento.doc

    en principio en \\* es para ejecutarlo en todas las maquinas del dominio y despues le digo donde está ubicado el fichero que en principio todas las máquinas del servidor tienen la misma letra mapeada con una carpeta del servidor.

    Gracias de todas formas por la idea ;)

     

    Un saludo

    martes, 8 de junio de 2010 11:00
  • Cuántos equipos hay aproximadamente?

    Y lo que querrías hacer es abrir un .doc?


    -------- Salu2!! Javier Inglés https://mvp.support.microsoft.com/profile=540CC20A-D91F-4E7B-A209-2CB5567431B0 MS MVP, Windows Server-Directory Services. Microsoft Active Professional 2010
    martes, 8 de junio de 2010 11:33
  • Hola Javier,

    Hay unos 60 equipos aproximadamente, efectivamente, lo que quiero hacer es abrir un documento word que iré modificandolo según las actualizaciones.

    martes, 8 de junio de 2010 11:45
  • Hola,

    Has probado: psexec \\* -i -d winword.exe "\\EquipoServidor\Carpeta\documento.doc"

    Saludos

     


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    martes, 8 de junio de 2010 11:47
  • Hola Carlos,

    Lo acabo de probar y me dice que el sistema no puede hallar el archivo especificado, sinembargo si ejecuto un cmd de esta máquina y pongo: start \\EquipoServidor\Carpeta\documento.doc me habre perfectamente el documento, pero si pongo: psexec \\MIPC -i -d winword.exe "\\EquipoServidor\Carpeta\documento.doc" no me deja, diciendome el mensaje que no lo encuentra.

    Gracias de antemano.

     

    martes, 8 de junio de 2010 11:56
  • Prueba poniendo el path completo de WINWORD.EXE a ver....

    Saludos.


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    martes, 8 de junio de 2010 12:12
  • Hola Carlos,

    Perdona pero no entiendo que quieres decir de poner el path completo de WINWORD.EXE, parece ser que remotamente no quiere ejecutar la aplicación como si no tubiera permisos y de esto no creo que sea porque tengo permisos de administrador del dominio, de todas formas me dice que no localiza la ruta donde está el documento y pongo dicha ruta en el explorador y me va a ese decumento.

     

    Gracias de antemano.

     

    Un saludo

    martes, 8 de junio de 2010 14:12
  • Lo del Path se refiere a poner la ruta completa del ejecutable. El directorio de Office no suele estar en la variable de entorno Path, por lo que para llamar a Winword debes poner la ruta completa, encerrada entre comillas si hay espacios en ella:

    psexec \\MIPC -i -d "c:\Archivos de programa\Microsoft Office\Office12\winword.exe" "\\EquipoServidor\Carpeta\documento.doc"


    Un saludo

    Fernando Reyes [MS MVP]
    MCSA 2000/2003
    MCSE 2000/2003
    MCITP EnterpriseAdministrator
    Web: http://freyes.svetlian.com
    Blog: http://urpiano.wordpress.com
    RSS: http://urpiano.wordpress.com/feed/
    freyes.champú@champú.mvps.org
    (Aclárate la cabeza si quieres escribirme)
    martes, 8 de junio de 2010 15:03
    Moderador
  • hola , 

    Si ejecutas WiNWORD sin parametros, se habre sin problemas WORD? En caso que no,  prueba con el path completo del ejecutable:

    psexec \\* -i -d "C:\Program Files\Microsoft Office\Office12\Winword.exe" "fichero remoto"  Por ejemplo.

    Creo que hay algun problema con los parámetros que pasas o con los permisos del documento en el recurso, por defecto, lanzandolo de esta manera, el proceso winword se va a ejecutar con la cuenta que lances el psexec. Pero no va a poder acceder a recueros de red (impersonation).

    Te adjunto texto de la documentacion:

    You can enclose applications that have spaces in their name with quotation marks e.g. "psexec \\marklap "c:\long name\app.exe". Input is only passed to the remote system when you press the enter key, and typing Ctrl-C terminates the remote process.

    If you omit a username the remote process runs in the same account from which you execute PsExec, but because the remote process is impersonating it will not have access to network resources on the remote system. When you specify a username the remote process executes in the account specified, and will have access to any network resources the account has access to. Note that the password is transmitted in clear text to the remote system.

    http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx

    Saludos.

     

     


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    martes, 8 de junio de 2010 15:12
  • Hola de nuevo,

    ya lo he provado y sigue diciendome lo mismo y poniendo solo el path de word me sigue diciendo que no puede hallar la ruta especificada. Es un poco raro o algo estaré escribiendo mal, de todas formas le echo un vistazo a los documentos. Gracias por las ayudas.

     

    Un saludo.

    martes, 8 de junio de 2010 16:28
  • Hola otra vez,

    No consigo hacerlo funcionar, si me copio el documento en local si que se ejecuta, pero si lo pongo en el servidor y la unidad mapeada, me dice que acceso denegado. Alguna opinion?

     

    Gracias de antemano.

    jueves, 10 de junio de 2010 11:52
  • Desde el equipo de destino, con el usuario que lanza el comando ¿Se tiene acceso a esa carpeta compartida?

    Un saludo

    Fernando Reyes [MS MVP]
    MCSA 2000/2003
    MCSE 2000/2003
    MCITP EnterpriseAdministrator
    Web: http://freyes.svetlian.com
    Blog: http://urpiano.wordpress.com
    RSS: http://urpiano.wordpress.com/feed/
    freyes.champú@champú.mvps.org
    (Aclárate la cabeza si quieres escribirme)
    jueves, 10 de junio de 2010 12:12
    Moderador
  • Segun la documentacion de PSEXEC, debes lanzar el comando con un usuario específico para acceder a un recurso de red.

    If you omit a username the remote process runs in the same account from which you execute PsExec, but because the remote process is impersonating it will not have access to network resources on the remote system

     

     


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    jueves, 10 de junio de 2010 14:03
  • Hola a tod@s!

    Fernando: el usuario que lanza el comando tiene acceso al documento mediante una unidad mapeada del servidor con permisos de lectura, escritura, ejecución.

     

    Carlos: he intentado hacerlo como dice en la documentación y le doy usuario y contraseña del administrador y me dice que tengo acceso denegado, si lo hago manualmente y me voy a Mi PC y la unidad mapeada, entro le hago doble click al documento y me lo habre.

     

    Tambien he probado haciendolo con el comando AT (tarea programada) y si le digo que me lo habra desde la unidad de red, no me lo habre, per si le digo que el documento a abrir esta en la unidad local C: si que me lo habre.

    Un saludo.

    jueves, 10 de junio de 2010 14:18
  • Hola, puede ser que no estés poniendo el dominio en el usuario?

    Has probado -user Dominio\usuario -p password ??

    Saludos.

     


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    jueves, 10 de junio de 2010 15:02
  • Hola Carlos,

     

    Si que lo he probado con Dominio\usuario pero me dice que acceso denegado, es un poco raro porque la verdad xq deberia de poder.

    jueves, 10 de junio de 2010 15:28
  • Pues la verdad es que no tengo como probar tu mismo escenario, pero con wordpad me funciona bien abriendo un fichero de un recurso remoto.

    Tal y como hemos comentado, la linea de comando es: psexec \\* -user dominio\user -p password -i -d "C:\Program Files\Microsoft Office\Office12\Winword.exe" \\server\recursocompartido\fichero remoto.doc

    Si el error que te da es de permisos, pues tendrías que revisar a ese nivel.

    Recuerda que el comando se lanzará en la sesion 0 (consola) si no le especificas lo contrario.... (no lo he probado) te lo comento pq haciendo las pruebas, he tenido que cerrar la sesion por TS que tenia del equipo remoto e iniciar una sesion de consola a fin que el proceso se pueda ejecutar en interactivo.

    Saludos.

     


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    jueves, 10 de junio de 2010 15:59
  • Hola de nuevo a tod@s!

    A ver, os voy a comentar todos los pasos que hago y lo que me deja hacer, en principio creo que será algún permiso para ejecutar por la red que no debo de tener configurado parece ser, aqui os explico:

    - Desde el PC local envio el comando al PC Remoto:

    psexec \\IPremota -user dominio\user -p password -i -d "C:\Program Files\Microsoft Office\Office12\Winword.exe"

    Aqui me habre en procesos el word con el nombre de usuario especificado pero no lo muestra en pantalla.

     

    - Desde el PC local envio el comando al PC Remoto:

    psexec \\* -user dominio\user -p password -i -d "C:\Program Files\Microsoft Office\Office12\Winword.exe" \\server\recursocompartido\fichero remoto.doc

    Me hace exactamente lo mismo que en el anterior, en teoria deberia de ejecutar y mostrar por pantalla el documento pero no lo hace.

     

    - Desde el PC Remoto:

    start \\server\recursocompartido\fichero remoto.doc

    Me abre el documento correctamente.

     

    - Desde el PC Local:

    psexec \\IPremota -user dominio\user -p password -i -d  \\server\recursocompartido\fichero remoto.doc

    Me dice que acceso denegado.

     

    Desde algún lugar se le podrá decir que mi equipo pueda ejecutar documentos y me permita el acceso pero no se donde. Gracias anticipadas.

     

    Un saludo.

     

    viernes, 11 de junio de 2010 10:40
  • Hola mira suelo utilizar psexec EZ-execute

    Se puede  descargar de : http://www.ez-execute.com-about.com/


    Jorge Cavallin
    viernes, 11 de junio de 2010 13:52
  • Hola de nuevo a tod@s!

    A ver, os voy a comentar todos los pasos que hago y lo que me deja hacer, en principio creo que será algún permiso para ejecutar por la red que no debo de tener configurado parece ser, aqui os explico:

    - Desde el PC local envio el comando al PC Remoto:

    psexec \\IPremota -user dominio\user -p password -i -d "C:\Program Files\Microsoft Office\Office12\Winword.exe"

    Aqui me habre en procesos el word con el nombre de usuario especificado pero no lo muestra en pantalla.

     

    - Desde el PC local envio el comando al PC Remoto:

    psexec \\* -user dominio\user -p password -i -d "C:\Program Files\Microsoft Office\Office12\Winword.exe" \\server\recursocompartido\fichero remoto.doc

    Me hace exactamente lo mismo que en el anterior, en teoria deberia de ejecutar y mostrar por pantalla el documento pero no lo hace.

     

    Un saludo.

     

    Hola de nuevo :-)

    Como te conectas al equipo remoto? Desde la consola (fisicamente o con VNC o Similar) o mediante Remote Desktop? te comento pq si te abre el proceso pero no te lo muestra, es por que lo está abriendo para la session 0 (consola). 

    Saludos.


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    viernes, 11 de junio de 2010 15:00
  • Hola ;-),

     

    Jorge, provaré con esa herramienta a ver si se puede.

    Carlos, en el pc local ejecuto cmd (para entrar en el ms-dos) y le introduzco dichos comandos, en teoria se conecta mediante psexec iniciando una sesion ms-dos en el equipo remoto para que ejecute el comando que debería abrir el documento que tiene mapeada dicho PC remoto una unidad con el servidor.

    No se si me he explicado bien.

     

    Saludos.

    viernes, 11 de junio de 2010 15:21
  • Creo que el que no se explica soy yo. ¿Como revisas que Winword se abre o no? Tienes que ver la sesion de consola del equipo remoto por VNC o similares o fisicamente..... Si te conectas por escritorio remoto, no la verás. Igualmente aunque sea en local, si la sesion q usas es de escritorio remoto, verás que se crea el proceso pero no verás la aplicacion en interactivo.

    Saludos


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    viernes, 11 de junio de 2010 15:30
  • Hola Carlos,

    Ya te entiendo lo que quieres decir, veo el pc remoto mediante VNC y desde ahi veo los procesos que tiene activos.

    Si le pongo psexec \\ipremota cmd  me habre la sesion de msdos en su pc, luego le pongo start \\unidad mapeada\documento.doc y me dice que acceso denegado. Ahi está el problema de ejecutar todo el comando de:

    psexec \\pcremoto -user dominio\user -p password -i -d "C:\Program Files\Microsoft Office\Office12\Winword.exe" \\server\recursocompartido\fichero remoto.doc

    ya que no me deja ejecutar programas remotamente estando conectado por psexec.

     

    Saludos

    viernes, 11 de junio de 2010 15:45
  • BUenas,  al final he instalado un office :-) a ver si es cosa del word....pero siento decirte que el comando comentado me funciona sin problemas en mi entorno.

    Es decir que una consola de comandos si la abre, pero Winword no abre en consola pero tienes el proceso corriendo, es lo que te ocurre? Sigo pensando que es cosa de la sesion....

    En cuanto al ejecutar un comando en una ventana de CMD, tambien lo he probado y funciona también.

    En cuanto al "Acceso Denegado"

    Qué SO usas en origen  y destino? Deben ser minimo Xp o W2003. Si son Vistas/win7o W2K8 hay q ver el tema del UAC....

    El usuario que utilizas es administrador local de la maquina de destino?

    Tienes habilitado el recurso Admin$

    Existe algun Antivirus, AntiSpyware en el equipo destino? En tal caso, es viable deshabilitarlo.

    LLegados a este punto, si sigues teniendo problemas de "acceso denegado"

    Revisa estos links:

    Acceso denegado : http://forum.sysinternals.com/topic3420_page1&TPN=1.html

    FAQ PStools: http://forum.sysinternals.com/topic15920.html

    Y tambien he visto esto por algun foro, si bien ya se recogen en los links que te envié antes.

    Pstools Prerequisites:
    :: turn off simple file share
    reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa" /v forceguest /t REG_DWORD /d 00000000 /f
    :: turn on admin$ share XP
    rem reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System" /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 00000001 /f
    :: enable file and print sharing in firewall
    netsh firewall set service type = fileandprint mode = enable
    add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" /v  AutoShareWks /t REG_DWORD /d 00000001 /f

    Si no lo sacas, o nos tomamos unas cañas o vamos a tener que cortarnos las venas :-D

    Saludos y suerte.

     


    Carlos Mayol MAP 2010 MCP Windows 2000/ MCSA+M / MCSE+M Windows 2003
    viernes, 11 de junio de 2010 17:16