Eu percebi isso. Eu precisava executar o powershell como administrador e, em seguida, a get-VM retornava a lista de VMs. Eu encontrei a resposta em MS Technet .
Estamos tentando escrever um script PowerShell para iniciar / parar a nossa vms, mas o comando get-vm
não está funcionando. A mensagem de erro é
get-vm: the term 'get-vm' is not recognized as the name of a cmdlet, function, script file, or operable program.
O código é assim:
$temp = Get-VM -Server usa..... | where-object {$_.State -eq 'Running'}
Instalamos a atualização para o PowerShell para obter a versão 3 e ela ainda não está funcionando, mas a mensagem de erro mudou um pouco para a que listei acima.
Eu vi este link: link
Mas o hyperV
está instalado agora e aparece quando digito:
Get-Module -listavailable
No início do meu código, tenho:
if(!Get-Module -Name HyperV)){import-module Hyperv}
Também tem isto:
[system.net.dns]::GetHostEntry(ip)
funciona e o Get-Host também
Nós tentamos
Enable-WindowsOptionalFeature -FeatureName Microsoft-Hyper-V -All
mas também não foi reconhecido como o nome de um cmdlet, etc.
Eu tentei desabilitar o UAC como este link pshyperv.codeplex.com/discussions/359174 mas não funcionou. Este link mostra os comandos que usei: link
Quando eu digitei:
Set-UACStatus -Computer usa...net -Enabled [$false]
deu a mensagem de erro que Set-UACStatus wasn't recognized as the name of a cmdlet
, etc também. Ele também não reconheceu o Get-UACStatus.
Não tenho certeza se há outra coisa que preciso importar para usar o Get-VM?
Eu percebi isso. Eu precisava executar o powershell como administrador e, em seguida, a get-VM retornava a lista de VMs. Eu encontrei a resposta em MS Technet .