

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 配额管理
<a name="fsrm-quota-management"></a>

您可以使用文件服务器资源管理器 (FSRM) 配额管理来控制用户在您的 Windows 文件服务器文件系统上消耗 FSx 的存储空间量。配额可以限制可存储在特定文件夹中的数据量，并在存储使用量接近或超过定义的阈值时生成通知，从而帮助您管理存储容量。

## 配额管理的工作原理
<a name="fsrm-quota-management-how-it-works"></a>

配额管理提供两种类型的配额，您可以将其应用于文件系统上的文件夹：

硬限额  
防止用户在达到配额限制后保存文件。当用户尝试保存超出配额限制的文件时，操作将失败，并且用户会收到一条错误消息。

软限额  
允许用户在记录违规行为时超过配额限制。软配额可用于监控存储使用情况，而无需强制执行严格的限制。

## 配额模板
<a name="fsx-quota-templates"></a>

配额模板提供可重复使用的配置，用于定义配额设置，包括大小限制、配额类型（硬性或软性）和阈值通知。创建配额模板后，您可以将其应用于多个文件夹，而不必每次都重新配置相同的设置。更新配额模板时，您可以选择将更改应用于根据该模板创建的所有配额。

使用配额模板有以下几个好处：
+ **一致性**-确保相似的文件夹具有相同的配额配置
+ **效率**-将配额设置快速应用于多个文件夹
+ **可维护性**-通过修改模板来更新多个文件夹的配额设置

## 自动申请配额
<a name="fsx-auto-apply-quotas"></a>

自动应用配额会根据指定的模板自动为子文件夹创建配额。在父文件夹上创建 auto apply 配额时，FSRM 会自动为每个现有子文件夹以及用户将来创建的任何新子文件夹生成配额。这种方法对于想要在多个用户目录或部门文件夹中应用一致的配额限制的场景非常有用。

## 阈值通知
<a name="fsx-threshold-notifications"></a>

阈值定义了 FSRM 采取特定操作的使用级别。您可以为每个配额配置多个阈值，将每个阈值设置为配额限制的百分比。当存储使用率达到阈值百分比时，FSRM 可以执行以下操作：

事件日志记录  
将事件记录到亚马逊 CloudWatch 或亚马逊 Kinesis Data Firehose 进行监控和分析。您可以指定事件严重性级别（信息、警告或错误），并提供自定义消息正文。事件记录对于监控配额使用情况和与现有监控系统集成非常有用。

存储报告  
生成存储使用情况报告，其中提供有关占用存储空间的文件和文件夹的详细信息。存储报告可帮助您确定哪些用户或应用程序消耗的存储空间最多，并就存储管理做出明智的决策。有关更多信息，请参阅 [存储报告](fsrm-storage-reports.md)。

您可以为每个配额配置多个阈值，并对每个配额执行不同的操作。例如，您可以将配额配置为使用率为 75% 的信息事件和使用率为 90% 的警告事件。

## 配额管理命令
<a name="fsrm-quota-management-commands"></a>

您可以访问三个系列的 FSx 远程 PowerShell 命令来管理配额：

1. **配额命令**-创建、检索、修改、删除和更新特定文件夹的配额。当您需要 folder-by-folder逐一管理配额时，请使用这些命令。

1. **配额模板命令**-创建、检索和修改定义可重复使用的配额配置的配额模板。使用这些命令来建立可以应用于多个文件夹的标准配额策略。

1. **自动配额命令**-创建、检索、修改、移除和更新自动为子文件夹生成配额的自动应用配额。如果您需要在多个子文件夹中应用一致的配额限制，而无需手动创建单独的配额，请使用这些命令。

### 配额管理 FSx 远程 PowerShell 命令列表
<a name="fsx-quota-powershell-commands-list"></a>

**注意**  
本页中的所有示例都假设您已经使用文件系统的 Windows Remote PowerShell 端点定义了该` $FSxWindowsRemotePowerShellEndpoint`变量。您可以在文件系统的详细信息页面上的 Amazon FSx 控制台中找到此终端节点，也可以使用 AWS CLI `describe-file-systems`命令找到此终端节点。

