AWS利用S3fs在Amazon EC2 Linux实例上挂载S3存储桶

本文介绍了如何在Amazon EC2 Linux实例上挂载S3存储桶,包括创建S3存储桶,启动EC2实例,安装软件包,设置IAM用户访问密钥,并实现开机自动挂载。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.账户权限

需要一个权限能完全访问EC2和S3服务的账户

2.创建S3存储桶

在这里插入图片描述

3.创建EC2

在这里插入图片描述

4.登录EC2安装软件包

  1. 使用Amazon EC2默认用户“ec2-user”和对应的私钥文件登录启动的Linux实例
  2. 安装需要的软件包
sudo amazon-linux-extras install epel
sudo yum install s3fs-fuse
  1. 检查是否安装成功
[ec2-user@ip-10-10-88-27 ~]$ s3fs 
s3fs: missing BUCKET argument.
Usage: s3fs BUCKET:[PATH] MOUNTPOINT [OPTION]...
  1. 创建IAM用户访问密钥文件
echo AK:SK > /home/ec2-user/.passwd-s3fs  ##注意:AK:IAM用户访问密钥ID SK:IAM用户访问密钥
  1. 设置密钥文件只能够被当前用户访问
[ec2-user@ip-10-10-88-27 ~]$ chmod 600 /home/ec2-user/.passwd-s3fs 
  1. 创建挂载目录
[ec2-user@ip-10-10-88-27 ~]$ sudo mkdir /data
  1. 手动挂载
s3fs的命令格式是:
	s3fs BUCKET MOUNTPOINT [OPTION]…
	s3fs [S3存储桶名] [本地目录名] [OPTION]
	OPTION是可选项,格式是 –o <option_name>=<option_value>,常用的options有:
		名称 			含义 												缺省值
		passwd_file		指定挂载的密钥文件	
		connect_timeout	设置超时连接等待的时间,单位秒							300
		url				设置访问s3的url										http://s3.amazonaws.com
		endpoint		设置s3存储桶的endpoint								us-east-1
		allow_other		设置allow_other允许所有用户访问挂载点目录,设置这个选项需要
						在/etc/fuse.conf 文件添加user_allow_other选项

手动挂载AWS中国宁夏区域S3存储桶:

s3fs yyj-s3fs-mount-bucket /data -o passwd_file=/home/ec2-user/.passwd-s3fs -o url=http://s3.cn-northwest-1.amazonaws.com.cn -o endpoint=cn-northwest-1

检查挂载结果:
挂载操作执行结束后,可以使用df -hT命令查看挂载是否成功。出现fuse.s3fs文件系统即表示挂载成功。用户就可以进入本地挂载目录去访问存储在S3存储桶中的对象。

[ec2-user@ip-10-10-88-27 ~]$ df -hT
Filesystem     Type       Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs   474M     0  474M   0% /dev
tmpfs          tmpfs      492M     0  492M   0% /dev/shm
tmpfs          tmpfs      492M  476K  492M   1% /run
tmpfs          tmpfs      492M     0  492M   0% /sys/fs/cgroup
/dev/xvda1     xfs        8.0G  1.6G  6.5G  20% /
s3fs           fuse.s3fs  256T     0  256T   0% /data
tmpfs          tmpfs       99M     0   99M   0% /run/user/1000
[ec2-user@ip-10-10-88-27 ~]$ cd /data/
[ec2-user@ip-10-10-88-27 data]$ mkdir 1
[ec2-user@ip-10-10-88-27 data]$ ll 
total 1
drwxrwxr-x 1 ec2-user ec2-user 0 Jul 23 02:56 1

S3存储桶出现创建的目录:
在这里插入图片描述

  1. 开机自动挂载
    创建全局IAM用户访问密钥文件
[ec2-user@ip-10-10-88-27 ~]$ sudo cp /home/ec2-user/.passwd-s3fs /etc/passwd-s3fs 

修改/etc/fstab文件:

[ec2-user@ip-10-10-88-27 ~]$ sudo vim /etc/fstab 
/usr/local/bin/s3fs#yyj-s3fs-mount-bucket /data fuse _netdev,allow_other,url=http://s3.cn-northwest-1.amazonaws.com.cn,endpoint=cn-northwest-1 0  0
(不加_netdev选项开机自动挂载会不成功)
  1. 重启验证
    重启完成之后再次使用df -hT命令,出现fuse.s3fs文件系统即表示开机自动挂载成功

参考链接:https://aws.amazon.com/cn/blogs/china/s3fs-amazon-ec2-linux/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值