概述
更新时间:2025-09-12
概述
BOSFS2 用于实现将远程bos服务挂载到本地文件系统中,实现类似于网络文件系统的功能,目的是便于用户使用系统命令或者类POSIX接口访问BOS上的文件,就像使用本地磁盘一样方便。
BOSFS2 基于FUSE实现,因此依赖于支持FUSE的操作系统。目前支持基本的POSIX语义调用,暂时不支持链接、扩展属性, 文件ACL等。
BOSFS2.0相较于BOSFS1.0,在顺序读写和高并发小文件读取方面均实现了显著的性能提升。
系统 | 名称及下载地址 | MD5 |
---|---|---|
ubuntu 24.04 | bosfs2-2.0.10.1-ubuntu24.04-amd64.deb | f79b95ff7bda4f3f59a1b9b4af4fda08 |
ubuntu 22.04 | bosfs2-2.0.10.1-ubuntu22.04-amd64.deb | eb0223d5e41fc3cccefadb374faeaafe |
使用限制
- 权限要求:需确保AccessKey对目标Bucket或前缀(prefix)相关资源拥有全部权限,否则可能导致挂载失败或功能异常。
- 文件读取限制:新写入的文件必须在文件关闭后才会完全上传到BOS。如果是读取一个正在顺序写入、尚未关闭的文件,可能导致报错。(支持随机写的小文件不受限制)
- 重命名目录相关请求不保证原子性,再正在mv的目录下创建文件,可能导致文件还在原始目录下
- 多个客户端访问同一个或多个挂载点时, 数据一致性由使用侧维护, 可能出现多端数据不一致情况。
POSIX API支持情况
功能分类 | 操作/功能 | bosfs 2.0 |
---|---|---|
文件基础操作 | open | 支持 |
flush | 支持 | |
close | 支持 | |
文件读写 | read | 支持 |
write | 大文件顺序写入 支持小文件随机写入(大文件需内存足够,并配置) | |
truncate | 仅支持open时清空文件(当前版本如果同时有多个open,只支持第一个open 清空文件) | |
文件元操作 | create | 支持 |
unlink | 支持 | |
rename | 支持 | |
目录操作 | mkdir | 支持 |
readdir | 支持 | |
rmdir | 支持 | |
权限与属性 | getattr | 支持 |
chmod | 不支持(操作不报错,但设置不生效) | |
chown | 不支持(操作不报错,但设置不生效) | |
utimes | 不支持(操作不报错,但设置不生效) | |
扩展功能 | setxattr | 不支持(操作不报错,但设置不生效) |
symlink | 不支持 | |
flock | 支持本挂载点级别的flock |