### 配额命令
<a name="fsx-quota-commands"></a>

#### 全新-FSx FSRMQuota
<a name="new-fsxfsrmquota"></a>

为文件夹创建新的配额。配额限制了用户可以在文件夹中存储的数据量。您可以选择将配额配置为在用户超过配额阈值时生成通知。

 **参数：**
+ `Folder (string)` – 必需。将应用配额的文件夹路径。
+ `Size (string)`-不使用模板时为必填项：配额大小限制。
+ `Template (string)` – 可选。要使用的现有配额模板的名称。指定模板时，只能使用描述参数；所有其他设置均继承自该模板。
+ `Description (string)` – 可选。配额的描述。
+ `SoftLimit (boolean)` – 可选。如果设置为 true，则会创建一个软配额，允许用户在记录违规行为时超出限制。
+ `Disabled (boolean)` – 可选。如果设置为 true，则在禁用状态下创建配额。
+ `ThresholdConfigurations (array)` – 可选。一系列阈值配置，用于指定在不同使用级别下要采取的操作。每种配置都具有以下属性：
  + `ThresholdPercentage (number)`：触发操作的配额限制的百分比。输入一个介于 0 和 250 之间的值。
  + `Action (array)`：达到阈值时要采取的一项或多项操作。每个操作都具有以下属性：
    + `ActionType`：要执行的操作类型。可以指定以下值：

      1. `Event`：将事件记录到文件系统的事件日志。指定 “事件” 时，还必须指定以下属性：
         + `EventType`: 信息、警告或错误
         + `MessageBody`：要与事件一起记录的消息文本。

      1. `Report`：生成存储使用情况报告。

 **示例：**

 **1。在不使用配额模板的情况下创建 5GB 的硬配额。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock { 
    New-FSxFSRMQuota -Folder "share\test" -Size 5GB 
}
```

 **2。使用阈值通知创建软配额** 

```
$thresholds = [System.Collections.ArrayList]@() 
$warning = @{ 
    ThresholdPercentage = 75 
    Action = @( 
        @{ 
            ActionType = "Event" 
            EventType = "Warning" 
            MessageBody = "Quota usage has reached 75%" 
        } 
    ) 
} 

$thresholds.Add($warning) 

Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ArgumentList ($thresholds) -ScriptBlock { 
        param($thresholds)  
        New-FSxFSRMQuota -Folder "share/test" -Size 1GB -Description "Test quota" -SoftLimit -ThresholdConfigurations $Using:thresholds 
}
```

#### Get-FSx FSRMQuota
<a name="get-fsxfsrmquota"></a>

从您的文件系统中检索一个或多个配额。该命令返回有关配额配置的详细信息，包括大小限制、阈值和当前使用情况。

 **参数：**
+ `Folder (string)` – 可选。从中检索配额的文件夹路径。如果您未指定文件夹路径，则该命令将返回文件系统上的所有配额。

 **示例：**

 **1。获取文件系统上的所有现有配额。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock {
    Get-FSxFSRMQuota
}
```

#### 移除-FSx FSRMQuota
<a name="remove-fsxfsrmquota"></a>

从文件系统上的指定文件夹中移除配额。

 **参数：**
