s3fs挂载对象存储到本地
一、S3FS介绍:
S3FS是Google开发的一款支持将对象存储中的bucket以文件形式导出的文件系统接口,兼容POSIX语法
S3FS基于FUSE开发的文件系统,允许Linux和Mac OS 挂载S3的存储桶到本地文件系统,并保持对象原来格式。
只要支持S3存储协议的都支持挂载,比如minio、华为云OBS、阿里云OSS等
二、安装 s3fs
| #centos 安装 yum -y install s3fs-fuse
#ubantu 安装 apt install s3fs
|
三、挂载使用
S3FS参数说明
命令: s3fs BUCKET:[/PATH] MOUNTPOINT [OPTION]…
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| OPTIONS:
passwd_file: 指定要使用的s3fs密码文件 url: 设置用于访问对象存储的 url endpoint: 存储端点,默认值为us-east-1 umask: 为装载目录设置umask no_check_certificate: 不检查认证 use_path_request_style: 使用路径请求样式(使用传统API调用),兼容支持与不支持S3的类似api的虚拟主机请求 nonempty: 允许挂载点为非空目录 default_acl: 默认private,取值有private,public-read ensure_diskfree: 设置磁盘可用空间。如果磁盘空闲空间小于此值,s3fs不适用磁盘空间 allow_other: 允许所有用户访问挂载点目录,可将该挂载点用于创建NFS共享 use_cache: 指定本地文件夹用作本地文件缓存。默认为空 del_cache: 在S3FS启动和退出时删除本地缓存 enable_noobj_cache: 减少s3fs发送的列举桶的请求,从而提升性能 dbglevel: 设置消息级别,默认关键(critical), 可以使用 info 进行调试输出 multireq_max: 列出对象的并行请求的最大数据 parallel_count: 上传大对象的并行请求数 retries: 默认值为5,传输失败重试次数 storage_class: 存储类(默认为标准) ,值有 standard,standard_ia , onezone_ia , reduced_redundancy connect_timeout: 连接超时时间,默认为300秒 readwrite_timeout: 读写超时,默认值为60秒 max_stat_cache_size: 最大静态缓存大小,默认值为100000个条目(约40MB) stat_cache_expire: 为stat缓存中条目指定过期时间(秒)。此过期时间表示自stat缓存后时间 -f : 前台输出执行信息 -d: 将dubug消息输出到 syslog中
|
四、创建访问密钥文件
| #将aksk或账号密码写入文件中 #命令格式:echo [IAM用户访问密钥ID]:[ IAM用户访问密钥] >[密钥文件名] echo "username:password" > /data/s3fs/.passwd-s3fs
# 设置密钥智能被当前用户访问 chmod 600 /data/s3fs/.passwd-s3fs
|
五、挂载 华为云OBS
| # 命令格式:s3fs [S3存储桶名] [本地目录名] -o passwd_file=[密钥文件名] -o endpoint=[区域名] s3fs prodfile-bucket /data/s3fs/s3mnt -o passwd_file=/data/s3fs/.passwd-s3fs -o url=http://obs.cn-north-4.myhuaweicloud.com
|