使用微软 Windows 文件共享 - Amazon FSx for Windows File Server
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

使用微软 Windows 文件共享

Microsoft Windows Server文件共享是您的文件系统中的特定文件夹。它包括该文件夹的子文件夹,您可以使用服务器消息块 (SMB) 协议使计算实例可以访问该文件夹的子文件夹。您的文件系统附带一个默认的 Windows 文件共享,名为share。您可以根据需要创建和管理任意数量的其他 Windows 文件共享,使用名为共享文件夹

访问文件共享

要访问您的文件共享,您可以使用 Windows 映射网络驱动器功能将计算实例上的驱动器号映射到 Amazon FSX 文件共享。将文件共享映射到计算实例上的驱动器的过程称为安装文件共享。此过程根据计算实例的类型和操作系统的不同而有所不同。映射文件共享后,您的应用程序和用户可以访问文件共享上的文件和文件夹,就像它们是本地文件和文件夹一样。

以下是在不同支持的计算实例上映射文件共享的过程。

在 Amazon EC2 Windows 实例上映射文件共享

您可以使用 Windows 文件资源管理器或命令提示符映射 EC2 Windows 实例上的文件共享。

  1. 启动 EC2 Windows 实例并将其连接到您加入 Amazon FSX 文件系统的微软活动目录。为此,请从Amazon Directory Service管理指南

  2. Connect 到您的 EC2 Windows Windows 实例。有关更多信息,请参阅 。连接到 Windows 实例中的适用于 Windows 实例的 Amazon EC2 用户指南

  3. 连接后,打开 “文件资源管理器”。

  4. 在导航窗格中,打开的上下文 (右键单击) 菜单网络,然后选择映射网络驱动器

  5. 适用于Drive下方,选择驱动器盘符。

  6. 适用于文件夹中,输入文件系统的 DNS 名称或与文件系统关联的 DNS 别名以及共享名称。

    您可以在文件系统的 DNS 名称和任何关联的 DNS 别名在Amazon FSx 控制台通过选择Windows 文件 Server网络 & 安全。或者,您可以在CreateFileSystem或者DescribeFileSystemsAPI 操作。有关使用 DNS 别名的更多信息,请参阅。管理 DNS 别名

    • 对于单可用区文件系统加入到Amazon托管微软活动目录,DNS 名称如下所示。

      fs-0123456789abcdef0.ad-domain.com
    • 对于加入到自我管理的 Active Directory 和任何多可用区文件系统的单可用区文件系统,DNS 名称如下所示。

      amznfsxaa11bb22.ad-domain.com

    例如,要使用单可用区文件系统的 DNS 名称,请输入文件夹

    \\fs-0123456789abcdef0.ad-domain.com\share

    要使用多可用区文件系统的 DNS 名称,请在文件夹

    \\famznfsxaa11bb22.ad-domain.com\share

    要使用与文件系统相关联的 DNS 别名,请在文件夹

    \\fqdn-dns-alias\share
  7. 选择一个选项登录时重新连接,指示文件共享是否应在登录时重新连接,然后选择Finish

  1. 启动 EC2 Windows 实例并将其连接到您加入 Amazon FSX 文件系统的微软活动目录。为此,请从Amazon Directory Service管理指南

  2. 以用户身份 Connect 到您的 EC2 Windows Windows 实例Amazon Managed Microsoft AD文件夹。有关更多信息,请参阅 。连接到 Windows 实例中的适用于 Windows 实例的 Amazon EC2 用户指南

  3. 连接到您的连接后,打开命令提示符窗口。

  4. 使用您选择的驱动器号、文件系统的 DNS 名称和共享名称挂载文件共享。您可以使用Amazon FSx 控制台通过选择Windows 文件 Server网络 & 安全。或者,您可以在CreateFileSystem或者DescribeFileSystemsAPI 操作。

    • 对于单可用区文件系统加入到Amazon托管微软活动目录,DNS 名称如下所示。

      fs-0123456789abcdef0.ad-domain.com
    • 对于加入到自我管理的 Active Directory 和任何多可用区文件系统的单可用区文件系统,DNS 名称如下所示。

      amznfsxaa11bb22.ad-domain.com

    以下是挂载文件共享的示例命令。

    $ net use H: \\amzfsxaa11bb22.ad-domain.com\share /persistent:yes

