sc \machine config ServiceName start= auto obj= Username password= PWD
Eu tenho o mesmo serviço em execução em uma dúzia de máquinas de teste. Disse que o serviço foi interrompido (especificamente, foi desativado e desativado por um teste e o teste morreu na metade) e eu quero reativá-lo e reiniciá-lo em todas essas máquinas. A solução normal é sc \machine config ServiceName start=auto
seguida de sc \machine start ServiceName
e funciona bem se minha conta de usuário estiver autorizada na outra máquina. Mas como essas são máquinas de teste clonadas criadas a partir de uma imagem comum que não me conhece de Adam, elas não me reconhecem. Eu sei que poderia entrar e me autorizar nessas máquinas, mas elas são limpas regularmente e estou tentando economizar algum tempo.
Eu sei a senha do Administrador local para todas essas máquinas. (E é a mesma coisa, devido à clonagem.) Como posso executar sc.exe
para que ele faça login com esse usuário? Ou existe outra maneira de ativar e iniciar esses serviços programaticamente na minha máquina? (Eu tenho um script do PowerShell em ciclo de dead-simple pronto para ser usado, mas não é muito útil se eu não puder encontrar um comando para ser executado que será aceito.)
Para referência, aqui está a mensagem de erro que estou recebendo:
[SC] OpenSCManager FAILED 5:
Access is denied.
Use PsTools , que funciona como o sc.exe, mas permite que você faça logon em um controle remoto sistema usando uma conta diferente. Acesse aqui para baixá-lo. O uso é psservice [\computer [-u username] [-p password]] <command> <options>
usando os mesmos comandos do sc.exe. Então, dado o seu exemplo, você entraria
psservice \machine -u AdminUserName -p AdminPassword config ServiceName start=auto
e depois
psservice \machine -u AdminUserName -p AdminPassword start ServiceName