Set-VMBios

Configures the BIOS of a Generation 1 virtual machine.

Syntax

Set-VMBios
   [-CimSession <CimSession[]>]
   [-ComputerName <String[]>]
   [-Credential <PSCredential[]>]
   [-VMName] <String[]>
   [-DisableNumLock]
   [-EnableNumLock]
   [-StartupOrder <BootDevice[]>]
   [-Passthru]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-VMBios
   [-VM] <VirtualMachine[]>
   [-DisableNumLock]
   [-EnableNumLock]
   [-StartupOrder <BootDevice[]>]
   [-Passthru]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-VMBios
   [-VMBios] <VMBios[]>
   [-DisableNumLock]
   [-EnableNumLock]
   [-StartupOrder <BootDevice[]>]
   [-Passthru]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The Set-VMBios cmdlet configures the BIOS of a Generation 1 virtual machine. Note: This cmdlet does not operate with Generation 2 virtual machine. If attempted, the cmdlet throws an error.

Examples

Example 1

PS C:\> Set-VMBios TestVM -DisableNumLock

This example disables the NumLock key by default on virtual machine TestVM.

Example 2

PS C:\> Set-VMBios TestVM -StartupOrder @("Floppy", "LegacyNetworkAdapter", "CD", "IDE")

This example configures virtual machine TestVM to check for a boot device in the following order: floppy disk, network, CD drive, hard disk.

Parameters

-CimSession

Runs the cmdlet in a remote session or on a remote computer. Enter a computer name or a session object, such as the output of a New-CimSession or Get-CimSession cmdlet. The default is the current session on the local computer.

Type:CimSession[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Specifies one or more Hyper-V hosts for which the BIOS is to be configured. NetBIOS names, IP addresses, and fully qualified domain names are allowable. The default is the local computer. Use localhost or a dot (.) to specify the local computer explicitly.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Specifies one or more user accounts that have permission to perform this action. The default is the current user.

Type:PSCredential[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisableNumLock

Specifies that NumLock is to be disabled in the BIOS of the virtual machine to be configured.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableNumLock

Specifies that NumLock is to be enabled in the BIOS of the virtual machine to be configured.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Passthru

Specifies that an Microsoft.HyperV.PowerShell.Bios object is to be passed through to the pipeline representing the BIOS to be configured.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StartupOrder

Specifies an array of boot devices representing the boot order in the BIOS of the virtual machine. The boot devices are specified as members of the BootDevices enumeration (CD, IDE, LegacyNetworkAdapter, Floppy).

Note: The other BootDevices enumeration values of VHD and NetworkAdapter are for Generation 2 VMs only, and are not valid with this cmdlet.

Type:BootDevice[]
Accepted values:Floppy, CD, IDE, LegacyNetworkAdapter, NetworkAdapter, VHD
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VM

Specifies the virtual machine for which the BIOS is to be configured.

Type:VirtualMachine[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMBios

Specifies an array of BIOS objects. The cmdlet configures the BIOS that you specify for the virtual machines. To obtain a BIOS object, use the Get-VMBios cmdlet.

Type:VMBios[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMName

Specifies the name of the virtual machine for which the BIOS is to be configured.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Outputs

None

Default

Microsoft.HyperV.PowerShell.Bios

If -PassThru is specified.