Add-VMHardDiskDrive

Add-VMHardDiskDrive

Adds a hard disk drive to a virtual machine.

語法

Parameter Set: VMName
Add-VMHardDiskDrive [-VMName] <String[]> [[-ControllerType] <ControllerType]> ] [[-ControllerNumber] <Int32]> ] [[-ControllerLocation] <Int32]> ] [[-Path] <String> ] [-AllowUnverifiedPaths] [-CimSession <Microsoft.Management.Infrastructure.CimSession[]> ] [-ComputerName <System.String[]> ] [-Credential <System.Management.Automation.PSCredential[]> ] [-DiskNumber <UInt32> ] [-MaximumIOPS <UInt64]> ] [-MinimumIOPS <UInt64]> ] [-Passthru] [-QoSPolicy <Microsoft.Management.Infrastructure.CimInstance> ] [-QoSPolicyID <System.String> ] [-ResourcePoolName <String> ] [-SupportPersistentReservations] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: VMDriveController
Add-VMHardDiskDrive [-VMDriveController] <VMDriveController> [[-ControllerLocation] <Int32]> ] [[-Path] <String> ] [-AllowUnverifiedPaths] [-DiskNumber <UInt32> ] [-MaximumIOPS <UInt64]> ] [-MinimumIOPS <UInt64]> ] [-Passthru] [-QoSPolicy <Microsoft.Management.Infrastructure.CimInstance> ] [-QoSPolicyID <System.String> ] [-ResourcePoolName <String> ] [-SupportPersistentReservations] [-Confirm] [-WhatIf] [ <CommonParameters>]

Parameter Set: VMObject
Add-VMHardDiskDrive [-VM] <VirtualMachine[]> [[-ControllerType] <ControllerType]> ] [[-ControllerNumber] <Int32]> ] [[-ControllerLocation] <Int32]> ] [[-Path] <String> ] [-AllowUnverifiedPaths] [-DiskNumber <UInt32> ] [-MaximumIOPS <UInt64]> ] [-MinimumIOPS <UInt64]> ] [-Passthru] [-QoSPolicy <Microsoft.Management.Infrastructure.CimInstance> ] [-QoSPolicyID <System.String> ] [-ResourcePoolName <String> ] [-SupportPersistentReservations] [-Confirm] [-WhatIf] [ <CommonParameters>]

詳細描述

The Add-VMHardDiskDrive cmdlet adds a hard disk drive to a virtual machine.

參數

-CimSession<Microsoft.Management.Infrastructure.CimSession[]>

在遠端工作階段或遠端電腦上執行 Cmdlet。輸入電腦名稱或工作階段物件,例如 New-CimSessionGet-CimSession Cmdlet 的輸出。預設為本機電腦上目前的工作階段。

別名

none

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-ComputerName<System.String[]>

Specifies one or more Hyper-V hosts that run this cmdlet. 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.

別名

PSComputerName

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-ControllerLocation<Int32]>

Specifies the number of the location on the controller at which the hard disk drive is to be added. If not specified, the first available location in the controller specified with the ControllerNumber parameter is used.

別名

none

必要項?

false

位置?

4

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-ControllerNumber<Int32]>

Specifies the number of the controller to which the hard disk drive is to be added. If not specified, this parameter assumes the value of the first available controller at the location specified in the ControllerLocation parameter.

別名

none

必要項?

false

位置?

3

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-ControllerType<ControllerType]>

Specifies the type of the controller to which the hard disk drive is to be added. If not specified, IDE is attempted first. If the IDE controller port at the specified number and location is already connected to a drive, then it will try to create one on the SCSI controller specified by ControllerNumber. Allowed values are IDE and SCSI.

別名

none

必要項?

false

位置?

2

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-Credential<System.Management.Automation.PSCredential[]>

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

別名

none

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-Passthru

Passes the added Microsoft.HyperV.PowerShell.HardDiskDrive object through to the pipeline.

別名

none

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-Path<String>

Specifies the full path of the hard disk drive file to be added.

別名

none

必要項?

false

位置?

5

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-QoSPolicy<Microsoft.Management.Infrastructure.CimInstance>

Specifies the name of the storage Quality of Service (QoS) policy that this cmdlet associates with the hard disk drive.

別名

none

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-QoSPolicyID<System.String>

Specifies the unique ID for a storage QoS policy that this cmdlet associates with the hard disk drive.

別名

none

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-ResourcePoolName<String>

Specifies the friendly name of the ISO resource pool to which this virtual hard disk is to be associated.

別名

none

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-SupportPersistentReservations

Indicates that 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.

別名

ShareVirtualDisk

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-VM<VirtualMachine[]>

Specifies the virtual machine to which the hard disk drive is to be added.

別名

none

必要項?

true

位置?

1

預設值

none

接受管線輸入?

True (ByValue)

接受萬用字元?

false

-VMDriveController<VMDriveController>

Specifies the controller to which the hard disk drive is to be added.

別名

none

必要項?

true

位置?

1

預設值

none

接受管線輸入?

True (ByValue)

接受萬用字元?

false

-VMName<String[]>

Specifies the name of the virtual machine to which the hard disk drive is to be added.

別名

none

必要項?

true

位置?

1

預設值

none

接受管線輸入?

True (ByValue)

接受萬用字元?

false

-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.

別名

none

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-DiskNumber<UInt32>

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

別名

Number

必要項?

false

位置?

named

預設值

none

接受管線輸入?

True (ByPropertyName)

接受萬用字元?

false

-MaximumIOPS<UInt64]>

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.

別名

none

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-MinimumIOPS<UInt64]>

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.

別名

none

必要項?

false

位置?

named

預設值

none

接受管線輸入?

false

接受萬用字元?

false

-Confirm

在執行指令程式之前提示您確認。

必要項?

false

位置?

named

預設值

false

接受管線輸入?

false

接受萬用字元?

false

-WhatIf

示範當執行指令程式時會發生什麼事情。此指令程式並未執行。

必要項?

false

位置?

named

預設值

false

接受管線輸入?

false

接受萬用字元?

false

<CommonParameters>

這個指令程式支援一般參數:-Verbose、-Debug、-ErrorAction、-ErrorVariable、-OutBuffer 和 -OutVariable。如需詳細資訊,請參閱 about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216)。

輸入

輸入類型是可透過管道傳送至指令程式的物件類型。

  • Microsoft.HyperV.Powershell.DriveController[]
  • Microsoft.HyperV.Powershell.VirtualMachine[]

輸出

輸出類型是指令程式所發出的物件類型。

  • None by default; Microsoft.HyperV.PowerShell.HardDiskDrive if –PassThru is specified.

範例

Example 1

Creates a virtual hard disk using file D:\VHDs\disk1.vhdx on virtual machine Test.

PS C:\> Add-VMHardDiskDrive -VMName Test -Path D:\VHDs\disk1.vhdx

Example 2

Adds a virtual hard disk to SCSI controller number 0 on virtual machine Test.

PS C:\> Get-VM Test | Add-VMHardDiskDrive –ControllerType SCSI -ControllerNumber 0

Example 3

This example gets a SCSI controller on a virtual machine named Test and then adds physical disk 2 to that controller.

PS C:\> Get-VMScsiController –VMName Test –Number 0 | Add-VMHardDiskDrive –DiskNumber 2

Example 4

This example gets physical disk 2 and then adds it to a virtual machine named Test.

PS C:\> Get-Disk 2 | Add-VMHardDiskDrive –VMName Test