

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

# 使用 NFS 在 EC2 Linux 或 Mac 实例上启用自动挂载
<a name="nfs-automount-efs"></a>

对于 EC2 Linux 和 Mac 实例，使用没有 EFS 挂载帮助程序的 NFS 更新 Amazon EC2 `/etc/fstab` 文件。

**更新 EC2 实例上的 `/etc/fstab` 文件**

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

1. 在编辑器中打开 `/etc/fstab` 文件。

1. 要使用 NFS 而不是 EFS 挂载帮助程序自动挂载文件系统，请在 `/etc/fstab` 文件中添加以下行。
   + {{file\_system\_id}}替换为要挂载的文件系统的 ID。
   + {{aws-region}}替换 AWS 区域 为文件系统所在的，例如`us-east-1`。
   + 将 {{mount\_point}} 替换为文件系统的挂载点。

   ```
   {{file_system_id}}.efs.{{aws-region}}.amazonaws.com:/ {{mount_point}} nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport,_netdev 0 0
   ```

您添加到 `/etc/fstab` 文件的代码行将执行以下操作。


| 字段 | 说明 | 
| --- | --- | 
| `{{file-system-id}}:/` | 您的 EFS 文件系统的 ID。您可以从控制台获取此 ID，也可以通过编程方式从 CLI 或 AWS SDK 中获取此 ID。 | 
| `{{efs-mount-point}}` | EFS 文件系统在 EC2 实例上的挂载点。 | 
| `nfs4` | 指定文件系统类型。 | 
| `mount options` | 逗号分隔的文件系统的挂载选项列表：+  `nfsvers=4.1` – 指定使用 NFS v4.1。 <br />+  `rsize=1048576` – 为了提高性能，设置从 EFS 文件系统上的文件读取数据时，NFS 客户端可以为每个网络读取请求接收的最大数据字节数。`1048576` 是可能的最大数量。 <br />+  `wsize=1048576` – 为了提高性能，设置向 EFS 文件系统上的文件写入数据时，NFS 客户端可以为每个网络写入请求发送的最大数据字节数。`1048576` 是可能的最大数量。 <br />+  `hard` – 设置 NFS 客户端在 NFS 请求超时之后的恢复行为，以便 NFS 请求在服务器回复之前无限次重试。建议您使用硬挂载选项 (`hard`) 以确保数据完整性。如果您使用 `soft` 挂载，请将 `timeo` 参数至少设置为 `150` 分秒（15 秒）。这样做可尽量减少源自软挂载的数据损坏风险。 <br />+  `timeo=600` – 将超时值设置为 600 分秒（60 秒），这是 NFS 客户端在重试 NFS 请求之前等待响应的时间。如果您必须更改超时参数 (`timeo`)，我们建议您使用至少为 `150` 的值，这相当于 15 秒。这样做有助于避免性能下降。 <br />+  `retrans=2` – 将 NFS 客户端重试请求的次数设置为 2，超过此次数之后将尝试进一步的恢复操作。 <br />+  `noresvport` – 告知 NFS 客户端在重新建立网络连接时，使用新的传输控制协议（TCP）源端口。这样做有助于确保 EFS 文件系统在网络恢复事件后具有不间断的可用性。 <br />+  `_netdev` – 禁止客户端尝试挂载 EFS 文件系统，直到启用了网络。  | 
| `0` | 指定 `dump` 值；`0` 告诉 `dump` 实用程序不备份文件系统。 | 
| `0` | 告诉 `fsck` 实用程序不在启动时运行。 | 