OSSFs挂载工具简介

OSSFs挂载工具

OSSFs挂载工具简介

​ ossfs允许您在Linux系统中将对象存储OSS的存储空间(Bucket)挂载到本地文件系统。挂载完成后,您能够像操作本地文件一样操作OSS的对象(Object),从而实现数据共享。

​ 使用起来,可以把存储桶Bucket理解成一个文件夹,进入到文件夹后增删改查目录中的文件,即相当于在操作Bucket。

演示体验:

这里已经创建了一个Bucket :longgovv

在存储桶中创建2个文件夹

如果Linux服务器已经部署了OSSFs系统并配置,则效果如下:

[root@wangting ~]# cd /oss/longgovv/
[root@wangting longgovv]# ll
total 1
drwxrwxrwx 1 root root 0 Mar  2 16:20 FypA9M
drwxr-xr-x 1 root root 0 Mar  3 09:55 wangt

可以在服务器上查看到与longgovv同步的目录,以上就是直观的使用感受

OSSFs运行环境

Linux系统:

  • CentOS 7.0及以上版本
  • Ubuntu 14.04及以上版本
  • Anolis7及以上版本
  • fuse 2.8.4以上版本

​ ossfs基于fuse用户态文件系统开发,只能运行在支持fuse的机器上。OSS提供了Ubuntu和CentOS系统的安装包,如果需要在其它环境下运行,可以通过源码方式构建目标程序。
​ ossfs支持在阿里云内网以及互联网环境下使用。在内网环境下时,建议使用内网访问域名,以提升访问速度和稳定性

OSSFs主要功能

ossfs基于s3fs构建,具有s3fs的全部功能。其中包括:

  • 支持POSIX文件系统的大部分功能,例如上传下载文件、目录,设置用户权限等
  • 默认使用OSS的分片上传和断点续传功能上传文件
  • 支持MD5校验,保证数据完整性

OSSFs使用限制

  • 不支持挂载归档型Bucket
  • 不适合高并发读写的场景
  • 编辑OSS内文件会导致文件被重新上传
  • 元数据操作(例如list directory)需要远程访问OSS服务器,所以性能较差
  • 重命名文件或文件夹可能会出错。若操作失败,可能会导致OSS和本地数据不一致
  • 多个客户端挂载同一个OSS Bucket时,数据一致性由您自行维护。建议您合理规划文件使用时间,避免出现多个客户端写同一个文件的情况
  • 不支持hard link
  • 如果您因意外中断了文件上传的过程,且未继续完成该文件的上传,则已上传的部分会以碎片(Part)的形式存储在OSS的存储空间(Bucket)中。如果您不再需要这些Part,建议您通过以下方式删除,以免产生额外的存储费用

安装ossfs

1.下载安装包

# CentOS 7.0 (x64)
[root@wangting ~]# wget https://gosspublic.alicdn.com/ossfs/ossfs_1.80.7_centos8.0_x86_64.rpm

# CentOS 8.0 (x64)
[root@wangting ~]# wget https://gosspublic.alicdn.com/ossfs/ossfs_1.80.7_centos8.0_x86_64.rpm

其它版本可到官方查找下载连接

2.安装rpm包

[root@wangting ~]# yum install -y ossfs_1.80.7_centos8.0_x86_64.rpm

【注意】

yum安装ossfs的rpm包时,-y会自动安装一些附带的依赖,如果纯离线环境需要考虑yum安装环境

无法直接使用yum下载依赖包。您可以在网络正常的、相同版本操作系统的节点上,使用yum下载依赖包并拷贝到网络特殊的节点。例如,ossfs需要依赖fuse 2.8.4以上版本,可使用如下命令,下载yum源中最新的fuse到本地

yum install --downloadonly --downloaddir=./ fuse
# 如果需要下载其他依赖包,请将fuse换成对应包的名称

3.配置账号访问信息

  • 配置账号

echo BucketName:yourAccessKeyId:yourAccessKeySecret > /etc/passwd-ossfs

