

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

# 教程：创建 EFS 文件系统并将其挂载到 EC2 实例上 AWS CLI
<a name="wt1-getting-started"></a>

创建加密的 EFS 文件系统，将其挂载到 VPC 中的 EC2 实例上，然后使用 AWS CLI测试设置。

**注意**  
在[开始使用](getting-started.md)教程中，您使用控制台创建 Amazon EC2 和 EFS 资源。在本教程中，您将使用 AWS CLI 来做同样的事情，主要是为了熟悉 Amazon EFS API。

在本教程中，你将在自己的账户中创建以下 AWS 资源：
+ Amazon EC2 资源：
  + 两个安全组（一个用于 EC2 实例，一个用于 EFS 文件系统）。

    您可以将规则添加到这些安全组中，以授权适当的入站/出站访问。这样您 EC2instance 就可以使用标准的 NFSv4 .1 TCP 端口通过装载目标连接到文件系统。
  + 您的 VPC 中的 EC2 实例。
+ Amazon EFS 资源：
  + 文件系统。
  + 文件系统的挂载目标。

    为了将文件系统挂载到 EC2 实例上，需要在您的 VPC 中创建一个挂载目标。您可以在 VPC 中的每个可用区分别创建一个挂载目标。有关更多信息，请参阅 [Amazon EFS 的工作原理](how-it-works.md)。

然后，在 EC2 实例上测试文件系统。教程结束时的清理步骤提供了删除这些资源的信息。

本教程在美国西部（俄勒冈州）区域（`us-west-2`）创建所有这些资源。无论 AWS 区域 您使用哪种方式，请务必始终如一地使用它。您的所有资源（您的 VPC、EC2 资源和 EFS 资源）必须位于同一 AWS 区域中。