在 Amazon EC2 Mac 实例上装载文件共享

您可以在已加入到活动目录或未加入的 Amazon EC2 Mac 实例上挂载文件共享。如果实例未加入到您的活动目录,请确保更新为实例所在的 Amazon Virtual Private Cloud (Amazon VPC) 设置的 DHCP 选项,以包括 Active Directory 域的 DNS 名称服务器。然后重新启动实例。

  1. 启动 EC2 Mac 实例。为此,请从适用于 Linux 实例的 Amazon EC2 用户指南

  2. 使用虚拟网络计算 (VNC) Connect 到 EC2 Mac 实例。有关更多信息,请参阅 。使用 VNC 连接到您的实例。中的适用于 Linux 实例的 Amazon EC2 用户指南

  3. 在您的 EC2 Mac 实例上,连接到您的 Amazon FSX 文件共享,如下所示:

    1. 打开 “访达”,选择Go,然后选择Connect to Server

    2. Connect to Server对话框中,输入文件系统的 DNS 名称或与文件系统关联的 DNS 别名以及共享名称。然后选择 。Connect (连接)

      您可以在文件系统的 DNS 名称和任何关联的 DNS 别名在Amazon FSx 控制台通过选择Windows 文件 Server网络 & 安全。或者,您可以在CreateFileSystem或者DescribeFileSystemsAPI 操作。有关使用 DNS 别名的更多信息,请参阅。管理 DNS 别名

      
                      显示文件系统窗格的 DNS 和共享名称的 Mac 连接屏幕截图。
    3. 在下一个屏幕上,选择Connect (连接)以继续。

    4. 为 Amazon FSX 服务帐户输入您的 Microsoft 活动目录 (AD) 凭据,如以下示例所示。然后选择 。Connect (连接)

      
                      显示如何为文件系统窗格输入用户凭据的 Mac 连接屏幕截图。
    5. 如果连接成功,您可以看到 Amazon FSX 共享,位于Locations在您的 “访达” 窗口中。

  1. 启动 EC2 Mac 实例。为此,请从适用于 Linux 实例的 Amazon EC2 用户指南

  2. 使用虚拟网络计算 (VNC) Connect 到 EC2 Mac 实例。有关更多信息,请参阅 。使用 VNC 连接到您的实例。中的适用于 Linux 实例的 Amazon EC2 用户指南

  3. 使用以下命令装载文件共享。

    mount_smbfs //file_system_dns_name/file_share mount_point

    您可以在Amazon FSx 控制台通过选择Windows 文件 Server网络 & 安全。或者,您可以在CreateFileSystem或者DescribeFileSystemsAPI 操作。

    • 对于单可用区文件系统加入到Amazon托管微软活动目录,DNS 名称如下所示。

      fs-0123456789abcdef0.ad-domain.com
    • 对于加入到自我管理的 Active Directory 和任何多可用区文件系统的单可用区文件系统,DNS 名称如下所示。

      amznfsxaa11bb22.ad-domain.com

    此过程中使用的 mount 命令在给定点执行以下操作:

    • //file_system_dns_name/file_share— 指定要装载的文件系统的 DNS 名称和共享。

    • mount_point— 要将文件系统挂载到的 EC2 实例上的目录。

在 Amazon EC2 Linux 实例上装载文件共享