[root@wangting ~]# echo longgovv:LT6qNAI5txgaUaUtEo4zF:AqJFq9jP6q0rzzeHITNNMCFRtCqKlL > /etc/passwd-ossfs
[root@wangting ~]# chmod 640 /etc/passwd-ossfs

将Bucket名称以及具有该Bucket访问权限的AccessKey ID和AccessKey Secret信息存放在/etc/passwd-ossfs文件中。文件的权限建议设置为640。

  • 配置挂载信息

ossfs BucketName mountfolder -o url=Endpoint

[root@wangting ~]# mkdir -p /oss/longgovv
[root@wangting ~]# ossfs longgovv /oss/longgovv -o url=http://oss-cn-shanghai.aliyuncs.com

Endpoint为访问端口,在Bucket的概览首页即可查找到

OSSFs验证与使用

Linux端写文件操作

配置完挂载信息,则直接可以在命令行查看使用Bucket了

[root@wangting longgovv]# df -hT
Filesystem     Type        Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs    899M     0  899M   0% /dev
tmpfs          tmpfs       914M     0  914M   0% /dev/shm
tmpfs          tmpfs       914M  520K  913M   1% /run
tmpfs          tmpfs       914M     0  914M   0% /sys/fs/cgroup
/dev/vda1      xfs          40G   21G   20G  51% /
tmpfs          tmpfs       183M     0  183M   0% /run/user/0
ossfs          fuse.ossfs  256T     0  256T   0% /oss/longgovv

使用体验:

[root@wangting longgovv]# cd /oss/longgovv/
[root@wangting longgovv]# mkdir 20230303
[root@wangting longgovv]# ll
total 2
drwxr-xr-x 1 root root 0 Mar  3 10:24 20230303
drwxrwxrwx 1 root root 0 Mar  2 16:20 FypA9M
drwxr-xr-x 1 root root 0 Mar  3 09:55 wangt
[root@wangting longgovv]# cd 20230303
[root@wangting 20230303]# date >> test.log
[root@wangting 20230303]# date >> test.log
[root@wangting 20230303]# date >> test.log
[root@wangting 20230303]# cat test.log 
Fri Mar  3 10:26:36 CST 2023
Fri Mar  3 10:26:37 CST 2023
Fri Mar  3 10:26:37 CST 2023

查看oss的对象API

[root@wangting 20230303]# curl https://longgovv.oss-cn-shanghai.aliyuncs.com/20230303/test.log
Fri Mar  3 10:26:36 CST 2023
Fri Mar  3 10:26:37 CST 2023
Fri Mar  3 10:26:37 CST 2023

下载test.log

Linux端读取文件操作

挂起目录监控

[root@wangting 20230303]# while true;do date && sleep 1 && ls -l;done

Bucket上传文件:

[root@wangting 20230303]# while true;do date && sleep 1 && ls -l;done
Fri Mar  3 10:34:59 CST 2023
total 1
-rw-r--r-- 1 root root 87 Mar  3 10:26 test.log
Fri Mar  3 10:35:00 CST 2023
total 1
-rw-r--r-- 1 root root 87 Mar  3 10:26 test.log
Fri Mar  3 10:35:01 CST 2023
total 1
-rw-r--r-- 1 root root 87 Mar  3 10:26 test.log
Fri Mar  3 10:35:02 CST 2023
total 1
-rw-r--r-- 1 root root 87 Mar  3 10:26 test.log
Fri Mar  3 10:35:03 CST 2023
total 19165
-rwxrwxrwx 1 root root 19623936 Mar  3 10:35 mariadb-connector-c-3.3.3-win64.msi
-rw-r--r-- 1 root root       87 Mar  3 10:26 test.log
Fri Mar  3 10:35:04 CST 2023
total 19165
-rwxrwxrwx 1 root root 19623936 Mar  3 10:35 mariadb-connector-c-3.3.3-win64.msi
-rw-r--r-- 1 root root       87 Mar  3 10:26 test.log
Fri Mar  3 10:35:05 CST 2023
total 19165
-rwxrwxrwx 1 root root 19623936 Mar  3 10:35 mariadb-connector-c-3.3.3-win64.msi
-rw-r--r-- 1 root root       87 Mar  3 10:26 test.log
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王亭_666

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值