一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于fuse文件接口的安全存储系统及操作系统的制作方法

2021-12-07 22:00:00 来源:中国专利 TAG:


1.本发明涉及海量大数据的数据存储和处理技术领域,具体地,涉及一种基于fuse文件接口的安全存储系统及操作系统。


背景技术:

2.在操作系统中,数据访问方式都是通过文件系统进行的,包括了数据文件的读、写和属性更新等。一个数据文件的访问需要先访问文件的元数据信息,再访问文件的实际数据信息,最终获取数据。
3.文件系统是一种用来存储和组织计算机文件、目录及其包含的数据的方法,它使文件、目录以及数据的查找和访问得到简化。
4.fuse(filesystem in userspace,用户空间文件系统)为开发者提供了一个用户态的文件系统框架,以及一组用于实现完整文件系统所需的应用程序编程接口(application programming interface,api),开发人员只需要实现fuse所定义的几种接口,就可以方便地在用户态实现一个新的文件系统,因此极大提高了开发文件系统的工作效率。
5.公开号为cn107239236a的发明专利,公开了一种数据写入方法及装置,包括:检测内存中的待存储数据的大小是否达到预设数据量,其中,所述预设数据量大于存储模块中单个存储页的大小;在所述待存储数据的大小达到预设数据量时,调用基于用户态开发的用户空间文件系统fuse的写操作;根据所述写操作,将所述待存储数据写入所述存储模块中。
6.在文件系统中,一个数据文件如果被外部非法更改了,对于文件本身是无法识别和修复的。当前针对该现象需要解决文件数据被非法篡改或破坏的数据安全问题,能够对上层的数据文件提供安全可靠的存储能力。


技术实现要素:

