Set-VMHardDiskDrive

Configures a virtual hard disk.

Syntax

Set-VMHardDiskDrive
   [-ComputerName <String[]>]
   [-VMName] <String>
   [[-ControllerType] <ControllerType>]
   [[-ControllerNumber] <Int32>]
   [[-ControllerLocation] <Int32>]
   [[-Path] <String>]
   [-ToControllerType <ControllerType>]
   [-ToControllerNumber <Int32>]
   [-ToControllerLocation <Int32>]
   [-DiskNumber <UInt32>]
   [-ResourcePoolName <String>]
   [-SupportPersistentReservations <Boolean>]
   [-AllowUnverifiedPaths]
   [-MaximumIOPS <UInt64>]
   [-MinimumIOPS <UInt64>]
   [-Passthru]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-VMHardDiskDrive
   [-ComputerName <String[]>]
   [-VMHardDiskDrive] <HardDiskDrive[]>
   [[-Path] <String>]
   [-ToControllerType <ControllerType>]
   [-ToControllerNumber <Int32>]
   [-ToControllerLocation <Int32>]
   [-DiskNumber <UInt32>]
   [-ResourcePoolName <String>]
   [-SupportPersistentReservations <Boolean>]
   [-AllowUnverifiedPaths]
   [-MaximumIOPS <UInt64>]
   [-MinimumIOPS <UInt64>]
   [-Passthru]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

The Set-VMHardDiskDrive cmdlet configures a virtual hard disk.

Examples

Example 1

PS C:\> Set-VMHardDiskDrive -VMName TestVM -Path .\Test.vhd

Configures the hard drive of virtual machine TestVM to use Test.vhd as its media.

Example 2

PS C:\> Get-VMHardDiskDrive -VMName TestVM -ControllerType IDE -ControllerNumber 1 -ControllerLocation 0 | Set-VMHardDiskDrive -ToControllerLocation 1

Moves the virtual hard drive on virtual machine TestVM from IDE 1,0 to IDE 1,1.

Required Parameters

-VMHardDiskDrive

Specifies one or more hard disks to be configured.

Type:HardDiskDrive[]
Position:0
Default value:None
Accept pipeline input:True (ByValue)
Accept wildcard characters:False
-VMName

Specifies the name of the virtual machine on which the virtual hard drive is to be configured.

Type:String
Position:0
Default value:None
Accept pipeline input:False
Accept wildcard characters:False

Optional Parameters

-AllowUnverifiedPaths

Specifies that no error is to be thrown if the specified path is not verified as accessible by the cluster. This parameter is applicable to clustered virtual machines.

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

Specifies one or more Hyper-V hosts on which the virtual hard drive 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[]
Aliases:PSComputerName
Position:Named
Default value:.
Accept pipeline input:True (ByPropertyName)
Accept wildcard characters:False
-Confirm

Prompts you for confirmation before running the cmdlet.

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

Specifies the number of the location on the controller to which the virtual hard drive to be configured is attached. If not specified, all hard drives are configured.

Type:Int32
Position:3
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ControllerNumber

Specifies the number of the controller to which the virtual hard drive to be configured is attached. If not specified, all hard drives are configured.

Type:Int32
Position:2
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ControllerType

Specifies the type of the controller to which the virtual hard drive to be configured is attached. Allowed values are Floppy, IDE, and SCSI.

Type:ControllerType
Parameter Sets:IDE, SCSI, Floppy
Position:1
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-DiskNumber

Specifies the disk number of the offline physical hard drive that should be connected as a passthrough disk.

Type:UInt32
Aliases:Number
Position:Named
Default value:None
Accept pipeline input:True (ByPropertyName)
Accept wildcard characters:False
-MaximumIOPS

Specifies the maximum normalized I/O operations per second (IOPS) for the hard disk. Hyper-V calculates normalized IOPS as the total size of I/O per second divided by 8 KB.

Type:UInt64
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-MinimumIOPS

Specifies the minimum normalized I/O operations per second (IOPS) for the hard disk. Hyper-V calculates normalized IOPS as the total size of I/O per second divided by 8 KB.

Type:UInt64
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-Passthru

Specifies that a Microsoft.HyperV.PowerShell.HardDiskDrive object is to be passed through to the pipeline representing the virtual hard drive to be configured.

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

Specifies the path to media the virtual hard disk is to use.

Type:String
Position:4
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ResourcePoolName

Specifies the name of the virtual hard disk resource pool to which this drive belongs.

Type:String
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-SupportPersistentReservations

Indicates whether the hard disk supports SCSI persistent reservation semantics. Specify this parameter when the hard disk is a shared disk that is used by multiple virtual machines.

Type:Boolean
Aliases:ShareVirtualDisk
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ToControllerLocation

Specifies the controller location to which this drive should be moved. Allowed values are 0 and 1 for IDE controllers, and from 0 to 63 for SCSI controllers.

Type:Int32
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ToControllerNumber

Specifies the controller location to which this drive should be moved. Allowed values are 0 and 1 for IDE controllers, and from 0 to 3 for SCSI controllers.

Type:Int32
Position:Named
Default value:None
Accept pipeline input:False
Accept wildcard characters:False
-ToControllerType

Specifies the type of controller to which this drive should be moved. Allowed values are IDE and SCSI.

Type:ControllerType
Parameter Sets:IDE, SCSI, Floppy
Position:Named
Default value:None
Accept pipeline input:False
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
Accept pipeline input:False
Accept wildcard characters:False