全部产品
Search
文档中心

对象存储 OSS:ossfs概述

更新时间:Dec 16, 2024

ossfs能将阿里云对象存储服务OSS挂载成本地文件系统,方便用户像操作本地文件一样管理OSS数据。

ossfs介绍

ossfs是一个用户空间文件系统(userspace filesystem),它允许您在Linux系统上将OSS存储空间挂载为本地文件系统,且支持以下功能:

  • 支持POSIX文件协议标准的大部分功能,例如上传下载文件、目录,设置用户权限等。

  • 默认使用OSS的分片上传和断点续传功能上传文件。

  • 支持MD5校验,保证数据的完整性。

运行环境

ossfs基于FUSE(Filesystem in Userspace)用户态文件系统开发,只能运行在支持FUSE的机器上。ossfs提供Ubuntu系统和CentOS系统的安装包。如果需要在其他环境下运行,可以通过源码方式构建目标程序。

  • Linux系统

    • CentOS 7.0及以上版本。

    • Ubuntu 14.04及以上版本。

    • Anolis7及以上版本。

  • fuse软件:2.8.4以上版本

    您可以执行fusermount -V命令判断fuse软件的版本。当返回结果中fusermount version的值为2.8.4以上版本(例如fusermount version: 2.9.2)时,表示fuse满足版本要求。

使用限制

使用ossfs将远程Bucket数据及功能映射到本地文件系统时存在如下限制:

  • 不适合高并发混合读写的场景。

    说明
    • 在ossfs的实现中,对数据的随机读取和所有写入均需要落盘。在高并发读写混合场景下,磁盘性能对于读和写会形成瓶颈。

    • 在ossfs的实现中并发的读写请求之间存在竞争,影响带宽。

  • 不支持文件硬链接。

  • 不支持挂载归档存储、冷归档存储或者深度冷归档存储类型Bucket。

  • 编辑已上传文件会导致文件被重新上传。

  • 元数据操作,例如list directory,因为需要远程访问OSS服务器,所以性能较差。

  • 重命名文件或文件夹可能会出错。若操作失败,可能会导致数据不一致。

  • 多个客户端挂载同一个OSS Bucket,且同时写入同一个文件时,无法保证数据的一致性。

  • 请确保您的访问密钥AccessKey有对目标Bucket或目标前缀prefix相关资源的全部权限,如果权限不足可能导致挂载点无法正常使用,以及其他潜在问题。

后续步骤

在使用ossfs将对象存储服务挂载成本地文件系统之前,您需要安装并配置挂载ossfs。具体操作,请参见安装ossfsossfs配置与挂载

相关文档