New-FsrmQuotaTemplate

New-FsrmQuotaTemplate

Creates a quota template.

Syntax

Parameter Set: cim:CreateInstance0
New-FsrmQuotaTemplate [-Name] <String> -Size <UInt64> [-AsJob] [-CimSession <CimSession[]> ] [-Description <String> ] [-SoftLimit] [-Threshold <CimInstance[]> ] [-ThrottleLimit <Int32> ] [-Confirm] [-WhatIf] [ <CommonParameters>]

Detailed Description

The New-FsrmQuotaTemplate cmdlet creates a quota template. A quota template defines a space limit, the type of quota (hard or soft), and (optionally) a set of notifications that the server generates automatically when quota usage reaches the threshold levels that you define.

Parameters

-AsJob

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

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

Aliases

Session

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-Description<String>

Specifies a description for the quota.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Name<String>

Specifies a name for the quota.

Aliases

none

Required?

true

Position?

2

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

true

-Size<UInt64>

Specifies the size limit that the quota enforces.

Aliases

none

Required?

true

Position?

named

Default Value

none

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-SoftLimit

Indicates that the quota reports on the disk usage with respect to the size limit and run thresholds, but does not enforce the size limit.

Aliases

none

Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

True (ByPropertyName)

Accept Wildcard Characters?

false

-Threshold<CimInstance[]>

Specifies an array of threshold objects.

The threshold object defines a percentage of used space from the available space that can be reached during a file operation, and a set of actions that the server takes when a quota reaches the threshold. To perform the action when the quota is exceeded, set the threshold to 100 (percent). You can use the New-FsrmQuotaThreshold cmdlet to create a threshold object.

Aliases

none

Required?

false

Position?

named

Default Value

none

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-ThrottleLimit<Int32>

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

-Confirm

Prompts you for confirmation before running the cmdlet.

Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet is not run.

Required?

false

Position?

named

Default Value

false

Accept Pipeline Input?

false

Accept Wildcard Characters?

false

<CommonParameters>

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

Inputs

The input type is the type of the objects that you can pipe to the cmdlet.

Outputs

The output type is the type of the objects that the cmdlet emits.

  • Microsoft.Management.Infrastructure.CimInstance#MSFT_FSRMQuotaTemplate

Examples

Example 1: Create a hard limit quota template

This command creates a quota template named "1GB limit". The command adds a description for the quota template and configures a hard size limit at 1GB that does not have any thresholds. A hard limit quota prevents users from saving files after the space limit is reached and generates notifications when the volume of data reaches each threshold.

PS C:\> New-FsrmQuotaTemplate -Name "1GB limit" -Description "limit usage to 1 GB." -Size 1GB

Example 2: Create a soft limit quota template that runs a command

This example creates a quota template that has a soft limit at 128MB, a threshold at 90% usage, and that runs a custom command.

The first command creates an FSRM action object and stores the results in the $Action variable. The action indicates that when an associated event occurs, the server run Cmd.exe with the specified parameters. The command specifies that server record errors codes from the executed command in the error log.

PS C:\> $Action = New-FsrmAction -Type Command -Command "c:\windows\system32\cmd.exe" -CommandParameters "echo [source file path] >> c:\log.txt" -ShouldLogError

The second command creates a threshold object and stores the results in the $Threshold variable. The command specifies the percentage of the quota limit at which to execute the action, and specifies the action stored in the $Action variable.

PS C:\> $Threshold = New-FsrmQuotaThreshold -Percentage 90 -Action $action

The third command creates a quota template named "128MB limit" and specifies the threshold stored in the $Threshold variable. The Softlimit paramater indicates the quota reports on the disk usage with respect to the size limit and run thresholds, but does not enforce the size limit.

PS C:\> New-FsrmQuotaTemplate -Name "128MB limit" -Size 128MB -Threshold $Threshold -Softlimit

Get-FsrmQuotaTemplate

Set-FsrmQuotaTemplate

Remove-FsrmQuotaTemplate