New-Volume
Creates a volume with the specified file system.
Parameter Set: ByFriendlyName
New-Volume [-StoragePoolFriendlyName] <String[]> -FileSystem <FileSystem> -FriendlyName <String> [-AccessPath <String> ] [-AsJob] [-CimSession <CimSession[]> ] [-NumberOfColumns <UInt16> ] [-PhysicalDiskRedundancy <UInt16> ] [-ProvisioningType <ProvisioningType> ] [-ResiliencySettingName <String> ] [-Size <UInt64> ] [-StorageTiers <CimInstance[]> ] [-StorageTierSizes <UInt64[]> ] [-ThrottleLimit <Int32> ] [ <CommonParameters>]
Parameter Set: ByName
New-Volume -FileSystem <FileSystem> -FriendlyName <String> -StoragePoolName <String[]> [-AccessPath <String> ] [-AsJob] [-CimSession <CimSession[]> ] [-NumberOfColumns <UInt16> ] [-PhysicalDiskRedundancy <UInt16> ] [-ProvisioningType <ProvisioningType> ] [-ResiliencySettingName <String> ] [-Size <UInt64> ] [-StorageTiers <CimInstance[]> ] [-StorageTierSizes <UInt64[]> ] [-ThrottleLimit <Int32> ] [ <CommonParameters>]
Parameter Set: ByUniqueId
New-Volume -FileSystem <FileSystem> -FriendlyName <String> -StoragePoolUniqueId <String[]> [-AccessPath <String> ] [-AsJob] [-CimSession <CimSession[]> ] [-NumberOfColumns <UInt16> ] [-PhysicalDiskRedundancy <UInt16> ] [-ProvisioningType <ProvisioningType> ] [-ResiliencySettingName <String> ] [-Size <UInt64> ] [-StorageTiers <CimInstance[]> ] [-StorageTierSizes <UInt64[]> ] [-ThrottleLimit <Int32> ] [ <CommonParameters>]
Parameter Set: InputObject (cdxml)
New-Volume -FileSystem <FileSystem> -FriendlyName <String> -InputObject <CimInstance[]> [-AccessPath <String> ] [-AsJob] [-CimSession <CimSession[]> ] [-NumberOfColumns <UInt16> ] [-PhysicalDiskRedundancy <UInt16> ] [-ProvisioningType <ProvisioningType> ] [-ResiliencySettingName <String> ] [-Size <UInt64> ] [-StorageTiers <CimInstance[]> ] [-StorageTierSizes <UInt64[]> ] [-ThrottleLimit <Int32> ] [ <CommonParameters>]
The New-Volume cmdlet creates a volume with the specified file system. The cmdlet manages the creation of the virtual disk with the specified size and resiliency setting, initializes the disk, creates a partition on it and formats the volume with the specified file system, including Cluster Shared Volumes (CSVs).
Specifies a drive letter or a mount point to assign to the volume.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
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.
Aliases |
Session |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
Specifies the file system to use for the volume. The cmdlet formats the volume with the file system you specify. The acceptable values for this parameter are:
-- NTFS
-- ReFS
-- CSVFS_NTFS
-- CSVFS_ReFS
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
Specifies a friendly name. The cmdlet creates the volume with this name.
Aliases |
VolumeFriendlyName |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
Specifies the input to this cmdlet. You can use this parameter, or you can pipe the input to this cmdlet.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue) |
Accept Wildcard Characters? |
false |
Specifies the number of columns to create on the virtual disk.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
Specifies the physical disk redundancy value to use during the creation of the virtual disk. This value represents how many failed physical disks the virtual disk can tolerate without data loss for two-way mirror spaces (1), three-way mirror spaces (2), single-parity spaces (1), and dual parity spaces (2)..
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
Specifies the type of provisioning. The acceptable values for this parameter are: Fixed, or Thin. Storage spaces that use storage tiers or dual parity must use Fixed provisioning.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
Specifies the name of the desired resiliency setting, for example, Simple, Mirror, or Parity.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
Specifies the size of the volume to create.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
Specifies an array of storage pool friendly names. The cmdlet creates the volume in the storage pools you specify.
Aliases |
none |
Required? |
true |
Position? |
1 |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
Specifies an array of storage pool names. The cmdlet creates the volume in the storage pools you specify.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
Specifies an array of unique IDs, as strings. The cmdlet creates the volume in the storage pools you specify.
Aliases |
StoragePoolId |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByPropertyName) |
Accept Wildcard Characters? |
false |
Specifies an array of storage tiers. The cmdlet creates the virtual disk for the volume with the storage tiers you specify. To obtain a storage tier object, use the New-StorageTier cmdlet.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
Specifies an array of storage tier sizes. The cmdlet creates the virtual disk for the volume with the storage tier sizes you specify.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
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.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).
The input type is the type of the objects that you can pipe to the cmdlet.
Microsoft.Management.Infrastructure.CimInstance#ROOT/Microsoft/Windows/Storage/MSFT_StoragePool
You can use the pipeline operator to pass an MSFT_StoragePool object to the InputObject parameter.
The output type is the type of the objects that the cmdlet emits.
Microsoft.Management.Infrastructure.CimInstance#root/Microsoft/Windows/Storage/MSFT_Volume
This cmdlet outputs an object that represents the newly created volume.
- To create a volume on a new storage space with enclosure-awareness enabled (providing resiliency for an entire JBOD enclosure failure), use the Set-StoragePool cmdlet with the –EnclosureAwareDefault $true parameter to set the storage pool to create storage spaces with enclosure awareness enabled by default.
This command creates a new storage space in the CompanyData pool using the Mirror resiliency setting and fixed provisioning, and then formats the volume with the NTFS file system and assigns drive letter M.
PS C:\> New-Volume -StoragePoolName "CompanyData" -FriendlyName "TestVolume" -Size 10GB -ResiliencySettingName "Mirror" -FileSystem NTFS -AccessPath "M: "-ProvisioningType Fixed
This command creates new storage space in the CompanyData pool using the Mirror resiliency setting, fixed provisioning, a 20 GB SSD storage tier, and an 80 GB HDD storage tier, and then formats the volume with the NTFS file system and assigns drive letter M.
PS C:\> New-Volume -StoragePoolFriendlyName "CompanyData" -FriendlyName "UserData" -AccessPath "M:" -ResiliencySettingName "Mirror" -ProvisioningType "Fixed" -StorageTiers (Get-StorageTier -FriendlyName "*SSD*"), (Get-StorageTier -FriendlyName "*HDD*") -StorageTierSizes 20GB, 80GB -FileSystem NTFS