Get-Physical Disk

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

Syntax

Get-PhysicalDisk
   [-UniqueId <String>]
   [-Usage <PhysicalDiskUsage>]
   [-Description <String>]
   [-Manufacturer <String>]
   [-Model <String>]
   [-CanPool <Boolean>]
   [-HealthStatus <PhysicalDiskHealthStatus>]
   [-CimSession <CimSession>]
   [<CommonParameters>]
Get-PhysicalDisk
   [-ObjectId <String>]
   [-Usage <PhysicalDiskUsage>]
   [-Description <String>]
   [-Manufacturer <String>]
   [-Model <String>]
   [-CanPool <Boolean>]
   [-HealthStatus <PhysicalDiskHealthStatus>]
   [-CimSession <CimSession>]
   [<CommonParameters>]
Get-PhysicalDisk
   [[-FriendlyName] <String>]
   [[-SerialNumber] <String>]
   [-Usage <PhysicalDiskUsage>]
   [-Description <String>]
   [-Manufacturer <String>]
   [-Model <String>]
   [-CanPool <Boolean>]
   [-HealthStatus <PhysicalDiskHealthStatus>]
   [-CimSession <CimSession>]
   [<CommonParameters>]
Get-PhysicalDisk
   -InputObject <CimInstance>
   [-CimSession <CimSession>]
   [<CommonParameters>]
Get-PhysicalDisk
   -StorageSubsystem <CimInstance>
   [-Usage <PhysicalDiskUsage>]
   [-Description <String>]
   [-Manufacturer <String>]
   [-Model <String>]
   [-CanPool <Boolean>]
   [-HealthStatus <PhysicalDiskHealthStatus>]
   [-CimSession <CimSession>]
   [<CommonParameters>]
Get-PhysicalDisk
   -StorageEnclosure <CimInstance>
   [-Usage <PhysicalDiskUsage>]
   [-Description <String>]
   [-Manufacturer <String>]
   [-Model <String>]
   [-CanPool <Boolean>]
   [-HealthStatus <PhysicalDiskHealthStatus>]
   [-CimSession <CimSession>]
   [<CommonParameters>]
Get-PhysicalDisk
   -StorageNode <CimInstance>
   [-PhysicallyConnected]
   [-Usage <PhysicalDiskUsage>]
   [-Description <String>]
   [-Manufacturer <String>]
   [-Model <String>]
   [-CanPool <Boolean>]
   [-HealthStatus <PhysicalDiskHealthStatus>]
   [-CimSession <CimSession>]
   [<CommonParameters>]
Get-PhysicalDisk
   -StoragePool <CimInstance>
   [-Usage <PhysicalDiskUsage>]
   [-Description <String>]
   [-Manufacturer <String>]
   [-Model <String>]
   [-CanPool <Boolean>]
   [-HealthStatus <PhysicalDiskHealthStatus>]
   [-CimSession <CimSession>]
   [<CommonParameters>]
Get-PhysicalDisk
   -VirtualDisk <CimInstance>
   [-VirtualRangeMin <UInt64>]
   [-VirtualRangeMax <UInt64>]
   [-HasAllocations <Boolean>]
   [-SelectedForUse <Boolean>]
   [-NoRedundancy]
   [-Usage <PhysicalDiskUsage>]
   [-Description <String>]
   [-Manufacturer <String>]
   [-Model <String>]
   [-CanPool <Boolean>]
   [-HealthStatus <PhysicalDiskHealthStatus>]
   [-CimSession <CimSession>]
   [<CommonParameters>]

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

Required Parameters

-InputObject

Specifies the input object that is used in a pipeline command.

Type: CimInstance
Position: Named
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False
-StorageEnclosure

Specifies a storage enclosure associated with the physical disk that this cmdlet gets. To obtain a StorageEnclosure object, use the Get-StorageEnclosure cmdlet.

Type: CimInstance
Position: Named
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False
-StorageNode

Specifies a storage node as a CimInstance object. The cmdlet gets the physical disk connected to the node that you specify. To obtain a storage node object, use the Get-StorageNode cmdlet.

Type: CimInstance
Position: Named
Default value: None
Accept pipeline input: True (ByValue)
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
Accept pipeline input: True (ByValue)
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
Accept pipeline input: True (ByValue)
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
Accept pipeline input: True (ByValue)
Accept wildcard characters: False

Optional Parameters

-CanPool

Indicates that this cmdlet gets physical disks that are available for use in a storage pool.

Type: Boolean
Position: Named
Default value: None
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
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Description

Specifies a description. The cmdlet gets the physical disks that contain the description. You can use wildcard characters to enter a description pattern.

Type: String
Position: Named
Default value: None
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: 0
Default value: None
Accept pipeline input: True (ByValue)
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
Accept pipeline input: False
Accept wildcard characters: False
-HealthStatus

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

  • Healthy
  • Unhealthy
  • Unknown
  • Warning
Type: PhysicalDiskHealthStatus
Parameter Sets: Healthy, Warning, Unhealthy, Unknown
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Manufacturer

Specifies a manufacturer. The cmdlet gets the physical disks that match the value. You can use wildcard characters to enter a pattern.

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

Specifies a model. The cmdlet gets the physical disks that match the value. You can use wildcard characters to enter a pattern.

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

Indicates that this cmdlet gets physical disks that contain the last remaining copy of the data of a virtual disk.

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

Specifies the ID of the physical disk to get.

Type: String
Aliases: PhysicalDiskObjectId
Position: Named
Default value: None
Accept pipeline input: True (ByValue)
Accept wildcard characters: False
-PhysicallyConnected

Indicates that this cmdlet gets physical disks that are physically connected to the specified storage node.

Type: SwitchParameter
Position: Named
Default value: None
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
Accept pipeline input: False
Accept wildcard characters: False
-SerialNumber

Specifies the serial number of the physical disk to get.

Type: String
Position: 1
Default value: None
Accept pipeline input: True (ByValue)
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
Accept pipeline input: True (ByValue)
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: PhysicalDiskUsage
Parameter Sets: Unknown, AutoSelect, ManualSelect, HotSpare, Retired, Journal
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-VirtualRangeMax

This parameter is reserved for future use.

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

This parameter is reserved for future use.

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

Inputs

Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/Storage/MSFT_StoragePool

You can use the pipeline operator to pass an MSFT_StoragePool object to the StoragePool parameter.

Inputs

Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/Storage/MSFT_StorageSubsystem

You can use the pipeline operator to pass an MSFT_StorageSubsystem object to the StorageSubsystem parameter.

Inputs

Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/Storage/MSFT_VirtualDisk

You can use the pipeline operator to pass an MSFT_VirtualDisk object to the VirtualDisk parameter.

Outputs

Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/Storage/MSFT_PhysicalDisk

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