Get-PhysicalDisk

Gets a list of all PhysicalDisk objects visible across any available Storage Management Providers, or optionally a filtered list.

Syntax

Get-PhysicalDisk
   [-AsJob]
   [-CanPool <Boolean[]>]
   [-CimSession <CimSession[]>]
   [-Description <String[]>]
   [-HealthStatus <HealthStatus[]>]
   [-Manufacturer <String[]>]
   [-Model <String[]>]
   [-ThrottleLimit <Int32>]
   [-UniqueId <String[]>]
   [-Usage <Usage[]>]
Get-PhysicalDisk
   [[-FriendlyName] <String[]>]
   [-AsJob]
   [-CanPool <Boolean[]>]
   [-CimSession <CimSession[]>]
   [-Description <String[]>]
   [-HealthStatus <HealthStatus[]>]
   [-Manufacturer <String[]>]
   [-Model <String[]>]
   [-ThrottleLimit <Int32>]
   [-Usage <Usage[]>]
Get-PhysicalDisk
   [-AsJob]
   [-CanPool <Boolean[]>]
   [-CimSession <CimSession[]>]
   [-Description <String[]>]
   [-HealthStatus <HealthStatus[]>]
   [-Manufacturer <String[]>]
   [-Model <String[]>]
   [-StoragePool <CimInstance>]
   [-ThrottleLimit <Int32>]
   [-Usage <Usage[]>]
Get-PhysicalDisk
   [-AsJob]
   [-CanPool <Boolean[]>]
   [-CimSession <CimSession[]>]
   [-Description <String[]>]
   [-HealthStatus <HealthStatus[]>]
   [-Manufacturer <String[]>]
   [-Model <String[]>]
   [-StorageSubSystem <CimInstance>]
   [-ThrottleLimit <Int32>]
   [-Usage <Usage[]>]
Get-PhysicalDisk
   [-AsJob]
   [-CanPool <Boolean[]>]
   [-CimSession <CimSession[]>]
   [-Description <String[]>]
   [-HasAllocations <Boolean>]
   [-HealthStatus <HealthStatus[]>]
   [-Manufacturer <String[]>]
   [-Model <String[]>]
   [-SelectedForUse <Boolean>]
   [-ThrottleLimit <Int32>]
   [-Usage <Usage[]>]
   [-VirtualDisk <CimInstance>]
   [-VirtualRangeMax <UInt64>]
   [-VirtualRangeMin <UInt64>]

Description

The Get-PhysicalDisk cmdlet gets a list of all PhysicalDisk objects visible across any available Storage Management Providers, or optionally a filtered list of disks.

Examples

Example 1: Getting all physical disks

PS C:\> Get-PhysicalDisk
FriendlyName        CanPool            OperationalStatus   HealthStatus        Usage                              Size 
------------        --------            -----------------   ------------        -----                              ---- 
PhysicalDisk4       False               OK                  Healthy             Data Store                        25 GB

This example returns an array of all PhysicalDisk objects present in the computer. A storage management provider is required to manage physical disks.

Example 2: Getting all physical disks eligible for adding to a storage pool

PS C:\>Get-PhysicalDisk -CanPool $True

This example returns an array of PhysicalDisk objects that are available for adding to a storage pool (they are in a primordial pool).

Parameters

-AsJob

Runs the cmdlet as a background job. Use this parameter to run commands that take a long time to complete.

The cmdlet immediately returns an object that represents the job and then displays the command prompt. You can continue to work in the session while the job completes. To manage the job, use the *-Job cmdlets. To get the job results, use the Receive-Job cmdlet.

For more information about Windows PowerShell background jobs, see about_Jobs.

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

-CanPool

Gets physical disks that are available for use in a storage pool.

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

-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[]
Aliases:Session
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

Gets the physical disks that contain the specified description. Enter a description or use wildcard characters to enter a description pattern.

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

-FriendlyName

Gets the physical disk with the specified friendly name. Enter a friendly name or use wildcard characters to enter a name pattern.

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

-HasAllocations

Indicates whether the cmdlet gets a list of physical disks that host the extents of the virtual disk that you specify by using the VirtualDisk parameter.

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

-HealthStatus

Specifies the health status of physical disks. The acceptable values for this parameter are:

  • Healthy
  • Unhealthy
  • Unknown
  • Warning
Type:HealthStatus[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Manufacturer

Gets the physical disks with the specified manufacturer. Enter a manufacturer string or use wildcard characters to enter a pattern.

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

-Model

Gets the physical disks of the specified model. Enter a model string or use wildcard characters to enter a pattern.

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

-SelectedForUse

Indicates whether the cmdlet gets a list of physical disks to host the extents that belong to the virtual disk specified by the VirtualDisk parameter. Specify the physical disks to host the extents of a virtual disk by using the PhysicalDisksToUse parameter of the New-VirtualDisk cmdlet.

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

-StoragePool

Accepts a StoragePool object as input and gets the physical disks that belong to the pool. The Storage Pool CIM object is exposed by the Get-StoragePool cmdlet.

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

-StorageSubSystem

Specifies a storage subsystem. This cmdlet gets physical disks attached to the storage subsystem that you specify. To obtain a StorageSubsystem object, use the Get-StorageSubSystem cmdlet.

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

-ThrottleLimit

Specifies the maximum number of concurrent operations that can be established to run the cmdlet. If this parameter is omitted or a value of 0 is entered, then Windows PowerShell® calculates an optimum throttle limit for the cmdlet based on the number of CIM cmdlets that are running on the computer. The throttle limit applies only to the current cmdlet, not to the session or to the computer.

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

-UniqueId

Gets only the physical disks with the specified IDs. Type one or more IDs (separated by commas), or use wildcard characters to enter a pattern.

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

-Usage

Specifies an allocation method or usage. This cmdlet gets the physical disks that have the specified allocation method. The acceptable values for this parameter are:

  • AutoSelect
  • HotSpare
  • Journal
  • ManualSelect
  • Retired
  • Unknown
Type:Usage[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VirtualDisk

Accepts a VirtualDisk object as input and gets the physical disks used by the virtual disk. The VirtualDisk object is exposed by the Get-VirtualDisk cmdlet.

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

-VirtualRangeMax

This parameter is reserved for future use.

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

-VirtualRangeMin

This parameter is reserved for future use.

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

Inputs

CimInstance

You can pipe an MSFT_StoragePool object to the StoragePool parameter.

CimInstance

You can pipe an MSFT_StorageSubsystem object to the StorageSubsystem parameter.

CimInstance

You can pipe an MSFT_VirtualDisk object to the VirtualDisk parameter.

Outputs

CimInstance

The Get-PhysicalDisk cmdlet returns objects that represent physical disks.