obsfs简介
obsfs是对象存储服务 (Object Storage Service,OBS)提供的一款基于FUSE的文件系统工具,用于将OBS桶或者并行文件系统挂载至Linux系统,让用户能够在本地像操作文件系统一样直接使用OBS海量的存储空间。
对于原本使用本地文件系统存储数据的用户,如果希望把数据存储在OBS上但不改变数据的访问方式,可以使用obsfs。
功能概述
- 支持挂载OBS桶或者并行文件系统到Linux操作系统的本地文件系统中,通过本地文件系统管理OBS上的对象。
- 在本地挂载目录新增任何文件,都支持直接同步上传至OBS。
- OBS桶和并行文件系统中的对象支持同步至本地挂载目录,在本地进行拷贝、修改、重命名及截断等操作。并行文件系统提供了更加强大的文件语义,能够直接对远端文件进行操作;OBS桶的对象本身不支持原地操作(如追加写、随机写),任何“修改”实际是新对象覆盖旧对象的操作,obsfs通过FUSE文件系统挂载提供“类本地文件系统”的操作接口,让修改操作被模拟为“新对象覆盖旧对象”的适配行为以支持这些本地文件系统操作。
约束与限制
- 本地挂载目录可以不为空,但是挂载后此目录下原有的内容将不可用,取消挂载后即可恢复。建议使用空目录作为挂载目录。
- 桶级的桶策略和IAM策略对obsfs挂载方式生效,目录级的桶策略和IAM策略对obsfs挂载方式访问不生效。
适用的操作系统
obsfs适用于Linux操作系统,并提供直接下载和编译生成两种方式供用户获取obsfs,具体说明和操作指导如表1所示。
| 方式 | 说明 | 适用的Linux发行版 | 操作指导 |
|---|---|---|---|
| 直接下载 | 直接下载官方提供的软件包,在Linux配置运行环境后即可使用obsfs。该方式支持的cpu体系结构(x86/ARM)详见包名。 | Ubuntu 16、Ubuntu18、Ubuntu20、Ubuntu22、CentOS 7、EulerOS 2.8 、EulerOS 2.9 | |
| 编译生成 | 下载托管在GitHub的源码,配置编译环境后通过源码中自带脚本生成obsfs。该方式支持x86架构和ARM架构。 | Ubuntu 14、Ubuntu 16、Ubuntu 18、SUSE 12、CentOS 7、Fedora 28、RHEL 7、Debian 8、openSUSE Leap 42.1 |