+ `Folder (string)` – 必需。要从中删除配额的文件夹路径。
+ `PassThru (boolean)` – 可选。如果设置为 true，则返回已删除的配额对象。

 **示例：**

 **1。移除配额。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock { 
    Remove-FSxFSRMQuota -Folder "share\test" -PassThru 
}
```

#### Set-FSx FSRMQuota
<a name="set-fsxfsrmquota"></a>

修改现有配额的配置。

 **参数：**
+ `Folder (string)` – 必需。包含要修改的配额的文件夹路径。
+ `Description (string)` – 可选。配额的新描述。
+ `Size (string)` – 可选。配额的新大小限制。
+ `SoftLimit (boolean)` – 可选。如果设置为 true，则将配额更改为软限制，允许用户在记录违规行为时超过限制。
+ `Disabled (boolean)` – 可选。如果设置为 true，则禁用配额。如果设置为 false，则启用配额。
+ `ThresholdConfigurations (array)` – 可选。一系列新的阈值配置。每个阈值配置都具有以下属性：
  + `ThresholdPercentage (number)`：触发操作的配额限制的百分比。输入一个介于 0 和 250 之间的值。
  + `Action (array)`：达到阈值时要采取的一项或多项操作。每个操作都具有以下属性：
    + `ActionType`：要执行的操作类型。可以指定以下值：

      1. `Event`：将事件记录到文件系统的事件日志。指定 “事件” 时，还必须指定以下属性：
         + `EventType`: 信息、警告或错误
         + `MessageBody`：要与事件一起记录的消息文本。

      1. `Report`：生成存储使用情况报告。
+ `PassThru (boolean)` – 可选。如果设置为 true，则返回修改后的配额对象。

 **示例：**

 **1。修改配额大小和描述。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock { 
    Set-FSxFSRMQuota 	-Folder "share\department" 	-Size 2GB 	-Description "Updated quota for department share" 
}
```

 **2。禁用配额** 

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock { 
    Set-FSxFSRMQuota -Folder "share\department" -Disabled: $true 
}
```

#### 更新-FSx FSRMQuota
<a name="update-fsxfsrmquota"></a>

通过扫描文件夹来确定实际使用的空间量，重新计算配额的当前使用情况统计信息。

 **参数：**
+ `Folder (string)` – 必需。包含要更新的配额的文件夹路径。
+ `PassThru (boolean)` – 可选。如果设置为 true，则返回更新的配额对象。

 **示例：**

 **1。重新计算指定配额的当前使用情况统计信息。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock {
    Update-FSxFSRMQuota -Folder "share\department" -PassThru
}
```

### 配额模板命令
<a name="fsx-quota-template-commands"></a>

#### 全新-FSx FSRMQuota 模板
<a name="new-fsxfsrmquotatemplate"></a>

创建新的配额模板，该模板定义了可重复使用的配额配置。

 **参数：**
+ `Name (string)` – 必需。配额模板的名称。
+ `Size (string)` – 必需。配额模板强制执行的大小限制。
+ `Description (string)` – 可选。配额模板的描述。
+ `SoftLimit (boolean)` – 可选。如果设置为 true，则为软配额创建一个模板，该模板会报告使用情况，但不强制执行限制。
+ `ThresholdConfigurations (array)` – 可选。一系列阈值配置，用于指定在不同使用级别下要采取的操作。每种配置都具有以下属性：
  + `ThresholdPercentage (number)`：触发操作的配额限制的百分比。输入一个介于 0 和 250 之间的值。
  + `Action (array)`：达到阈值时要采取的一项或多项操作。每个操作都具有以下属性：
    + `ActionType`：要执行的操作类型。可以指定以下值：

      1. `Event`：将事件记录到文件系统的事件日志。指定 “事件” 时，还必须指定以下属性：
         + `EventType`: 信息、警告或错误
         + `MessageBody`：要与事件一起记录的消息文本。

      1. `Report`：生成存储使用情况报告。

 **示例：**

 **1。创建 1 GB 的硬限制模板。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock { 
    New-FSxFSRMQuotaTemplate -Name "1GB Hard Limit" -Size 1GB -Description "Standard 1GB hard limit template" 
}
```

 **2。创建一个 5 GB 的软限制模板，并在使用率为 90% 时设置警告阈值** 

```
$threshold = @{ 
    ThresholdPercentage = 90 
    Action = @( 
        @{ 
            ActionType = "Event" 
            EventType = "Warning" 
            MessageBody = "Quota usage has reached 90% of the limit" 
        } 
    ) 
} 