7.针对现有技术中的缺陷,本发明提供一种基于fuse文件接口的安全存储系统及操作系统。
8.根据本发明提供的一种基于fuse文件接口的安全存储系统及操作系统,所述方案如下:
9.第一方面,提供了一种基于fuse文件接口的安全存储系统及操作系统,所述系统包括:
10.挂载异构文件模块:该模块在数据存储层面,实现与其他多个文件模块的对接;
11.文件写模块:基于fuse mkdir/mknod/write接口,实现多个功能等价的同步写逻辑,实现写入数据的多副本冗余;
12.文件更新模块:基于fuse rename/chmod/chown/write/truncate文件接口实现安全的目录更新、文件更新在内的相关操作;
13.文件删除模块:基于fuse unlink/rmdir文件接口实现安全的文件删除和目录删除在内的相关操作。
14.文件防篡改模块:基于fuse read文件接口实现安全的文件读操作;
15.文件防破坏模块:基于fuse read文件接口,文件防破坏功能的文件读接口发起读取请求,基于fuse文件接口的安全文件系统提供一个文件操作接口,通过该接口实现安全的文件读操作。
16.优选的,所述挂载异构文件模块包括:
17.准备3种类型的文件系统用于实现多个异构文件目录的数据写入,异构目录类型包括:本地目录、远程nfs网络文件目录以及smb文件共享目录;
18.创建安全文件系统实际文件存储的接口目录:dir1、dir2和dir3;
19.远程挂载之前的异构文件目录或对异构文件目录通过mount命令分别挂载到dir1、dir2和dir3;
20.通过基于fuse接口的client命令挂载安全文件接口,用于数据转接到异构文件存储目录。
21.优选的,所述文件写模块包括:安全文件写接口将对接挂载异构文件模块或目录,针对每个文件,实现逻辑等价的文件写入操作,安全文件写功能主要包括文件写入以及文件目录创建。
22.优选的,所述文件写入包括:
23.通过基于fuse接口的client命令挂载安全文件接口,在安全文件系统中创建文件;
24.通过fuse中mknod接口监听文件信息的创建,在收到文件创建调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同文件的分别创建,这个过程保证一个文件的3个副本;
25.通过fuse中write接口监听文件数据内容的写入,在文件数据写入时,服务实现对三个文件系统下的相同文件的数据的写入,这个过程保证文件3副本间数据的一致性。
26.所述文件目录创建包括:
27.通过基于fuse接口的client命令挂载安全文件接口,在安全文件系统中创建目录;
28.通过fuse中mkdir接口监听目录信息的创建,在收到目录创建调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同目录的分别创建,这个过程保证一个目录的3个副本。
29.优选的,所述文件更新模块包括:安全文件更新接口将对接挂载异构文件模块或目录,针对每个文件,实现逻辑等价的文件更新操作,实现元数据冗余、数据冗余和属性冗余在内的安全措施。
30.优选的,所述文件更新模块还包括:文件更新和目录更新对应的更新操作能够操作各个文件副本,安全文件更新功能包括目录更新和文件更新。
31.优选的,所述文件删除模块包括:安全文件删除接口将对接挂载异构文件模块或目录,针对每个文件,实现逻辑等价的文件删除操作;安全文件删除模块包括文件删除和目录删除,文件删除和目录删除对应的删除操作能够操作各个文件副本。
32.优选的,所述文件防篡改模块包括:文件防篡改模块的文件读接口发起读取请求,基于fuse文件接口的安全文件系统提供一个文件操作接口,通过该接口从多个文件副本中读取数据,如果其中一个文件副本被篡改了,根据其他副本识别出被篡改的副本,读取响应将修正被篡改的副本,并将数据返回文件读接口。
33.优选的,所述文件防破坏模块包括:从多个文件副本中读取数据,如果其中一个文件副本被破坏了,根据其他副本识别出被破坏的副本,读取响应将补充被破坏的副本,并将数据返回文件读接口。
34.第二方面,提供了一种操作系统,该操作系统包括所述基于fuse文件接口的安全存储系统。
35.与现有技术相比,本发明具有如下的有益效果:
36.1、传统数据存储系统如果文件被外部非法篡改了,文件本身无法识别和修复,而本发明可以有效防止文件被非法篡改;
37.2、传统数据存储系统如果文件被外部非法破坏了,文件本身无法识别和修复,而本发明可以有效防止文件被非法破坏;
38.3、本发明基于fuse文件接口实现了安全的文件创建、删除、读取、写入等功能;
39.4、本发明支持多种异构形态的文件存储系统,可以对数据文件提供安全可靠的存储。
附图说明
40.通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
41.图1为本发明整体系统组成图;
42.图2为挂载多个异构文件系统示意图;
43.图3为安全写功能示意图;
44.图4为安全更新功能示意图;
45.图5为安全删除功能示意图;
46.图6为文件防篡改功能示意图;
47.图7为文件防破坏功能示意图;
48.图8为fuse安全文件系统示意图。
具体实施方式
49.下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
50.本发明实施例一种基于fuse文件接口的安全存储系统,参照图1所示,提供了一个文件操作接口,通过该接口实现安全文件创建、删除、读取、写入等操作;经过该文件接口的数据,将在实际数据存储的文件系统上,实现元数据冗余、数据冗余和属性冗余等安全措施。
51.文件接口针对文件系统中的读写过程,提供了多个功能等价的接口实现,在写入过程中实现数据冗余,在读取的过程中实现数据判决。该系统具体如下:
52.异构文件系统挂载模块:参照图2所示,该模块在数据存储层面,实现了多个文件模块的对接。对于linux系统,会将存储设备通过mount挂载为一个具体目录,对于安全文件系统的挂载,会通过fuse接口实现挂载点与目录的对接,对接的目录可以是通过mount命令实现多个文件系统的本地挂载,具体过程如下:
53.1)准备3种类型的文件系统用于实现多个异构文件目录的数据写入,异构目录类型包括:本地目录、远程nfs网络文件目录以及smb文件共享目录。
54.2)创建安全文件系统实际文件存储的接口目录:dir1、dir2和dir3。
55.3)远程挂载之前的异构文件目录或对异构文件目录通过mount命令分别挂载到dir1、dir2和dir3。
56.4)通过基于fuse接口的client命令挂载安全文件接口,用于数据转接到异构文件存储目录。
57.文件写模块:参照图3所示,通过fuse文件写入接口api,实现接口数据的获取,通过数据的分发,将数据写入到后端挂载的三个异构文件系统中。目前写入的对象包括文件和目录数据的写入,具体过程如下:
58.1)文件写入过程
59.a)通过基于fuse接口的client命令挂载安全文件接口,在安全文件系统中创建文件。
60.b)通过fuse中mknod接口监听文件信息的创建,在收到文件创建调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同文件的分别创建。这个过程保证一个文件的3个副本。
61.c)通过fuse中write接口监听文件数据内容的写入,在文件数据写入时,服务实现对三个文件系统下的相同文件的数据的写入。这个过程保证文件3副本间数据的一致性。
62.2)目录创建过程
63.a)通过基于fuse接口的client命令挂载安全文件接口,在安全文件系统中创建目录。
64.b)通过fuse中mkdir接口监听目录信息的创建,在收到目录创建调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同目录的分别创建。这个过程保证一个目录的3个副本。
65.文件更新模块:参照图4所示,通过fuse文件更新接口api,实现接口数据的内容变更,通过数据的分发,将数据变更到后端挂载的三个异构文件系统中。目前更新的对象包括文件名称、文件属性和文件内容更新,具体过程如下:
66.1)文件名称更新
67.通过fuse中rename接口监听文件名称的更改,在收到更改调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同文件名称的分别同步更新。
68.2)文件属性更新
69.a)通过fuse中chmod接口监听文件属性的更改,主要包括文件读写权限,在收到更改调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同文件属性的同步更
新。
70.b)通过fuse中chown接口监听文件所有者的更改,在收到更改调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同文件所有者的同步更新。
71.3)文件内容更新
72.a)通过fuse中truncate接口监听文件内容的更新事件,在收到长度变更调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同文件内容长度的分别同步更新。
73.b)和文件写入过程一样,系统通过fuse中write接口监听文件内容的更新事件,在收到更新调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同文件内容的分别同步更新。
74.文件删除模块:参照图5所示,通过fuse文件删除接口api,实现接口文件和目录的删除,通过接口命令的分发,将数据删除操作应用到后端挂载的三个异构文件系统中。目前删除操作包括文件、目录以及链接文件删除,具体过程如下:
75.1)文件删除
76.通过fuse中unlink接口监听文件删除事件,在收到文件删除调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同文件的同步删除。
77.2)目录删除
78.通过fuse中rmdir接口监听目录删除事件,在收到目录删除调用时,服务实现在dir1、dir2和dir3对应的三个文件系统下的相同目录的同步删除。
79.文件防篡改模块:参照图6所示,该模块在数据访问层面,实现了安全的文件读操作。在通过安全文件系统读取数据的时候,系统实现多个文件系统的数据副本的同步读取,并做安全检查。具体过程如下:
80.1)通过fuse中read接口监听数据读取事件。
81.2)在收到数据读取调用时,服务根据目标文件分别读取dir1、dir2和dir3异构文件系统中对应的文件内容,实现3个文件副本的读取。
82.3)服务对3个副本内容进行md5计算,并对3个计算结果进行验证,验证的结果包括以下几类:
83.a)三个副本md5一致,输出一个副本内容到安全接口,供外部读取。
84.b)两个副本md5一致,输出两个副本中的一个副本的内容到安全接口,供外部读取。同时,安全系统产生安全报警日志,将不一致的第三个副本进行修正。
85.c)三个副本都不一致,输出错误返回,安全系统产生安全报警日志,由后台用户审查进行修正。
86.4)安全接口返回数据内容和错误码。
87.文件防破坏模块:参照图7所示,该模块在数据访问层面,实现了安全的文件状态判断操作。在通过安全文件系统读取数据的时候,系统实现多个文件系统的文件状态查看,并做安全检查。具体过程如下:
88.1)通过fuse中read接口监听数据读取事件。
89.2)在收到数据读取调用时,服务根据目标文件分别查看dir1、dir2和dir3异构文件系统中对应的文件属性,包括对应文件名、文件权限和文件所有者。
90.3)服务对3个文件属性进行检查,检查的结果包括以下几类:
91.d)三个文件属性一致,进行文件防篡改检查。
92.e)两个文件属性一致,进行两个相同属性文件的防篡改检查。同时,安全系统产生安全报警日志,将不一致的第三个文件副本属性进行修正。
93.f)三个文件属性都不一致,输出错误返回,安全系统产生安全报警日志,由后台用户审查进行修正。
94.4)读取文件副本内容进行数据防篡改检查。
95.方案整体原理:
96.参照图8所示,本方案整体基于fuse的文件api接口,通过多个文件系统文件冗余,在文件创建、读写和删除过程中重新实现文件创建、文件属性和内容安全检查等文件操作。方案流程包括挂载客户端、监听文件操作接口、分发文件操作、文件操作裁决和文件修复反馈几个部分:
97.1)挂载客户端,方案继承fuse api文件接口,通过异构文件系统挂载,将客户端请求原样分发给所有处于活跃状态的多源异构文件系统。
98.2)监听文件操作接口,方案对文件操作客户端操作进行监听,接收所有fuse文件系统的文件操作发来的请求数据包。
99.3)分发文件操作,方案按照指定的分发策略对收到的请求数据包进分发,支持客户端过来的文件写、文件更新、文件读、文件删除等文件冗余操作。
100.4)文件操作裁决,方案在对文件操作发来的响应数据包进行裁决,按照指定的裁决策略对收到的数据内容进行裁决,将裁决结果返回给客户端。
101.5)文件修复,方案在裁决过程中实现内容防破坏、防篡改的安全日志报警,并实现异常内容的文件修复,将正常安全的数据内容返回给客户端。
102.本发明还提供了一种操作系统,该操作系统包括基于fuse文件接口的安全存储系统。
103.本发明实施例提供的一种基于fuse文件接口的安全存储系统及操作系统,可以有效防止文件被非法篡改,且有效防止文件被非法破坏;实现了安全的文件创建、删除、读取、写入等功能;能够支持多种异构形态的文件存储系统,可以对数据文件提供安全可靠的存储。
104.本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
105.以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本技术的实施例和实施例中的特征可以任意相互组合。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献