Usando o comando Invoke do Powershell para instalar o .exe no computador remoto

2

Eu tenho um .exe que gostaria de instalar em um farm grande de computadores com o Windows Server 2008. Eu estou tentando usar o comando remoto do PowerShell. Eu tenho este comando que funciona localmente:

invoke-command {& "N:\Temp\fortify_installer\HP-Fortify-3.20-Analyzers_and_Apps-Windows-x86.exe /s /f1N:\Temp\fortify_installer\response.iss"}

Mas quando eu adiciono o sinalizador -computername , ele parece ir para lugar nenhum, e o instalador nunca é executado na máquina remota.

Eu posso lançar o notepad.exe pelo mesmo comando e ele será executado. Tem algo a ver com ser um instalador ou outra coisa? Eu percebo que muitas versões desta pergunta foram feitas e eu as li, mas ainda estou confuso sobre o porquê de isso não funcionar.

    
por jscott 28.12.2011 / 17:29

3 respostas

1

O comando invoke requer que o computador remoto seja configurado para gerenciamento remoto. Execução de comandos remotos

Se você não conseguir configurar o gerenciamento remoto, poderá usar o Windows Management Instrumentation (WMI) para a execução remota. Execute o programa no computador remoto usando o PowerShell

    
por 28.12.2011 / 18:32
1

Eu estou supondo que o seu comando no scriptblock está correto. O comando Invoke-complete ou você tem que matar o comando? Tente o comando e tenha os resultados retornados para uma variável como esta:

$var = Invoke-Command -ComputerName <Computer> -ScriptBlock {& "N:\Temp\fortify_installer\HP-Fortify-3.20-Analyzers_and_Apps-Windows-x86.exe /s /f1N:\Temp\fortify_installer\response.iss"}

Tudo parece bem diferente do que eu adicionaria o -scriptblock parm para maior clareza. Tente colocar o que você tem no scriptblock em um arquivo .PS1 e, em seguida, use o parm -filepath com o local do script ps1 que você acabou de criar.

Isso pode muito bem ser um problema de sessão interativa, mas os resultados de seu comando invoke devem dar isso a você. Caso contrário, você pode precisar examinar os logs de eventos na máquina remota e ver se algo está lá.

    
por 12.12.2013 / 21:05
1

Você poderia tentar o seguinte:

  1. Digite-pssession para verificar se a configuração do remoting funciona

  2. Copie o exe de N: (suponho que esta é uma unidade mapeada no servidor) para C: ou algum disco local e execute o script novamente depois de ajustar o caminho? Existe uma boa chance de que a autenticação de duplo salto interfira no seu script.

por 13.12.2013 / 00:10

Tags