Debug-Volume

Finds problems with a volume and recommends solutions.

Syntax

Debug-Volume
     [-DriveLetter] <Char[]>
     [-CimSession <CimSession>]
     [-ThrottleLimit <Int32>]
     [-AsJob]
     [<CommonParameters>]
Debug-Volume
     -ObjectId <String[]>
     [-CimSession <CimSession>]
     [-ThrottleLimit <Int32>]
     [-AsJob]
     [<CommonParameters>]
Debug-Volume
     -Path <String[]>
     [-CimSession <CimSession>]
     [-ThrottleLimit <Int32>]
     [-AsJob]
     [<CommonParameters>]
Debug-Volume
     -FileSystemLabel <String[]>
     [-CimSession <CimSession>]
     [-ThrottleLimit <Int32>]
     [-AsJob]
     [<CommonParameters>]
Debug-Volume
     -InputObject <CimInstance>
     [-CimSession <CimSession>]
     [-ThrottleLimit <Int32>]
     [-AsJob]
     [<CommonParameters>]

Description

The Debug-Volume cmdlet finds problems with a volume and recommends solutions.

Examples

Example 1: Debug a volume

PS C:\>Get-Volume | ? {?_.HealthStatus -ne "Healthy"} | Debug-Volume

This cmdlet gets the status of volumes where the HealthStatus property does not equal Healthy, and uses the pipeline operator to pass those volumes to the Debug-Volume cmdlet.

Parameters

-AsJob

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

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

-DriveLetter

Specifies an array of letters that identify one or more drives or volumes in the system.

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

-FileSystemLabel

Specifies an array of file system labels.

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

-InputObject

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

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

-ObjectId

Specifies an array of object IDs, as strings.

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

-Path

Specifies an array of valid paths.

Type:String[]
Position:Named
Default value:None
Required:True
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

Outputs

CimInstance

Notes

  • When used in Failover Cluster, cmdlets from the Storage module operate on cluster level (all servers in the cluster).