微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

fufs 用户空间文件系统

程序名称:fufs

授权协议: GPL

操作系统: Linux

开发语言: C/C++

fufs 介绍

FUFS 是一款基于linux c语言版fuse 开发的用户空间文件系统,实现了在linux
中对新浪微盘的基本操作。文件系统实现了对新浪微盘API的封装,当文件系统挂载到用户linux
的某个文件夹下,用户只需像普通文件一样操作自己微盘中的目录和文件

FUFS的实现,通过fuse 来获取用户文件操作的指令,转而通过fufs自行分装的文件操作函数,来实现对新浪微盘里面的文件的操作。 通过libcurl
库,来实现http报文的发送和接受,通过glib库实现fufs 文件系统inode节点的建立,查询删除,插入。通过json-
c库,实现对新浪微盘服务器响应报文的解析。

FUFS实现的功能

1 挂载文件系统到linux 中某个文件

2 查询新浪微盘根目录文件

3 查询新浪微盘中某个文件

4 各种类型文件thumbnail的显示

5 文件属性获取

6 新浪微盘里的文件,linux环境读取

7 新浪微盘文件的读写

修改文件

8 文件系统的卸载

注意:

由于新浪微盘API要求,对用户获取的token,必须在10-15分钟之间进行keep_token操作,因此在实现过程中,FUFS

先将获取的token保存在/tmp/token.log文件中,当fufs文件系统完成挂载后,需要运行src目录里面的token_keep_thread

小程序,它通过读取token.log里的token,在用户指定时间里面进行keep_token操作,保证token的有效性。

目前还没有完成的工作

1 文本文件汉字打开时出现乱码。(主要原因是缺少urlencode函数,对从新浪微盘读取数据的解码获取中文

2 文件重命名,目录重命名 。即fuse里面的rename函数未完成。

感谢:非常感谢kpfs文件系统的作者Tao Yu ,给我实现新浪微盘文件系统FUFS带来了很多灵感和帮助.

如果有什么问题需要交流,或许你想帮助完善FUFS文件系统,你可以发我邮件

我的邮箱地址:[email protected]

fufs 官网

https://github.com/handsomestone/FUFS

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