最近在摸索一种命令方式备份Hyper-V里的虚拟机,因为平时备份都是手动关闭VM,然后Export,这样浪费很多的时间,于是折腾了下,想用命令实现自动化完成VM的备份。

查阅了下资料,看到了一个开源的软件能够用此Powershell Management Library里的命令完成大部分的虚拟机管理操作,在这里分享此网站:

http://pshyperv.codeplex.com/

但是在Import 此Module时出现如下错误:

Import-Module : There were errors in loading the format data file:
Microsoft.PowerShell, , C:\Program Files\modules\Hyperv\hyperv.
Format.ps1xml : File skipped because of the following validation
exception: File C:\Program Files\modules\Hyperv\hyperv.Format.
ps1xml cannot be loaded. The file C:\Program Files\modules\Hyperv
\hyperv.Format.ps1xml is not digitally signed. The script will not
execute on the system. Please see "get-help about_signing"
for more details...
At line:1 char:14
+ Import-Module <<<<  'C:\Program Files\modules\Hyperv'
    + CategoryInfo          : InvalidOperation: (:) [Import-Module],
RuntimeException + FullyQualifiedErrorId : FormatXmlUpate
Exception,Microsoft.PowerShell.Commands.ImportModule
Command

这是powershell的默认安全设置禁用了执行脚本,要启用这个功能需要拥有管理员的权限。,所以用如下命令更改为不受限:

set-ExecutionPolicy Unrestricted

然后Imort-Module "HyperV库路径",然后输入如下命令:

Get-Command -Module HyperV,在PowerShell 命令行下会出现此命令的帮助指令