Update-StoragePool

Updates the metadata of a Windows Server 2012 R2 storage pool.

Syntax

Update-StoragePool
      [-FriendlyName] <String[]>
      [-CimSession <CimSession[]>]
      [-ThrottleLimit <Int32>]
      [-AsJob]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-StoragePool
      -UniqueId <String[]>
      [-CimSession <CimSession[]>]
      [-ThrottleLimit <Int32>]
      [-AsJob]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-StoragePool
      -Name <String[]>
      [-CimSession <CimSession[]>]
      [-ThrottleLimit <Int32>]
      [-AsJob]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]
Update-StoragePool
      -InputObject <CimInstance[]>
      [-CimSession <CimSession[]>]
      [-ThrottleLimit <Int32>]
      [-AsJob]
      [-PassThru]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

The Update-StoragePool cmdlet updates the metadata of a previous Windows Server® storage pool to a new Windows Server® storage pool. This is a required step for upgrading from Windows Server 2012 to either Windows Server 2012 R2, or Windows Server 2016, and from Windows Server 2012 R2 to Windows Server 2016. If you upgrade Windows Server without running this command, storage pools hosted on that server continue to work, but new Storage Spaces functionality, such as storage tiers, is not available. Some other functions and commands may not behave as expected, as well.

Examples

Example 1: Upgrade a storage pool by using a friendly name

PS C:\>Update-StoragePool -FriendlyName "Win8Pool32"

This command upgrades the storage pool that has the friendly name Win8Pool32.

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

-Confirm

Prompts you for confirmation before running the cmdlet.

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

-FriendlyName

Specifies an array of storage pool friendly names. The cmdlet upgrades the storage pools that you specify by friendly name.

Type:String[]
Position:0
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

-Name

Specifies an array of names. The cmdlet upgrades the storage pools that you specify by name. This human-readable name is not necessarily unique.

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

-PassThru

Returns an object representing the item with which you are working. By default, this cmdlet does not generate any output.

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

Specifies an array of unique IDs, as strings. The cmdlet upgrades the storage pools that have the IDs that you specify.

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

Inputs

CimInstance

You can use the pipeline operator to pass an array of MSFT_StoragePool objects to the InputObject parameter.

Outputs

CimInstance

This cmdlet generates an object that represents the storage pools that you updated, if you specify the PassThru parameter.

Notes

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