如何在AWS EC2实例间创建共享文件夹?含Windows与Linux场景
AWS EC2实例间共享文件夹解决方案
1. 两台Windows EC2实例间创建共享文件夹
- 确认两台实例处于同一VPC(或已通过VPC peering连通),安全组已放行以下端口:
- TCP:139、445
- UDP:137、138
- 确保两台实例属于同一工作组(默认
WORKGROUP),且用于访问共享的本地管理员账户密码一致 - 配置共享端实例:
- 右键目标文件夹 → 「属性」→ 「共享」选项卡
- 点击「高级共享」,勾选「共享此文件夹」并设置共享名称
- 进入「权限」设置,添加需要访问的用户(如
Everyone或指定本地账户),赋予「读取/写入」权限 - 切换到「安全」选项卡,确认该用户拥有对应文件系统的访问权限
- 访问共享端实例:
打开文件资源管理器,输入\\<实例私有IP>\<共享名>,输入授权账户的密码即可访问
2. 两台Linux EC2实例间创建共享文件夹
方式一:自建NFS(同VPC内适用)
- 安全组放行:TCP 2049(NFS服务端口)、TCP/UDP 111(RPC端口)、TCP 32768-32771(动态端口)
- NFS服务器端操作:
- 安装NFS服务:
- RHEL/CentOS:
sudo yum install nfs-utils -y - Ubuntu:
sudo apt install nfs-kernel-server -y
- RHEL/CentOS:
- 创建共享目录:
sudo mkdir /mnt/shared_folder - 设置目录权限:
sudo chmod 777 /mnt/shared_folder - 编辑
/etc/exports文件,添加规则:/mnt/shared_folder <客户端私有IP/子网CIDR>(rw,sync,no_root_squash) - 重启NFS服务:
- RHEL/CentOS:
sudo systemctl restart nfs-server - Ubuntu:
sudo systemctl restart nfs-kernel-server
- RHEL/CentOS:
- 安装NFS服务:
- NFS客户端操作:
- 安装NFS客户端:
- RHEL/CentOS:
sudo yum install nfs-utils -y - Ubuntu:
sudo apt install nfs-common -y
- RHEL/CentOS:
- 创建挂载点:
sudo mkdir /mnt/shared_folder - 挂载共享目录:
sudo mount <服务器私有IP>:/mnt/shared_folder /mnt/shared_folder - (可选)设置开机自动挂载:编辑
/etc/fstab,添加<服务器私有IP>:/mnt/shared_folder /mnt/shared_folder nfs defaults 0 0
- 安装NFS客户端:
方式二:使用AWS EFS(托管式共享存储)
- 创建EFS文件系统,确保与实例在同一VPC,为实例所在子网创建挂载目标
- 安全组放行TCP 2049端口
- 两台实例分别执行以下操作:
- 安装NFS客户端(同上)
- 创建挂载点:
sudo mkdir /mnt/efs - 挂载EFS:
sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 <EFS挂载目标DNS>:/ /mnt/efs - (可选)将挂载规则写入
/etc/fstab实现开机自动挂载
3. Linux仅能使用EFS、Windows仅能使用FSx吗?
不是的,两种系统都支持多种共享方案:
- Linux实例:除EFS外,还可使用自建NFS、S3挂载(通过
s3fs等工具)、SMB共享(安装Samba服务与Windows互通) - Windows实例:除FSx for Windows File Server外,还可自建SMB共享、S3挂载(通过AWS Storage Gateway或第三方工具)、甚至挂载EFS(需安装NFS客户端)
内容的提问来源于stack exchange,提问作者Karthik P
相关产品推荐
相关产品推荐