您可以在加入到活动目录或未加入的 Amazon EC2 Linux 实例上挂载适用于 Windows 文件服务器的 Amazon FSX 文件共享文件。

  1. 如果您尚未将正在运行的 EC2 Linux 实例加入到您的 Microsoft 活动目录中,请参阅手动加入 Linux 实例中的Amazon Directory Service管理指南以获取相应操作的说明。

  2. Connect 到您的 EC2 Linux 实例。有关更多信息,请参阅 。连接到您的 Linux 实例中的适用于 Linux 实例的 Amazon EC2 用户指南

  3. 运行以下命令以安装cifs-utils软件包。此软件包用于在 Linux 上挂载亚马逊 FSX 等网络文件系统。

    $ sudo yum install cifs-utils
  4. 创建装载点目录/mnt/fsx。您将在这里挂载 Amazon FSX 文件系统。

    $ sudo mkdir -p /mnt/fsx
  5. 使用以下命令使用 kerberos 进行身份验证。

    $ kinit
  6. 使用以下命令装载文件共享。

    $ sudo mount -t cifs //file_system_dns_name/file_share mount_point --verbose -o vers=3.0,sec=krb5,cruid=ad_user,rsize=CIFSMaxBufSize,wsize=CIFSMaxBufSize,cache=none,ip=preferred-file-server-Ip

    您可以在Amazon FSx 控制台通过选择Windows 文件 Server网络 & 安全。或者,您可以在CreateFileSystem或者DescribeFileSystemsAPI 操作。

    • 对于单可用区文件系统加入到Amazon托管微软活动目录,DNS 名称如下所示。

      fs-0123456789abcdef0.ad-domain.com
    • 对于加入到自我管理的 Active Directory 和任何多可用区文件系统的单可用区文件系统,DNS 名称如下所示。

      amznfsxaa11bb22.ad-domain.com

    ReplaceCIFSMaxBufSize为内核允许的最大值。运行以下命令以获取此值。

    $ modinfo cifs | grep CIFSMaxBufSize parm: CIFSMaxBufSize:Network buffer size (not including header). Default: 16384 Range: 8192 to 130048 (uint)

    输出显示最大缓冲区大小为 130048。

  7. 通过运行以下命令验证文件系统是否已装载,该命令仅返回公用 Internet 文件系统 (CIFS) 类型的文件系统。

    $ mount -l -t cifs //fs-0123456789abcdef0/share on /mnt/fsx type cifs (rw,relatime,vers=3.0,sec=krb5,cache=strict,username=user1@CORP.NETWORK.COM,uid=0,noforceuid,gid=0,noforcegid,addr=192.0.2.0,file_mode=0755,dir_mode=0755,soft,nounix,serverino,mapposix,rsize=1048576,wsize=1048576,echo_interval=60,actimeo=1)

此过程中使用的 mount 命令在给定点执行以下操作:

  • //file_system_dns_name/file_share— 指定要装载的文件系统的 DNS 名称和共享。

  • mount_point— 要将文件系统挂载到的 EC2 实例上的目录。

  • -t cifs vers=3.0— 将文件系统的类型指定为 CIFS,协议版本指定为 3.0。

  • sec=krb5— 指定使用 Kerberos 版本 5 进行身份验证。

  • cruid=ad_user— 将凭据缓存所有者的 uid 设置为 AD 目录管理员。

  • /mnt/fsx— 指定 Amazon FSX 文件共享在 EC2 实例上的挂载点。

  • rsize=CIFSMaxBufSize,wsize=CIFSMaxBufSize— 将读取和写入缓冲区大小指定为 CIFS 协议允许的最大值。ReplaceCIFSMaxBufSize为内核允许的最大值。确定CIFSMaxBufSize通过运行以下命令。

    $ modinfo cifs | grep CIFSMaxBufSize parm: CIFSMaxBufSize:Network buffer size (not including header). Default: 16384 Range: 8192 to 130048 (uint)

    输出显示最大缓冲区大小为 130048。

  • cache=none— 将 CIFS 缓存模式设置为无,即根本不缓存文件数据。

  • ip=preferred-file-server-Ip— 将目标 IP 地址设置为文件系统的首选文件服务器的 IP 地址。

    您可以按如下方式检索文件系统的首选文件服务器 IP 地址:

    • 使用亚马逊 FSX 控制台,在网络 & 安全选项卡文件系统详细信息页.

    • 在响应describe-file-systemsCLI 命令或等效的DescribeFileSystemsAPI 命令。

以下过程将 Amazon FSX 文件共享挂载到未加入到活动目录 (AD) 的 Amazon EC2 Linux 实例。对于 EC2 Linux 实例不是加入到您的活动目录中,您只能使用其私有 IP 地址挂载适用于 Windows 文件服务器文件共享的 Amazon FSX。您可以使用Amazon FSx 控制台,在网络 & 安全选项卡,在首选文件服务器 IP 地址

此示例使用 NTLM 身份验证。若要执行此操作,您将文件系统装载为 Microsoft 活动目录域的成员的用户,该域的 Amazon FSx for Windows File Server 文件系统加入。用户账户的证书将在您在 EC2 实例上创建的文本文件中提供,creds.txt。此文件包含用户的用户名、密码和域。

$ cat creds.txt username=user1 password=Password123 domain=EXAMPLE.COM