**Topics**
+ [先决条件](#wt1-prepare)
+ [设置 AWS CLI](#wt1-setup-awscli)
+ [步骤 1：创建 EC2 资源](#wt1-create-ec2-resources)
+ [步骤 2：创建 EFS 资源](#wt1-create-efs-resources)
+ [步骤 3：将文件系统挂载到 EC2 实例上并测试](#wt1-test)
+ [步骤 4：清除](#wt1-clean-up)

## 先决条件
<a name="wt1-prepare"></a>
+ 您可以使用您的根凭证 AWS 账户 登录控制台并尝试入门练习。但是， AWS Identity and Access Management (IAM) 建议您不要使用您的根证书 AWS 账户。而是在您的账户中创建一个管理员用户，并使用这些凭证来管理您的账户中的资源。有关更多信息，请参阅[用户*指南中的为 IAM Identity Cent AWS IAM Identity Center er 用户*分配 AWS 账户 访问权限](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-assign-account-access-user.html)。
+ 您可以使用默认 VPC，也可以使用在您的账户中创建的自定义 VPC。对于本演练，可以使用默认的 VPC 配置。但是，如果您使用自定义 VPC，请验证以下情况：
  + 已启用 DNS 主机名。有关更多信息，请参阅《Amazon VPC 用户指南》**中的 [VPC 中的 DNS 属性](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-dns.html#vpc-dns-support)。
  + Internet 网关已连接到您的 VPC。有关更多信息，请参阅 *Amazon VPC 用户指南*中的[使用互联网网关连接到互联网](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Internet_Gateway.html)。
  + 已配置 VPC 子网来为 VPC 子网中启动的实例请求公有 IP 地址。有关更多信息，请参阅 *Amazon VPC 用户指南*中的[您的 VPCs 和子网的 IP 地址](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-ip-addressing.html)。
  + VPC 路由表包含一个规则，以将 Internet 范围的所有流量发送到 Internet 网关。
+ 您需要设置 AWS CLI 并添加管理员用户配置文件。

## 设置 AWS CLI
<a name="wt1-setup-awscli"></a>

按照以下说明设置 AWS CLI 和用户配置文件。

**要设置 AWS CLI**

1. 下载并配置 AWS CLI。有关说明，请参阅**《AWS Command Line Interface User Guide》中的 [Get started with the AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html)。

1. 设置配置文件。

   您将用户凭据存储在 AWS CLI `config`文件中。本教程中的示例 CLI 命令指定 adminuser 配置文件。在 `config` 文件中创建 adminuser 配置文件。也可以在 `config` 文件中将管理员用户配置文件设置为默认配置文件，如下所示。

   ```
   [profile adminuser]
   aws_access_key_id = admin user access key ID
   aws_secret_access_key = admin user secret access key
   region = us-west-2
   
   [default]
   aws_access_key_id = admin user access key ID
   aws_secret_access_key = admin user secret access key
   region = us-west-2
   ```

   前面的配置文件也设置了默认值 AWS 区域。如果没有在 CLI 命令中指定区域，则假定为 us-west-2 区域。

1. 在命令提示符处输入以下命令来验证设置。两个命令都没有显式提供凭证，所以将使用默认配置文件的凭证。
   + 尝试 help 命令

     您也可以通过添加 `--profile` 参数来显式指定用户配置文件。

     ```
     aws help
     ```

     ```
     aws help \
     --profile adminuser
     ```

## 步骤 1：创建 EC2 资源
<a name="wt1-create-ec2-resources"></a>

在此步骤中，您将执行以下操作：
+ 创建两个安全组。
+ 在安全组中添加规则以授权额外访问。
+ 启动一个 EC2 实例。在下一步中，您将创建一个 EFS 文件系统并将其挂载到该实例上。

### 步骤 1.1：创建两个安全组
<a name="wt1-create-sg"></a>

在本部分中，您将在 VPC 中为 EC2 实例和 EFS 挂载目标创建安全组。在教程的稍后部分，您要将这些安全组分配给 EC2 实例和 EFS 挂载目标。有关安全组的信息，请参阅 [Linux 实例的 Amazon EC2 安全组](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html#vpc-security-groups)。

**创建安全组**

1. 使用 `create-security-group` CLI 命令创建两个安全组：

   1. 为您的 EC2 实例创建一个安全组 (`efs-walkthrough1-ec2-sg`) 并提供您的 VPC ID。

      ```
      $ aws ec2 create-security-group \
      --region us-west-2 \
      --group-name efs-walkthrough1-ec2-sg \
      --description "Amazon EFS walkthrough 1, SG for EC2 instance" \
      --vpc-id vpc-id-in-us-west-2 \
      --profile adminuser
      ```

      记下安全组 ID。以下为响应示例。

      ```
      {
          "GroupId": "sg-aexample"
      }
      ```

      您可以使用以下命令查找 VPC ID：

      ```
      $ aws  ec2 describe-vpcs    
      ```

      

   1. 为 EFS 挂载目标创建安全组（`efs-walkthrough1-mt-sg`）。您需要提供 VPC ID。

      ```
      $ aws ec2 create-security-group \
      --region us-west-2 \
      --group-name efs-walkthrough1-mt-sg \
      --description "Amazon EFS walkthrough 1, SG for mount target" \
      --vpc-id vpc-id-in-us-west-2 \
      --profile adminuser
      ```

      记下安全组 ID。以下为响应示例。

      ```
      {
          "GroupId": "sg-aexample"
      }
      ```

1. 验证安全组。

   ```
   aws ec2 describe-security-groups \
   --group-ids list of security group IDs separated by space \
   --profile adminuser \
   --region us-west-2
   ```

   两个安全组都应当只有一条允许所有出站流量的出站规则。

   在下一节中，您将授权额外访问，以便：
   + 您能够连接到 EC2 实例。
   + 启用 EC2 实例与 EFS 挂载目标之间的流量（在本教程的稍后部分，您要将这些安全组与它们关联）。

### 步骤 1.2：向安全组添加规则以授权 inbound/outbound 访问
<a name="wt1-update-sg"></a>

在该步骤中，您将在安全组中添加规则以授权入站/出站访问。

**添加规则**

1. 授权与 EC2 实例安全组 (`efs-walkthrough1-ec2-sg`) 的传入安全 Shell (SSH) 连接，以便可以从任何主机使用 SSH 连接到 EC2 实例。

   ```
   $ aws ec2 authorize-security-group-ingress \
   --group-id id of the security group created for EC2 instance \
   --protocol tcp \
   --port 22 \
   --cidr 0.0.0.0/0 \
   --profile adminuser \
   --region us-west-2
   ```

   验证安全组具有您添加的入站和出站规则。

   ```
   aws ec2 describe-security-groups \
   --region us-west-2 \
   --profile adminuser \
   --group-id security-group-id
   ```

1. 授权到 EFS 挂载目标安全组（`efs-walkthrough1-mt-sg`）的入站访问。

   在命令提示符处，使用管理员用户配置文件运行以下 AWS CLI `authorize-security-group-ingress`命令来添加入站规则。

   ```
   $ aws ec2 authorize-security-group-ingress \
   --group-id ID of the security group created for Amazon EFS mount target \
   --protocol tcp \
   --port 2049 \
   --source-group ID of the security group created for EC2 instance \
   --profile adminuser \
   --region us-west-2
   ```

1. 确认两个安全组现在都授权了入站访问。

   ```
   aws ec2 describe-security-groups \
   --group-names efs-walkthrough1-ec2-sg   efs-walkthrough1-mt-sg \
   --profile adminuser \
   --region us-west-2
   ```

### 步骤 1.3：启动 EC2 实例
<a name="wt1-create-ec2-instance"></a>

在该步骤中，您将启动 EC2 实例。

**启动 EC2 实例**

1. 收集在启动 EC2 实例时需要提供的以下信息：
   + 密钥对名称。有关创建密钥对的说明，请参阅《Amazon EC2 用户指南》中的[为您的 Amazon EC2 实例创建密钥对](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-key-pairs.html)**。
   + 要启动的 Amazon 系统映像 (AMI) 的 ID。

     用于启动 EC2 实例的 AWS CLI 命令需要将要部署的 Amazon 系统映像 (AMI) 的 ID 作为参数。本练习使用 Amazon Linux HVM AMI。
**注意**  
您可以使用大多数基于 Linux 的通用型 AMIs。如果您使用其他 Linux AMI，请确保使用分发包管理器在实例上安装 NFS 客户端。此外，您可能还需要添加一些软件包。

     对于亚马逊 Linux HVM AMI，你可以在[亚马逊 Linux AMI IDs ](https://aws.amazon.com/amazon-linux-ami/) 上找到最新版本。您可以按如下方式从亚马逊 Linux AMI IDs 表中选择 ID 值：
     + 选择**美国西部（俄勒冈）**区域。本演练假定您将在美国西部（俄勒冈州）区域（us-west-2）创建所有资源。
     + 选择 **EBS 支持的 HVM 64 位**类型（因为您在 CLI 命令中指定 `t2.micro` 实例类型，它不支持实例存储）。

     
   + 您为 EC2 实例创建的安全组的 ID。
   + AWS 区域。本演练使用 us-west-2 区域。
   + 您要在其中启动实例的 VPC 子网的 ID。可以使用 `describe-subnets` 命令获取子网列表。

     ```
     $ aws ec2 describe-subnets \
     --region us-west-2 \
     --filters "Name=vpc-id,Values=vpc-id" \
     --profile adminuser
     ```

     选择子网 ID 后，记下 `describe-subnets` 结果中的以下值：
     + **子网 ID** – 创建挂载目标时需要此值。在本练习中，您将在启动了 EC2 实例的同一子网中创建挂载目标。
     + **子网的可用区** – 构建挂载目标 DNS 名称时需要此值，用于将文件系统挂载到 EC2 实例上。

1. 运行以下 AWS CLI `run-instances`命令启动 EC2 实例。

   ```
   $ aws ec2 run-instances \
   --image-id AMI ID \
   --count 1 \
   --instance-type t2.micro \
   --associate-public-ip-address \
   --key-name key-pair-name \
   --security-group-ids ID of the security group created for EC2 instance \
   --subnet-id VPC subnet ID \
   --region us-west-2 \
   --profile adminuser
   ```

1. 记下 `run-instances` 命令返回的实例 ID。

1. 您创建的 EC2 实例必须有公有 DNS 名称，以便用来连接 EC2 实例并向其中挂载文件系统。公有 DNS 名称的形式为：

   ```
   ec2-xx-xx-xx-xxx.compute-1.amazonaws.com
   ```

   运行以下 CLI 命令，并记下公有 DNS 名称。

   ```
   aws ec2 describe-instances \
   --instance-ids EC2 instance ID \
   --region us-west-2 \ 
   --profile adminuser
   ```

   如果未找到公有 DNS 名称，则检查您在其中启动了 EC2 实例的 VPC 的配置。有关更多信息，请参阅 [先决条件](#wt1-prepare)。

1. （可选）将一个名称分配给您创建的 EC2 实例。为此，请添加一个标签，其中键名和值设置为要分配给实例的名称。您可以通过运行以下 AWS CLI `create-tags`命令来完成此操作。

   ```
   $  aws ec2 create-tags \
   --resources  EC2-instance-ID \
   --tags Key=Name,Value=Provide-instance-name  \
   --region us-west-2 \
   --profile adminuser
   ```

## 步骤 2：创建 EFS 资源
<a name="wt1-create-efs-resources"></a>

在此步骤中，您将执行以下操作：
+ 创建加密 EFS 文件系统。
+ 启用生命周期管理
+ 在启动了 EFS 实例的可用区创建挂载目标。

### 步骤 2.1：创建 EFS 文件系统
<a name="wt1-create-file-system"></a>

在该步骤中，您将创建一个 EFS 文件系统。记下 `FileSystemId`，以便稍后在下一步中为文件系统创建挂载目标时使用。

**创建文件系统**
+ 创建文件系统并添加可选的 `Name` 标签。

  1. 在命令提示符处，运行以下 AWS CLI `create-file-system` 命令。

     ```
     $  aws efs create-file-system \
     --encrypted \
     --creation-token FileSystemForWalkthrough1 \
     --tags Key=Name,Value=SomeExampleNameValue \
     --region us-west-2 \
     --profile adminuser
     ```

     您将收到以下响应。

     ```
     {
         "OwnerId": "111122223333",
         "CreationToken": "FileSystemForWalkthrough1",
         "FileSystemId": "fs-c657c8bf",
         "CreationTime": 1548950706.0,
         "LifeCycleState": "creating",
         "NumberOfMountTargets": 0,
         "SizeInBytes": {
             "Value": 0,
             "ValueInIA": 0,
             "ValueInStandard": 0
         },
         "PerformanceMode": "generalPurpose",
         "Encrypted": true,
         "KmsKeyId": "arn:aws:kms:us-west-2:111122223333:a5c11222-7a99-43c8-9dcc-abcdef123456",
         "ThroughputMode": "bursting",
         "Tags": [
             {
                 "Key": "Name",
                 "Value": "SomeExampleNameValue"
             }
         ]
     }
     ```

  1. 记下 `FileSystemId` 的值。在[步骤 2.3：创建挂载目标](#wt1-create-mount-target)中为该文件系统创建挂载目标时需要该值。

### 步骤 2.2：启用生命周期管理
<a name="wt1-lifecycle-management"></a>

在该步骤中，您将在文件系统上启用生命周期管理，以便使用 EFS 不频繁访问（IA）存储类。要了解更多信息，请参阅 [管理存储生命周期](lifecycle-management-efs.md) 和 [EFS 存储类](features.md#storage-classes)。

**启用生命周期管理**
+ 在命令提示符处，运行以下 AWS CLI `put-lifecycle-configuration`命令。

  ```
  $  aws efs put-lifecycle-configuration \
  --file-system-id fs-c657c8bf \
  --lifecycle-policies TransitionToIA=AFTER_30_DAYS \
  --region us-west-2 \
  --profile adminuser
  ```

  您将收到以下响应。

  ```
  {
    "LifecyclePolicies": [
      {
          "TransitionToIA": "AFTER_30_DAYS"
      }
    ]
  }
  ```

### 步骤 2.3：创建挂载目标
<a name="wt1-create-mount-target"></a>

在该步骤中，您将在启动了 EC2 实例的可用区中为文件系统创建一个挂载目标。

1. 确保您已获得以下信息：
   + 您为其创建挂载目标的文件系统 (例如 `fs-example`) 的 ID。
   + 您在[步骤 1：创建 EC2 资源](#wt1-create-ec2-resources)中启动了 EC2 实例的 VPC 子网 ID。

     在本教程中，您在启动了 EC2 实例的同一子网中创建挂载目标，因此您需要子网 ID（例如，`subnet-example`）。
   + 在上一步中您为挂载目标创建的安全组的 ID。

1. 在命令提示符处，运行以下 AWS CLI `create-mount-target`命令。

   ```
   $ aws efs create-mount-target \
   --file-system-id file-system-id \
   --subnet-id  subnet-id \
   --security-group ID-of-the security-group-created-for-mount-target \
   --region us-west-2 \
   --profile adminuser
   ```

   您将收到以下响应。

   ```
   {
       "MountTargetId": "fsmt-example",
       "NetworkInterfaceId": "eni-example",
       "FileSystemId": "fs-example",
       "PerformanceMode" : "generalPurpose",
       "LifeCycleState": "available",
       "SubnetId": "fs-subnet-example",
       "OwnerId": "account-id",
       "IpAddress": "xxx.xx.xx.xxx"
   }
   ```

1. 您还可以使用 `describe-mount-targets` 命令来获取为文件系统创建的挂载目标的描述。

   ```
   $ aws efs describe-mount-targets \
   --file-system-id file-system-id \
   --region us-west-2 \
   --profile adminuser
   ```

## 步骤 3：将文件系统挂载到 EC2 实例上并测试
<a name="wt1-test"></a>

在此步骤中，您将执行以下操作：
+ 收集所需信息。
+ 在 EC2 实例上安装 NFS 客户端。
+ 在 EC2 实例上挂载文件系统并测试。

**Topics**
+ [步骤 3.1：收集信息](#wt1-connect-test-gather-info)
+ [步骤 3.2：在 EC2 实例上安装 NFS 客户端](#wt1-connect-install-nfs-client)
+ [步骤 3.3：将文件系统挂载到 EC2 实例上并测试](#wt1-mount-fs-and-test)

### 步骤 3.1：收集信息
<a name="wt1-connect-test-gather-info"></a>

在执行本节的步骤时，确保您获取以下信息：
+ EC2 实例的公有 DNS 名称，格式如下：

  ```
  ec2-xx-xxx-xxx-xx.aws-region.compute.amazonaws.com 
  ```
+ 文件系统的 DNS 名称。您可以使用以下通用形式构建此 DNS 名称：

  ```
  file-system-id.efs.aws-region.amazonaws.com
  ```

  您使用挂载目标在其中挂载文件系统的 EC2 实例可以将文件系统的 DNS 名称解析为挂载目标的 IP 地址。

**注意**  
Amazon EFS 不要求您的 EC2 实例具有公有 IP 地址或公有 DNS 名称。前面列出的要求仅针对本演练示例，目的是确保您可以使用 SSH 从 VPC 外部连接到实例。

### 步骤 3.2：在 EC2 实例上安装 NFS 客户端
<a name="wt1-connect-install-nfs-client"></a>

您可以从运行 Windows、Linux、macOS X 或任何其他 Unix 变体的计算机连接到您的 EC2 实例。

**安装 NFS 客户端**

1. 连接到您的 EC2 实例。有关更多信息，请参阅《Amazon EC2 用户指南》**中的[连接到您的 EC2 实例](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect.html)。

1. 在 EC2 实例上通过使用 SSH 会话执行以下命令：

   1. (可选) 获取更新并重启。

      ```
      $  sudo yum -y update  
      $  sudo reboot
      ```

      重启后，重新连接到您的 EC2 实例。

   1. 安装 NFS 客户端。

      ```
      $ sudo yum -y install nfs-utils
      ```
**注意**  
如果在启动 EC2 实例时选择 **Amazon Linux AMI 2016.03.0** Amazon Linux AMI，则不需要安装 `nfs-utils`，因为它已默认包含在此 AMI 中。

### 步骤 3.3：将文件系统挂载到 EC2 实例上并测试
<a name="wt1-mount-fs-and-test"></a>

现在，将文件系统挂载到 EC2 实例上。

1. 创建目录 (” efs-mount-point “)。

   ```
   $ mkdir ~/efs-mount-point 
   ```

1. 挂载 EFS 文件系统。

   ```
   $ sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-DNS:/   ~/efs-mount-point  
   ```

   EC2 实例可以将挂载目标的 DNS 名称解析为 IP 地址。您也可以直接指定挂载目标的 IP 地址。

   ```
   $ sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport mount-target-ip:/  ~/efs-mount-point
   ```

1. 您已经将 EFS 文件系统挂载到 EC2 实例上，接下来就可以创建文件了。

   1. 更改目录。

      ```
      $ cd ~/efs-mount-point  
      ```

   1. 列出目录的内容。

      ```
      $ ls -al
      ```

      它应该是空的。

      ```
      drwxr-xr-x 2 root     root     4096 Dec 29 22:33 .
      drwx------ 4 ec2-user ec2-user 4096 Dec 29 22:54 ..
      ```

      

   1. 刚创建的文件系统的根目录由根用户拥有并且只能由根用户写入，因此您需要更改权限以添加文件。

      ```
      $ sudo chmod go+rw .
      ```

      现在，如果您尝试 `ls -al` 命令，可以看到权限已更改。

      ```
      drwxrwxrwx 2 root     root     4096 Dec 29 22:33 .
      drwx------ 4 ec2-user ec2-user 4096 Dec 29 22:54 ..
      ```

   1. 创建 文本文件。

      ```
      $ touch test-file.txt 
      ```

   1. 列出目录的内容。

      ```
      $ ls -l
      ```

现在，您已成功创建一个 EFS 文件系统并将其挂载到您的 VPC 中的 EC2 实例上。

重启后挂载的文件系统将不复存在。为了自动重新挂载目录，可以使用 `fstab` 文件。如果您使用 Auto Scaling 组来启动 EC2 实例，则也可以在启动配置中设置脚本。

## 步骤 4：清除
<a name="wt1-clean-up"></a>

如果不再需要使用创建的资源，应将其删除。可以使用 CLI 删除。
+ 移除 EC2 资源（EC2 实例和两个安全组）。当您删除挂载目标时，Amazon EFS 会删除网络接口。
+ 删除 EFS 资源（文件系统、挂载目标）。

**删除在本演练中创建的 AWS 资源**

1. 终止为本教程创建的 EC2 实例。

   ```
   $ aws ec2 terminate-instances \
   --instance-ids instance-id \
   --profile adminuser
   ```

   您还可以使用控制台删除 EC2 资源。有关说明，请参阅[终止实例](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#terminating-instances-console)。

1. 删除挂载目标。

   只有在删除为文件系统创建的挂载目标后才能删除文件系统。可以使用 `describe-mount-targets` CLI 命令获得挂载目标列表。

   ```
   $  aws efs describe-mount-targets \
   --file-system-id file-system-ID \
   --profile adminuser \
   --region aws-region
   ```

   然后，使用 `delete-mount-target` CLI 命令删除挂载目标。

   ```
   $ aws efs delete-mount-target \
   --mount-target-id ID-of-mount-target-to-delete \
   --profile adminuser \
   --region aws-region
   ```

1. (可选) 删除您创建的两个安全组。创建安全组不需要支付费用。

   必须先删除挂载目标的安全组，然后再删除 EC2 实例的安全组。挂载目标的安全组包含一个引用 EC2 安全组的规则。因此，不能先删除 EC2 实例的安全组。

   有关说明，请参阅《Amazon EC2 User Guide》**中的 [Delete your security group](https://docs.aws.amazon.com/cli/latest/userguide/cli-services-ec2-sg.html#deleting-a-security-group)。

1. 通过 `delete-file-system` CLI 命令删除文件系统。可以使用 `describe-file-systems` CLI 命令获得文件系统列表。可以从响应中获得文件系统 ID。

   ```
   aws efs describe-file-systems \
   --profile adminuser \
   --region aws-region
   ```

   通过提供文件系统 ID 删除文件系统。

   ```
   $ aws efs delete-file-system \
   --file-system-id ID-of-file-system-to-delete \
   --region aws-region \
   --profile adminuser
   ```