$thresholds = [System.Collections.ArrayList]@() 
$thresholds.Add($threshold) 

Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ArgumentList $thresholds -ScriptBlock { 
    param($thresholds) 

    New-FSxFSRMQuotaTemplate -Name "5GB Soft Limit" -Size 5GB -Description "5GB soft limit with 90% warning" -SoftLimit -ThresholdConfigurations $Using:thresholds 
}
```

#### 获取-FSx FSRMQuota 模板
<a name="get-fsxfsrmquotatemplate"></a>

从您的文件系统中检索一个或多个配额模板。

 **参数：**
+ `Name (string)` – 可选。要检索的特定配额模板的名称。如果您未指定名称，则该命令将返回所有配额模板。

 **示例：**

 **1。检索文件系统上的所有配额模板。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock {
    Get-FSxFSRMQuotaTemplate
}
```

#### 套装-FSx FSRMQuota 模板
<a name="set-fsxfsrmquotatemplate"></a>

修改配额模板的属性。

 **参数：**
+ `Name (string)` – 必需。要修改的配额模板的名称。
+ `Description (string)` – 可选。模板的新描述。
+ `Size (string)` – 可选。模板的新大小限制。
+ `SoftLimit (boolean)` – 可选。如果设置为 true，则更改模板以创建软配额，这些配额会报告使用情况，但不强制执行限制。
+ `ThresholdConfigurations (array)` – 可选。一系列阈值配置，用于指定在不同使用级别下要采取的操作。每种配置都具有以下属性：
  + `ThresholdPercentage (number)`：触发操作的配额限制的百分比。输入一个介于 0 和 250 之间的值。
  + `Action (array)`：达到阈值时要采取的一项或多项操作。每个操作都具有以下属性：
    + `ActionType`：要执行的操作类型。可以指定以下值：

      1. `Event`：将事件记录到文件系统的事件日志。指定 “事件” 时，还必须指定以下属性：
         + `EventType`: 信息、警告或错误
         + `MessageBody`：要与事件一起记录的消息文本。

      1. `Report`：生成存储使用情况报告。
+ `UpdateDerived (boolean)` – 可选。如果设置为 true，则更新根据此模板创建的所有配额。
+ `UpdateDerivedMatching (boolean)` – 可选。如果设置为 true，则仅更新根据此模板创建且自创建以来未修改的配额。
+ `PassThru (boolean)` – 可选。如果设置为 true，则返回修改后的模板对象。

 **示例：**

 **1。修改配额模板的大小和描述。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock { 
    Set-FSxFSRMQuotaTemplate -Name "5GB Soft Limit" -Size 10GB -Description "Updated to 10GB soft limit" 
}
```

 **2。修改配额模板并更新根据该模板创建的所有配额。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock { 
    Set-FSxFSRMQuotaTemplate -Name "1GB Hard Limit" -Size 2GB -UpdateDerived 
}
```

#### 重置-FSx FSRMQuota
<a name="reset-fsxfsrmquota"></a>

重置配额以匹配指定模板的设置。

#### 参数
<a name="reset-fsxfsrmquota-parameters"></a>
+ `Folder (string)` – 必需。包含要重置的配额的文件夹路径。
+ `Template (string)` – 必需。要应用的配额模板的名称。

#### 示例
<a name="reset-fsxfsrmquota-examples"></a>

 **示例：重置配额以匹配配额模板中定义的设置。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock { 
    Reset-FSxFSRMQuota -Folder "share\department" -Template "1GB Hard Limit" 
}
```

### 自动配额命令
<a name="auto-quota-commands"></a>

#### 新增-FSx FSRMAuto 配额
<a name="new-fsxfsrmautoquota"></a>

该`New-FSxFSRMAutoQuota`命令在指定文件夹上创建 auto apply 配额。auto apply 配额会根据指定的模板自动为每个现有子文件夹和在指定文件夹中创建的任何新子文件夹生成配额。

##### 参数
<a name="new-fsxfsrmautoquota-parameters"></a>
+ `Folder (string)` – 必需。将在其中创建 auto apply 配额的文件夹路径。
+ `Template (string)` – 可选。用于自动应用配额的现有配额模板的名称。
+ `Disabled (boolean)` – 可选。如果设置为 true，则在禁用状态下创建自动应用配额。

##### 示例
<a name="new-fsxfsrmautoquota-examples"></a>

 **1。创建 auto apply 配额，自动将指定模板应用于所有子文件夹。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock {
    New-FSxFSRMAutoQuota -Folder "share\department" -Template "250 MB Extended Limit" 
}
```