启动和配置亚马逊 Linux EC2 实例

  1. 使用Amazon EC2 控制台。有关更多信息,请参阅 。启动实例中的适用于 Linux 实例的 Amazon EC2 用户指南

  2. Connect 到 Amazon Linux EC2 实例。有关更多信息,请参阅 。连接到您的 Linux 实例中的适用于 Linux 实例的 Amazon EC2 用户指南

  3. 运行以下命令以安装cifs-utils软件包。此软件包用于在 Linux 上挂载亚马逊 FSX 等网络文件系统。

    $ sudo yum install cifs-utils
  4. 创建挂载点/mnt/fsxx,您计划安装 Amazon FSX 文件系统。

    $ sudo mkdir -p /mnt/fsx
  5. 创建creds.txt凭证文件/home/ec2-user目录,使用之前显示的格式。

  6. 设置creds.txt文件权限,以便只有您(所有者)可以通过运行以下命令读取和写入文件。

    $ chmod 700 creds.txt

挂载文件系统

  1. 您挂载文件共享未加入到您的活动目录通过使用其私有 IP 地址。您可以使用Amazon FSx 控制台,在网络 & 安全选项卡上的首选文件服务器 IP 地址

  2. 使用以下命令装载文件系统:

    $ sudo mount -t cifs //file-system-IP-address/file_share /mnt/fsx --verbose -o vers=3.0,sec=ntlmsspi,cred=/home/ec2-user/creds.txt,rsize=CIFSMaxBufSize,wsize=CIFSMaxBufSize,cache=none

    ReplaceCIFSMaxBufSize为内核允许的最大值。运行以下命令以获取此值。

    $ modinfo cifs | grep CIFSMaxBufSize parm: CIFSMaxBufSize:Network buffer size (not including header). Default: 16384 Range: 8192 to 130048 (uint)

    输出显示最大缓冲区大小为 130048。

  3. 通过运行以下命令验证文件系统是否已装载,该命令仅返回 CIFS 文件系统。

    $ mount -l -t cifs //file-system-IP-address/file_share on /mnt/fsx type cifs (rw,relatime,vers=3.0,sec=ntlmsspi,cache=strict,username=user1,domain=CORP.EXAMPLE.COM,uid=0,noforceuid,gid=0,noforcegid,addr=192.0.2.0,file_mode=0755,dir_mode=0755,soft,nounix,serverino,mapposix,rsize=1048576,wsize=1048576,echo_interval=60,actimeo=1)

此过程中使用的 mount 命令在给定点执行以下操作:

  • //file-system-IP-address/file_share— 指定要装载的文件系统的 IP 地址和共享。

  • -t cifs vers=3.0— 将文件系统的类型指定为 CIFS,协议版本指定为 3.0。

  • sec=ntlmsspi— 指定使用 NT 局域网管理器安全 Support 提供程序接口 (NTLMSSPI) 进行身份验证。

  • cred=/home/ec2-user/creds.txt— 指定获取用户凭据的位置。

  • /mnt/fsx— 指定 Amazon FSX 文件共享在 EC2 实例上的挂载点。

  • rsize=CIFSMaxBufSize,wsize=CIFSMaxBufSize— 将读取和写入缓冲区大小指定为 CIFS 协议允许的最大值。ReplaceCIFSMaxBufSize为内核允许的最大值。确定CIFSMaxBufSize通过运行以下命令。

    $ modinfo cifs | grep CIFSMaxBufSize parm: CIFSMaxBufSize:Network buffer size (not including header). Default: 16384 Range: 8192 to 130048 (uint)

    输出显示最大缓冲区大小为 130048。

  • cache=none— 将 CIFS 缓存模式设置为无,即根本不缓存文件数据。

在未加入您的活动目录的 Amazon Linux EC2 实例上自动挂载文件共享

每当安装到的 Amazon EC2 Linux 实例重新启动时,您都可以自动挂载您的 Windows 文件服务器文件共享文件。为此,请将添加到/etc/fstab文件。/etc/fstab 文件包含有关文件系统的信息。命令mount -a在实例启动期间运行的文件系统挂载到/etc/fstab文件。

对于未加入您的活动目录的 Amazon Linux EC2 实例,您只能使用其私有 IP 地址挂载适用于 Windows 文件服务器的 Amazon FSX 文件共享文件。您可以使用Amazon FSx 控制台,在网络 & 安全选项卡,在首选文件服务器 IP 地址

