怎么使用powershell管理远程的hyper-v服务器


PowerShell交流中心分类: 远程管理怎么使用powershell管理远程的hyper-v服务器
0
DJ asked 9 年 ago

比如创建和恢复快照,我运行下面的这个命令,他弹出了一个错误
PS  >Get-VM -ComputerName wes09server3
Get-VM : The Hyper-V module used in this Windows PowerShell session cannot be used for remote management of the server
‘WES09SERVER3’. Load a compatible version of the Hyper-V module, or use Powershell remoting to connect directly to the
remote server. For more information, see http://go.microsoft.com/fwlink/p/?LinkID=532650.
At line:1 char:1
+ Get-VM -ComputerName wes09server3
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Get-VM], VirtualizationException
    + FullyQualifiedErrorId : InvalidOperation,Microsoft.HyperV.PowerShell.Commands.GetVM

0 Answers
1
Mooser Lee 管理员 answered 9 年 ago

你本机的PowerShell hyper-v model版本和远程机器的hyper-v不兼容。
这种问题,你可以通过Powershell Remote 远程连接到hyper-v主机,然后调用能够兼容远程主机的命令。
@Mosser 2015-8-15更新如下:
假如你的客户端机器是C1,系统是windows 8.1。
假如你的服务器是S1,同时S1也是一台Hype-v主机,但是系统是win10,换言之C1上的Hyper-V版本不兼容。
此时自己通过远程桌面登陆到S1上执行Get-VM,运行正确。但是在C1 上 执行Get-VM -ComputerName S1 失败。系统给出的错误信息很明确,是版本不兼容,并且给出了建议,让你remote到S1 上执行Get-VM。
所以你可以在C1上这样执行:

# 当前用户有权限
Invoke-Command -ScriptBlock {Get-VM} -ComputerName 'S1'

# 当前用户没有权限,指定新的用户凭据 Invoke-Command -ScriptBlock {Get-VM} -ComputerName 'S1' -Credential

 另外win10上的PowerShell版本是5.0,5.0应对可以兼容win8。1上的4.0,你可以尝试将win8.1上的4.0更新成5.0,说不定也可解决这个问题。

DJ replied 9 年 ago

我需要怎么设置呢,我今天尝试了一下,如果我在win8的机器上去执行这些命令使能够正常执行的,但是win10的机器上就会报我上面说的错误。

Mooser Lee 管理员 replied 9 年 ago

已更新。

DJ replied 9 年 ago

非常感谢,今天我们放假,周一我去公司试一下~!

DJ replied 9 年 ago

我刚刚试了一下你说的方法,运行正常,非常非常感谢~!

xu30 replied 9 年 ago

哈哈 厉害