Estou tendo dificuldades para descobrir como renomear um computador com Windows 7 remotamente. Isso é para automatizar o Win 7 em um ambiente do vSphere 5, e estou tentando aproveitar o máximo possível. Até agora eu consegui tudo, mas a máquina renomeou automatizada (ou automatizável).
O WinRM está funcionando, então os métodos remotos do PowerShell funcionam.
invoke-command -computername "W7-Img3-RPT49VA" -scriptblock {commands go here; have another one}
O acima funciona. Eu posso fazer coisas como obter listas de diretórios e executar comandos. No entanto, obter o domínio alterado não funcionou. Por esta pergunta do SF , eu tentei o seguindo no scriptblock:
$comp=get-wmiobject -class computersystem ; $comp.rename("W7-clone-42")
Isso retorna ReturnValue : 5
, que depois de muita pesquisa se traduz em "Acesso negado". A outra sugestão nessa página:
wmic computersystem rename "W7-Clone-42"
Retorna o inútil "Invalid Verb Switch". Outra fonte da internet sugere a seguinte formulação:
wmic computersystem where Name="W7-Img3-RPT49VA" call rename name="W7-clone-42"
O que dá Alternativamente o Interruptor de Verbos Inválido, ou parâmetro inválido. Como teste, executei o comando acima diretamente em minha estação de gerenciamento em vez de usar invoke-command
e também obtive acesso negado.
Indo para a velha escola, copiei o netdom para a máquina de destino.
netdom renamecomputer W7-Img3-RPT49VA /newname:W7-clone-42
O que me dá "acesso negado".
Por tudo isso, as credenciais com as quais estou testando têm o Administrador do domínio. A intenção é diminuir o exato priv uma vez que identifiquei os métodos viáveis. O log de eventos de segurança na máquina de destino definitivamente mostra os logins bem-sucedidos ao longo de tudo isso.
O método alternativo, manipular a renomeação por meio do processo de personalização do sistema vSphere, ainda está disponível. Eu até tenho um arquivo de resposta para ele, mas não sei como preparar o template-machine para permitir que ele seja usado. De qualquer maneira vai me pegar o que eu preciso.
O que estou perdendo? A sintaxe wmic
está claramente errada, mas os outros dois métodos retornam 'acesso negado', então tenho poucas esperanças de que ele funcione assim que a sintaxe correta seja resolvida. Este é um problema de interação do UAC?