s3fs挂载S3对象桶

简介: s3fs(Simple Storage Service File System)是一个基于FUSE(Filesystem in Userspace)的文件系统,它允许将S3(Simple Storage Service)或其他兼容S3 API的对象存储服务挂载到本地文件系统中,从而能够像访问本地磁盘一样访问远程对象存储。以下是通过s3fs挂载OBS(Object Storage Service,对象存储服务,这里以华为云OBS为例)对象桶的基本步骤:### 一、环境准备1. **安装s3fs**: - 对于CentOS系统,可以使用yum安装s3fs-fuse: ```

s3fs(Simple Storage Service File System)是一个基于FUSE(Filesystem in Userspace)的文件系统,它允许将S3(Simple Storage Service)或其他兼容S3 API的对象存储服务挂载到本地文件系统中,从而能够像访问本地磁盘一样访问远程对象存储。以下是通过s3fs挂载OBS(Object Storage Service,对象存储服务,这里以华为云OBS为例)对象桶的基本步骤:

一、环境准备

  1. 安装s3fs

    • 对于CentOS系统,可以使用yum安装s3fs-fuse:
      sudo yum install epel-release
      sudo yum install s3fs-fuse
      
    • 对于Ubuntu系统,可以使用apt安装s3fs:
      sudo apt install s3fs
      
    • 注意:如果系统中没有s3fs-fuse包,可能需要从源代码编译安装,或者检查是否有更新的包名。
  2. 准备OBS凭证

    • 获取OBS的访问密钥ID(Access Key ID)和访问密钥密钥(Secret Access Key)。这些凭证通常可以在云服务的IAM(Identity and Access Management)或相关服务的管理界面中找到。
  3. 创建密码文件

    • 创建一个密码文件,用于存储OBS的访问凭证。文件内容格式为accessKeyId:secretAccessKey
    • 例如,创建文件/etc/passwd-s3fs,并添加凭证:
      echo "your_access_key_id:your_secret_access_key" > /etc/passwd-s3fs
      
    • 设置密码文件的权限,确保只有当前用户可以访问:
      sudo chmod 600 /etc/passwd-s3fs
      

二、挂载OBS对象桶

  1. 确定OBS的Endpoint

    • Endpoint是访问OBS对象桶的URL地址,可以在OBS服务的文档或管理界面中找到。
  2. 创建挂载点

    • 在本地文件系统中创建一个目录,作为OBS对象桶的挂载点。
    • 例如,创建目录/mnt/obs-bucket
      sudo mkdir -p /mnt/obs-bucket
      
  3. 挂载OBS对象桶

    • 使用s3fs命令挂载OBS对象桶到本地目录。
    • 命令格式如下(以华为云OBS为例):
      s3fs <OBS-bucket-name> /mnt/obs-bucket -o passwd_file=/etc/passwd-s3fs -o url=<OBS-endpoint> -o allow_other
      
    • 请将<OBS-bucket-name>替换为你的OBS对象桶名称,<OBS-endpoint>替换为OBS服务的Endpoint地址。
    • -o allow_other参数允许所有用户访问挂载点目录,但请注意,这可能会带来安全风险,请根据实际情况决定是否使用。

三、验证挂载

  • 使用df -h命令查看挂载情况,确认OBS对象桶已成功挂载到本地目录。
  • 使用lscd等命令在挂载点目录中操作文件,就像在本地文件系统中一样。

四、自动挂载

  • 为了在系统启动时自动挂载OBS对象桶,可以将挂载命令添加到/etc/fstab文件中。
  • 但请注意,由于s3fs是基于FUSE的文件系统,它可能不适合直接添加到/etc/fstab进行自动挂载,因为FUSE文件系统在启动过程中可能无法正确初始化。
  • 一种替代方案是使用系统启动脚本(如systemd服务或crontab的@reboot条目)来执行挂载命令。

注意事项

  • 确保OBS服务的网络访问权限设置正确,以便s3fs能够成功连接并访问对象桶。
  • 如果遇到挂载问题,请检查s3fs的日志文件(通常在/var/log/目录下),以获取更多错误信息。
  • 根据实际情况调整s3fs的挂载参数,以获得最佳的性能和安全性。
相关实践学习
对象存储OSS快速上手——如何使用ossbrowser
本实验是对象存储OSS入门级实验。通过本实验,用户可学会如何用对象OSS的插件,进行简单的数据存、查、删等操作。
相关文章
|
存储 缓存 运维
Ceph离线(纯内网)部署
Ceph离线(纯内网)部署
Ceph离线(纯内网)部署
|
存储 文件存储 对象存储
S3存储服务间数据同步工具Rclone迁移教程
目前大多项目我们都会使用各种存储服务,例如oss、cos、minio等。当然,因各种原因,可能需要在不同存储服务间进行数据迁移工作,所以今天就给大家介绍一个比较通用的数据迁移工具Rclone。
S3存储服务间数据同步工具Rclone迁移教程
|
弹性计算 人工智能 数据管理
AI场景下的对象存储OSS数据管理实践
本文介绍了ECS和OSS的操作流程,分为两大部分。第一部分详细讲解了ECS的登录、密码重置、安全组设置及OSSUTIL工具的安装与配置,通过实验创建并管理存储桶,上传下载文件,确保资源及时释放。第二部分则聚焦于OSSFS工具的应用,演示如何将对象存储挂载为磁盘,进行大文件加载与模型训练,强调环境搭建(如Conda环境)及依赖安装步骤,确保实验结束后正确清理AccessKey和相关资源。整个过程注重操作细节与安全性,帮助用户高效利用云资源完成实验任务。
1382 161
|
存储 安全 Linux
CentOS安装SeaweedFS
通过上述步骤,您应该能够在CentOS系统上成功安装并启动SeaweedFS。记住,根据实际部署规模和需求,可能还需要进一步调整配置参数和优化网络布局。SeaweedFS的灵活性和扩展性意味着随着使用深入,您可能需要探索更多高级配置和管理策略。
759 64
|
存储 缓存 安全
|
Linux
[minio]挂载minio到本地
[minio]挂载minio到本地
1173 2
|
Cloud Native Devops Shell
ArgoWorkflow教程(六)---无缝实现步骤间参数传递
本文为ArangoWorkflow系列教程第六篇,详细介绍了在同一Workflow中不同步骤间如何实现参数传递,避免了通过文件传递的不便。文章重点讲解了导出结果和导入参数的方法,并演示了如何将上一步骤的输出参数作为下一步骤的输入参数。此外,还介绍了ArgoWorkflow内置的`result`参数,可用于捕获容器的标准输出。通过具体示例和代码片段,读者可轻松掌握这一重要功能。
543 0
|
Ubuntu 安全 Linux
创建并使用自定义的Linux命令`autoupdate`来自动化软件更新
创建自定义Linux命令`autoupdate`简化系统更新流程。通过编写包含`apt update`, `apt upgrade`, `apt autoremove`和`apt clean`的bash脚本,实现一键自动化更新。将脚本添加到PATH环境变量,确保在任意目录可执行。适用于基于Debian/Ubuntu系统,其他发行版需调整命令。记得备份数据,必要时重启系统,并可按需扩展脚本功能。
|
存储 Kubernetes Unix
k8s教程(Volume篇)-CSI存储机制详解
k8s教程(Volume篇)-CSI存储机制详解
3375 0
k8s教程(Volume篇)-CSI存储机制详解

热门文章

最新文章