#### 获取-FSx FSRMAuto 配额
<a name="get-fsxfsrmautoquota"></a>

该`Get-FSxFSRMAutoQuota`命令会从您的文件系统中检索一个或多个 auto apply 配额。

##### 参数
<a name="get-fsxfsrmautoquota-parameters"></a>
+ `Folder (string)` – 可选。要从中检索 auto 应用配额的文件夹路径。您也可以在路径末尾使用`...`来包含所有子文件夹。

如果您未指定文件夹路径，则该命令将返回文件系统上的所有 auto apply 配额。

##### 示例
<a name="get-fsxfsrmautoquota-examples"></a>

 **1。检索文件系统上的所有 auto apply 配额。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock {
    Get-FSxFSRMAutoQuota
}
```

#### 移除-FSx FSRMAuto 配额
<a name="remove-fsxfsrmautoquota"></a>

该`Remove-FSxFSRMAutoQuota`命令从指定文件夹中删除自动申请的配额。当您删除 auto apply 配额时，该命令还会删除从关联配额模板派生的子文件夹中的所有配额。

##### 参数
<a name="remove-fsxfsrmautoquota-parameters"></a>
+ `Folder (string)` – 必需。要从中删除 auto 应用配额的文件夹路径。
+ `PassThru (boolean)` – 可选。如果设置为 true，则返回已删除的自动应用配额对象。

##### 示例
<a name="remove-fsxfsrmautoquota-examples"></a>

 **1。从特定文件夹中移除 auto 应用配额。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock {
    Remove-FSxFSRMAutoQuota -Folder "share\department" -PassThru
}
```

#### 设定-FSx FSRMAuto 配额
<a name="set-fsxfsrmautoquota"></a>

该`Set-FSxFSRMAutoQuota`命令修改 auto apply 配额的配置设置。

##### 参数
<a name="set-fsxfsrmautoquota-parameters"></a>
+ `Folder (string)` – 必需。包含要修改的 auto 应用配额的文件夹路径。
+ `Template (string)` – 可选。要应用的配额模板的名称。
+ `Disabled (boolean)` – 可选。如果设置为 true，则禁用自动应用配额。如果设置为 false，则启用自动应用配额。
+ `UpdateDerived (boolean)` – 可选。如果设置为 true，则更新从该自动应用配额中派生的所有现有配额。
+ `UpdateDerivedMatching (boolean)` – 可选。如果设置为 true，则仅更新自创建以来未修改的派生配额。
+ `PassThru (boolean)` – 可选。如果设置为 true，则返回修改后的自动应用配额对象。

##### 示例
<a name="set-fsxfsrmautoquota-examples"></a>

 **1。更改 auto 应用配额使用的配额模板。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock {
    Set-FSxFSRMAutoQuota -Folder "share\department" -Template "100 MB Limit" 
}
```

 **2。禁用 auto apply 配额并更新从中派生的所有配额。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock {
    Set-FSxFSRMAutoQuota -Folder "share\department" -Disabled: $true -UpdateDerived
}
```

#### 更新-FSx FSRMAuto 配额
<a name="update-fsxfsrmautoquota"></a>

该`Update-FSxFSRMAutoQuota`命令通过扫描文件夹来确定实际使用的空间量，从而重新计算 auto apply 配额的属性以及从中派生的配额。

##### 参数
<a name="update-fsxfsrmautoquota-parameters"></a>
+ `Folder (string)` – 必需。包含要更新的自动应用配额的文件夹路径。
+ `PassThru (boolean)` – 可选。如果设置为 true，则返回更新的自动应用配额对象。

##### 示例
<a name="update-fsxfsrmautoquota-examples"></a>

 **1。重新计算使用情况统计信息并返回更新后的 auto apply quota 对象。**

```
Invoke-Command -ComputerName $FSxWindowsRemotePowerShellEndpoint -ConfigurationName FSxRemoteAdmin -ScriptBlock {
    Update-FSxFSRMAutoQuota -Folder "share\department" -PassThru
}
```