以下过程使用 Microsoft NTLM 身份验证。您将文件系统装载为 Microsoft 活动目录域的成员的用户,其中亚马逊 FSx for Windows File Server 系统加入到该域。用户帐户的凭据在文本文件creds.txt。此文件包含用户的用户名、密码和域。

$ cat creds.txt username=user1 password=Password123 domain=EXAMPLE.COM

启动和配置亚马逊 Linux EC2 实例

  1. 使用Amazon EC2 控制台。有关更多信息,请参阅 。启动实例中的适用于 Linux 实例的 Amazon EC2 用户指南

  2. 连接到您的 实例。有关更多信息,请参阅 。连接到您的 Linux 实例中的适用于 Linux 实例的 Amazon EC2 用户指南

  3. 运行以下命令以安装cifs-utils软件包。此软件包用于在 Linux 上挂载亚马逊 FSX 等网络文件系统。

    $ sudo yum install cifs-utils
  4. 创建/mnt/fsx文件夹。您将在这里挂载 Amazon FSX 文件系统。

    $ sudo mkdir /mnt/fsx
  5. 创建creds.txt凭证文件/home/ec2-user文件夹。

  6. 设置文件权限,以便只有您(所有者)可以通过运行以下命令来读取文件。

    $ sudo chmod 700 creds.txt

自动挂载文件系统

  1. 通过使用其私有 IP 地址自动挂载未加入到活动目录的文件共享。您可以从Amazon FSx 控制台,在网络 & 安全选项卡上,首选文件服务器 IP 地址

  2. 要使用文件共享的私有 IP 地址自动挂载到文件共享,请将以下行添加到/etc/fstab文件。

    //file-system-IP-address/file_share /mnt/fsx cifs vers=3.0,sec=ntlmsspi,cred=/home/ec2-user/creds.txt,rsize=CIFSMaxBufSize,wsize=CIFSMaxBufSize,cache=none

    ReplaceCIFSMaxBufSize为内核允许的最大值。运行以下命令以获取此值。

    $ modinfo cifs | grep CIFSMaxBufSize parm: CIFSMaxBufSize:Network buffer size (not including header). Default: 16384 Range: 8192 to 130048 (uint)

    输出显示最大缓冲区大小为 130048。

  3. 测试fstab条目,通过使用mount命令与 “all” 和 “verbose” 选项结合使用。

    $ sudo mount -fav home/ec2-user/fsx : successfully mounted
  4. 要挂载文件共享,请重新启动 Amazon EC2 实例。

  5. 当实例再次可用时,请通过运行以下命令验证文件系统是否已挂载。

    $ sudo mount -l -t cifs //file-system-IP-address/file_share on /mnt/fsx type cifs (rw,relatime,vers=3.0,sec=ntlmsspi,cache=strict,username=user1,domain=CORP.EXAMPLE.COM,uid=0,noforceuid,gid=0,noforcegid,addr=192.0.20.0,file_mode=0755,dir_mode=0755,soft,nounix,serverino,mapposix,rsize=1048576,wsize=1048576,echo_interval=60,actimeo=1)

    添加到/etc/fstab文件在给定点执行以下操作:

    • //file-system-IP-address/file_share— 指定要挂载的 Amazon FSX 文件系统的 IP 地址和共享。

    • /mnt/fsx— 指定 Amazon FSX 文件系统在 EC2 实例上的挂载点。

    • cifs vers=3.0— 将文件系统的类型指定为 CIFS,协议版本指定为 3.0。

    • sec=ntlmsspi— 指定使用 NT LAN 管理器安全 Support 提供程序接口以促进 NTLM 质询响应身份验证。

    • cred=/home/ec2-user/creds.txt— 指定获取用户凭据的位置。

    • _netdev— 向操作系统指示文件系统位于需要网络访问的设备上。使用该选项禁止实例挂载文件系统,直到在客户端上启用了网络服务。

    • 0— 表示文件系统应由dump(如果它是非零值)。对于 Amazon FSX,该值应为0

    • 0— 指定其中的顺序fsck在启动时检查文件系统。对于 Amazon FSX 文件系统,该值应为0以指示fsck不应该在启动时运行。