Yuandupier

Yuandupier

s3fs安装使用

96
0
0
2023-07-21

前言

最近在预研将对象存储桶挂载到本地文件系统的需求,查阅了一些相关的资料,找到s3fs-fuse开源组件,可以满足需求,本文主要记录一下s3fs的部署以及使用。

s3fs简介

s3fs 是一个 C++ 开发的开源工具,可以将 S3 对象存储通过 FUSE 挂载到本地,像本地磁盘一样进行读写访问。

安装

本次使用的是源码编译安装的方式,使用的服务器版本是redhat7.6,s3fs软件版本是v1.92。

首先安装依赖:

yum install automake fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel -y

去官网下载对应的源码包,解压:

unzip -o s3fs-fuse-1.92.zip

源码编译安装:

cd s3fs-fuse-1.92
./autogen.sh
./configure
make
sudo make install

创建S3鉴权文件并赋权:

echo "minioadmin:minioadmin" > /etc/passwd-minio
chmod 600 /etc/passwd-minio

挂载已存在的bucket到文件目录,这边注意如果使用url格式的话,需要额外指定use_path_request_style参数:

s3fs test01 /data/bucket/test01 -o passwd_file=/etc/passwd-minio -o url=http://173.16.156.6:9000 -o use_path_request_style

挂载成功之后,可以使用df命令看到已经挂载的bucket: 在这里插入图片描述

可以对bucket中的文件进行操作: 在这里插入图片描述

结语

基于s3fs我们可以完成很多功能,比如说可以更方便的操作桶内的文件,还有简单的实现对象跨池和桶的迁移等等。

参考:

https://www.cnblogs.com/gustabm/p/15988551.html

https://github.com/s3fs-fuse/s3fs-fuse/blob/master/COMPILATION.md