Execute um arquivo em lotes em um computador remoto como administrador

3

Estou tentando executar um arquivo em lotes (para instalar algum software) em um computador remoto. Para fazer isso, estou usando o PSExec.

psexec.exe \COMPUTER C:\swsetup\install.bat

Isso funciona bem, além de algumas das instalações falharem devido ao script não ser executado como administrador (se eu fizer logon, clicar com o botão direito do mouse e selecionar "Executar como administrador", o script é executado e instalado com êxito.

Eu tentei executar como administrador com o comando / runas, sem sorte

psexec.exe \computer cmd

e depois

runas /user:computer\administrator C:\swsetup\install.bat

O sistema liga-se com "Digite a senha para a conta" e, em seguida, volta para o prompt do cmd sem me permitir digitar a senha. O mesmo problema acontece se eu tentar e fazer

runas /user:[email protected] C:\swsetup\install.bat

Existe alguma maneira de contornar isso, ou terei que visitar a máquina, fazer logon e executar o script em cada máquina?

    
por tombull89 11.07.2014 / 13:29

2 respostas

1

Crie um agendamento de tarefa no computador remoto que executa o arquivo em lotes que você deseja com o privilégio mais alto sob demanda. Você pode adicionar nova tarefa ao computador remoto com schtasks / Create /? (pesquisa adicionar agendamento de tarefa ao computador remoto)
criar um atalho para executar a tarefa
executar atalho com psexec.exe

Eu uso esse método para ignorar o UAC ao executar programas selecionados como admin. Eu criei uma nova pasta agendador de tarefas "bypass UAC" e dentro dela nova tarefa "instalador".

Guia Geral: marque "executar com o maior privilégio". Guia Ação: iniciar um programa yourbatchfile
Guia Condições: desmarque as restrições de energia e marque a opção Acordar computador se você tiver os temporizadores de ativação ativados e quiser acordar o computador para executar a tarefa.
Guia Configurações: marque "Permitir que a tarefa seja executada no comando"

Para o padrão de uso do atalho: C: \ Windows \ System32 \ schtasks.exe / RUN / TN "nome da pasta \ nome da tarefa"

para, por exemplo, "ignorar o UAC \ installer"

Se minhas instruções forem confusas, pesquise "ignorar o UAC com o agendador de tarefas"

    
por 25.01.2015 / 02:33
0

Você já tentou adicionar o comutador de senha PSExec com o nome da conta com o qual está executando o lote?

 -p         Specifies optional password for user name. If you omit this
            you will be prompted to enter a hidden password.
    
por 29.04.2015 / 15:16