我们的服务器上运行着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命令能够工作(不会出现错误信息),但它仍然没有返回任何虚拟机。
我看到了论坛帖子PowerShell“Get-VM”错误。
但是Hyper-V已经安装并在PowerShell命令行输入时显示出来。
Get-Module -listavailable
在我的代码开头,我有
import-module Hyperv
还有这个:
[system.net.dns]::GetHostEntry(ip)
Get-Host可以正常工作,同样适用于works。
我们尝试过。
Enable-WindowsOptionalFeature -FeatureName Microsoft-Hyper-V -All
但该命令不被识别为 cmdlet 的名称。
我尝试像这个链接中的步骤禁用 UAC,但它没有起作用。此链接显示了我使用的命令:http://www.ehloworld.com/1026
当我输入时:
Set-UACStatus -Computer usa...net -Enabled [$false]
它显示了错误消息,指出Set-UACStatus不被识别为cmdlet名称等。同样,它也无法识别Get-UACStatus。
我不确定是否需要导入其他内容才能使用Get-VM。或者我的同事认为可能是因为我们遇到了未知的AD问题。我认为,如果是Active Directory的问题,它应该会显示有关无权执行某些操作的错误消息,但它没有。