get-vm не работает для hyperv
у нас есть Windows 2008 R2 на нашем сервере. Мы пытаемся написать сценарий powershell для запуска / остановки наших виртуальных машин, но команда get-vm не работает. Сообщение об ошибке отсутствует. Команда просто ничего не возвращает, но должна быть.
код выглядит так:
$temp = Get-VM -Server usa..... | where-object {$_.State -eq 'Running'}
мы стараемся делать
$temp = Get-VM -name VM-VMNameAsSeenInHyperVMgr
и ничего не вернуть.
мы установили обновление для powershell, чтобы получить версию 3, и это сделало get-vm команда работает (не дает сообщение об ошибке), но она по-прежнему не возвращает никаких виртуальных машин.
Я видел эту ссылку
но hyperV установлен сейчас и появляется, когда я набираю в командной строке powershell
Get-Module -listavailable
в начале моего кода у меня есть
import-module Hyperv
есть и такое:
[system.net.dns]::GetHostEntry(ip)
работает, и поэтому Get-Host
мы старались
Enable-WindowsOptionalFeature -FeatureName Microsoft-Hyper-V -All
но команда не была распознана как имя a командлет.
Я попытался отключить UAC, как эта ссылка, но это не сработало. Эта ссылка показывает команды которые я использовал: http://www.ehloworld.com/1026
когда я набрал
Set-UACStatus -Computer usa...net -Enabled [$false]
он дал сообщение об ошибке, что Set-UACStatus не был распознан как имя командлета и т. д. Он также не узнал Get-UACStatus.
Я не уверен, что есть еще одна вещь, которую мне нужно импортировать для использования Get-VM? Или мой коллега думал, может, мы ... бежать в неведомые проблемы? Я думаю, что если бы это был Active Directory, он бы дал сообщение об ошибке о том, что у него нет разрешения что-то делать, но это не так.
1 ответов
Я понял. Мне нужно было запустить powershell от имени администратора, а затем get-VM вернул список виртуальных машин. Я нашел ответ здесь: http://social.technet.microsoft.com/Forums/systemcenter/it-IT/586083bc-d3c7-4d77-a98b-e62939552afd/getvm-doesnt-work?forum=virtualmachingmgrhyperv&prof=required