Set-VMFirmware
Set-VMFirmware
Sets the firmware configuration of a virtual machine.
语法
Parameter Set: VMName
Set-VMFirmware [-VMName] <String[]> [-BootOrder <VMComponentObject[]> ] [-ComputerName <String[]> ] [-EnableSecureBoot <OnOffState> ] [-FirstBootDevice <VMComponentObject> ] [-Passthru] [-PreferredNetworkBootProtocol <IPProtocolPreference> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
Parameter Set: VMFirmware
Set-VMFirmware [-VMFirmware] <VMFirmware[]> [-BootOrder <VMComponentObject[]> ] [-EnableSecureBoot <OnOffState> ] [-FirstBootDevice <VMComponentObject> ] [-Passthru] [-PreferredNetworkBootProtocol <IPProtocolPreference> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
Parameter Set: VMObject
Set-VMFirmware [-VM] <VirtualMachine[]> [-BootOrder <VMComponentObject[]> ] [-EnableSecureBoot <OnOffState> ] [-FirstBootDevice <VMComponentObject> ] [-Passthru] [-PreferredNetworkBootProtocol <IPProtocolPreference> ] [-Confirm] [-WhatIf] [ <CommonParameters>]
详细说明
The Set-VMFirmware cmdlet sets the firmware configuration of a Generation 2 virtual machine.
参数
-BootOrder<VMComponentObject[]>
Specifies an array of devices. The boot order determines the order of the devices from which to boot. 此参数可接受的值如下:
-- VMBootSource
-- VMNetworkAdapter
-- HardDiskDrive
-- DVDDrive
The VMBootSource value describes a boot entry in firmware nonvolatile Random Access Memory (NVRAM).
别名 |
无 |
是否为必需? |
false |
位置? |
named |
默认值 |
无 |
是否接受管道输入? |
false |
是否接受通配符? |
false |
-ComputerName<String[]>
Specifies the names of the Hyper-V hosts whose firmware configuration you want to modify.
别名 |
无 |
是否为必需? |
false |
位置? |
named |
默认值 |
. |
是否接受管道输入? |
false |
是否接受通配符? |
false |
-EnableSecureBoot<OnOffState>
Specifies whether to enable secure boot. 此参数可接受的值如下:
-- On
-- Off
Secure boot uses a public key infrastructure that protects the integrity of the operating system.
别名 |
无 |
是否为必需? |
false |
位置? |
named |
默认值 |
无 |
是否接受管道输入? |
false |
是否接受通配符? |
false |
-FirstBootDevice<VMComponentObject>
Specifies the device from which to attempt to boot from first. 此参数可接受的值如下:
-- VMBootSource
-- VMNetworkAdapter
-- HardDiskDrive
-- DVDDrive
The VMBootSource value describes a boot entry in firmware NVRAM.
别名 |
无 |
是否为必需? |
false |
位置? |
named |
默认值 |
无 |
是否接受管道输入? |
false |
是否接受通配符? |
false |
-Passthru
返回一个表示你正在处理的项的对象。默认情况下,此 cmdlet 将不产生任何输出。
别名 |
无 |
是否为必需? |
false |
位置? |
named |
默认值 |
无 |
是否接受管道输入? |
false |
是否接受通配符? |
false |
-PreferredNetworkBootProtocol<IPProtocolPreference>
Specifies the IP protocol version to use during a network boot.
别名 |
无 |
是否为必需? |
false |
位置? |
named |
默认值 |
无 |
是否接受管道输入? |
false |
是否接受通配符? |
false |
-VM<VirtualMachine[]>
Specifies the virtual machine objects for which want to modify the firmware configuration. To obtain a virtual machine object, use the Get-VM cmdlet.
别名 |
无 |
是否为必需? |
true |
位置? |
1 |
默认值 |
无 |
是否接受管道输入? |
True (ByValue) |
是否接受通配符? |
false |
-VMFirmware<VMFirmware[]>
Specifies an array of virtual machine firmware configurations. The cmdlet sets the firmware configurations you specify.
别名 |
无 |
是否为必需? |
true |
位置? |
1 |
默认值 |
无 |
是否接受管道输入? |
True (ByValue) |
是否接受通配符? |
false |
-VMName<String[]>
Specifies an array of names of virtual machines for which you want to modify the firmware configuration.
别名 |
无 |
是否为必需? |
true |
位置? |
1 |
默认值 |
无 |
是否接受管道输入? |
True (ByValue) |
是否接受通配符? |
false |
-Confirm
运行 cmdlet 之前提示你进行确认。
是否为必需? |
false |
位置? |
named |
默认值 |
false |
是否接受管道输入? |
false |
是否接受通配符? |
false |
-WhatIf
显示如果运行 cmdlet 则会发生什么情况。cmdlet 未运行。
是否为必需? |
false |
位置? |
named |
默认值 |
false |
是否接受管道输入? |
false |
是否接受通配符? |
false |
<CommonParameters>
此 cmdlet 支持通用参数:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。有关详细信息,请参阅 about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).
输入
输入类型是指可通过管道传送给 cmdlet 的对象的类型。
输出
输出类型是 cmdlet 所发出对象的类型。
- Microsoft.HyperV.Powershell.VMFirmware
注意
- Note: This cmdlet is supported only when run against Generation 2 virtual machines.
示例
Example 1
This example enables secure boot functionality on the virtual machine “Test VM”.
PS C:\> Set-VMFirmware "Test VM" -EnableSecureBoot On
Example 2
This example sets the virtual machine “Test VM” to boot off of the VM network adapter object stored in $vmNetworkAdapter. This object was acquired using get-VMNetworkAdapter.
PS C:\> Set-VMFirmware "Test VM" -FirstBootDevice $vmNetworkAdapter
Example 3
Sets the boot order for the virtual machine “Test VM”. $vmNetworkAdapter contains a VM Network Adapter object (acquired using get-VMNetworkAdapter) and $vmHardDiskDrive contains a VM hard disk object (acquired using get-VMHardDiskDrive). Any existing boot entries not specified by this command will be removed from the virtual machine.
PS C:\> Set-VMFirmware "Test VM" -BootOrder $vmNetworkAdapter, $vmHardDiskDrive