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

一种可排除文件的块级备份方法与流程

2022-10-22 00:21:53 来源:中国专利 TAG:


1.本技术涉及文件备份技术领域,特别是涉及一种可排除文件的块级备份方法。


背景技术:

2.数据备份是容灾的基础,为了防止系统出现故障等原因导致数据的丢失,将主机上的数据进行备份是必不可少的操作。文件级备份和块级备份都属于数据备份的一种方式,由于块级备份不再经过文件系统接口,而是直接读取磁盘,所以,在块级备份中,看到的不是文件,而是扇区,块级备份的速度也会更快,传统的块级备份,主要使用磁盘的快照设备进行备份,但是,当对一个磁盘设备进行快照设备创建的时候,只能对整个磁盘进行操作,无法选择某些文件进行快照创建或者排除某些文件。


技术实现要素:

3.本技术提供一种可排除文件的块级备份方法,以解决当对一个磁盘设备进行快照设备创建的时,只能对整个磁盘进行操作,无法选择排除某些文件的问题。
4.为解决上述技术问题,本技术采用的一个技术方案是:提供一种可排除文件的块级备份方法,包括:驱动程序获取源数据卷信息的请求队列,并根据请求队列增加块设备;
5.应用程序获取备份数据的bitmap信息,并将备份数据的bitmap信息加载到块设备;
6.驱动程序获取排除文件的请求,将排除文件标记为伪排除文件;
7.应用程序向驱动程序获取伪排除文件的bitmap信息,应用程序根据伪排除文件的bitmap信息与备份数据的bitmap信息进行位操作,生成不包含需要排除文件的备份数据的bitmap信息。
8.作为本技术的进一步改进,驱动程序获取源数据卷信息的请求队列,并根据请求队列增加块设备之前还包括:
9.应用程序获取源数据卷信息;
10.应用程序将源数据卷信息发送给驱动程序。
11.作为本技术的进一步改进,应用程序获取备份数据的bitmap信息,并将备份数据的bitmap信息加载到块设备具体包括:
12.应用程序获取备份数据的bitmap信息;
13.应用程序获取模拟快照设备的访问请求,根据访问请求将备份数据的bitmap信息加载到块设备。
14.作为本技术的进一步改进,应用程序获取备份数据的bitmap信息,并将备份数据的bitmap信息加载到块设备之后还包括:
15.块设备获取删除文件的请求,根据删除文件的请求在备份数据的bitmap中执行删除文件的操作。
16.作为本技术的进一步改进,驱动程序获取排除文件的请求,将排除文件标记为伪
排除文件之后还包括:
17.应用程序获取卸载快照设备的请求。
18.作为本技术的进一步改进,应用程序向驱动程序获取伪排除文件的bitmap信息,应用程序根据伪排除文件的bitmap信息与备份数据的bitmap信息进行位操作,生成不包含需要排除文件的备份数据的bitmap信息之后还包括:
19.应用程序根据备份数据的bitmap信息获取需要备份的数据块;
20.驱动程序获取读取需要备份的数据块的请求,将数据块发送至应用程序;
21.应用程序存储数据块。
22.作为本技术的进一步改进,应用程序获取源数据卷信息之前还包括:
23.在主机上启动运行应用程序,应用程序生成需要排除的文件绝对路径。
24.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种排除文件的块级备份装置,包括:获取模块,用于驱动程序获取源数据卷信息的请求队列,并根据请求队列增加块设备;
25.加载模块,用于应用程序获取备份数据的bitmap信息,并将备份数据的bitmap信息加载到块设备;
26.标记模块,用于驱动程序获取排除文件的请求,将排除文件标记为伪排除文件;
27.生成模块,用于应用程序向驱动程序获取伪排除文件的bitmap信息,应用程序根据伪排除文件的bitmap信息与备份数据的bitmap信息进行位操作,生成不包含需要排除文件的备份数据的bitmap信息。
28.为解决上述技术问题,本技术采用的再一个技术方案是:提供一种计算机设备,计算机设备包括处理器、与处理器耦接的存储器,存储器中存储有程序指令,程序指令被处理器执行时,使得处理器执行上述中任一项的可排除文件的块级备份方法的步骤。
29.为解决上述技术问题,本技术采用的再一个技术方案是:提供一种存储介质,存储有能够实现上述中任一项的可排除文件的块级备份方法的程序指令。
30.本技术的有益效果是:
31.一、本技术的可排除文件的块级备份方法通过添加一个块设备进行模拟快照设备,访问快照设备伪删除要排除的文件,得到不包含需要排除的文件的备份数据的bitmap,使用bitmap里记录的信息读取备份数据,来达到排除文件的效果。
32.二、本技术在保证块级备份速度快的情况下,能够灵活地进行文件级别的排除操作,解决了当对一个磁盘设备进行快照设备创建时,只能对整个磁盘进行操作,无法选择排除某些文件的问题,可以选择某些文件进行快照创建。
附图说明
33.图1是本发明实施例的可排除文件的块级备份方法的流程示意图;
34.图2是本发明实施例的排除文件的块级备份装置的功能模块示意图;
35.图3是本发明实施例的计算机设备的结构示意图;
36.图4是本发明实施例的存储介质的结构示意图。
具体实施方式
37.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
38.本技术中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、“第三”的特征可以明示或者隐含地包括至少一个该特征。本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。本技术实施例中所有方向性指示(诸如上、下、左、右、前、后
……
)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
39.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
40.图1是本发明实施例的可排除文件的块级备份方法的流程示意图。需注意的是,若有实质上相同的结果,本技术的方法并不以图1所示的流程顺序为限。如图1所示其包括:
41.步骤s1、驱动程序获取源数据卷信息的请求队列,并根据请求队列增加块设备。
42.具体地,驱动程序接管源数据卷的请求队列,根据请求队列在通用层上添加一个块设备,以源数据卷的扇区长度为参数设置块设备的容量,以源数据卷的扇区范围为参数设置块设备的范围,这个新增加的块设备用来模拟快照设备,解冻源数据卷。
43.进一步地,步骤s1、驱动程序获取源数据卷信息的请求队列,并根据请求队列增加块设备之前还包括:
44.步骤s01、应用程序获取源数据卷信息。
45.具体地,应用程序通过读取/etc/mtab,/etc/fstab文件,可以得到系统中的设备信息,根据设备类型可以获取需要进行备份的源数据卷信息。使用文件系统提供的接口,用只读方式打开需要进行备份的源数据卷信息,使用ioctl访问需要进行备份的源数据卷,获取需要进行备份的源数据卷的扇区范围大小。
46.步骤s02、应用程序将源数据卷信息发送给驱动程序。
47.具体地,系统使用ioctl应用程序与驱动程序进行交互,由应用程序将源数据卷信息发送给驱动程序。驱动程序接收到源数据卷信息后,冻结源数据卷,此时,所有对源数据卷的块设备的输入/输出都暂时被系统缓存。
48.进一步地,步骤s01、应用程序获取源数据卷信息之前还包括:
49.步骤s011、在主机上启动运行应用程序,应用程序生成需要排除的文件绝对路径。
50.具体地,在主机上安装运行驱动程序及应用程序,启动运行应用程序,数据备份开
始前,应用程序提供需要要排除的文件绝对路径。
51.步骤s2、应用程序获取备份数据的bitmap信息,并将备份数据的bitmap信息加载到块设备。
52.需要说明的是,bitmap为用来记录数据块使用情况的一种数据结构。
53.具体地,应用程序获取备份数据的bitmap信息,节省本地磁盘空间,同时将备份数据的bitmap信息加载到块设备。
54.进一步地,步骤s2、应用程序获取备份数据的bitmap信息,并将备份数据的bitmap信息加载到块设备具体包括:
55.步骤s21、应用程序获取备份数据的bitmap信息。
56.具体地,应用程序开始获取备份数据的bitmap,使用文件系统提供的系统接口,获取磁盘的free block,通过free block信息,可以获取哪些块上有数据,哪些块上没数据,也就是备份数据的bitmap。
57.步骤s22、应用程序获取模拟快照设备的访问请求,根据访问请求将备份数据的bitmap信息加载到块设备。
58.具体地,应用程序访问模拟快照设备,根据访问请求将备份数据的bitmap信息加载到新创建的块设备上,可以在文件系统层面上访问块设备,方便操作。
59.进一步地,步骤s2、应用程序获取备份数据的bitmap信息,并将备份数据的bitmap信息加载到块设备之后还包括:
60.步骤s21、块设备获取删除文件的请求,根据删除文件的请求在备份数据的bitmap中执行删除文件的操作。
61.具体地,将要排除的文件,以删除文件的形式通知给块设备,块设备获取删除文件的请求,根据删除文件的请求在备份数据的bitmap中执行删除文件的操作,也就是说,在块设备的加载点上,执行删除文件的操作。
62.步骤s3、驱动程序获取排除文件的请求,将排除文件标记为伪排除文件。
63.具体地,驱动程序接收到删除文件的请求后,通过块设备的输入/输出获取这部分数据所在扇区的信息,将排除文件标记为伪排除文件,之后驱动程序丢弃这个删除请求,不做真正的删除操作。
64.进一步地,步骤s3、驱动程序获取排除文件的请求,将排除文件标记为伪排除文件之后还包括:
65.步骤s31、应用程序获取卸载快照设备的请求。
66.具体地,应用程序获取卸载快照设备的请求,执行卸载快照设备命令,不再通过文件系统层面访问块设备。
67.步骤s4、应用程序向驱动程序获取伪排除文件的bitmap信息,应用程序根据伪排除文件的bitmap信息与备份数据的bitmap信息进行位操作,生成不包含需要排除文件的备份数据的bitmap信息。
68.具体地,应用程序通过ioctl与驱动程序交互,向驱动程序请求伪排除文件的bitmap信息,驱动程序将伪排除文件的bitmap信息返回给应用程序,应用程序将这部分bitmap与备份数据的bitmap进行位操作,将伪排除文件的bitmap从备份数据的bitmap中去除,,生成不包含需要排除文件的备份数据的bitmap信息,此时的bitmap信息就不再包含要
排除文件的数据信息。
69.进一步地,步骤s4、应用程序向驱动程序获取伪排除文件的bitmap信息,应用程序根据伪排除文件的bitmap信息与备份数据的bitmap信息进行位操作,生成不包含需要排除文件的备份数据的bitmap信息之后还包括:
70.步骤s41、应用程序根据备份数据的bitmap信息获取需要备份的数据块;
71.具体地,备份开始运行,应用程序根据备份数据的bitmap信息可以快速的获取需要备份的数据块,以读的方式访问块设备,根据bitmap信息指定读取数据的偏移量与大小。
72.步骤s42、驱动程序获取读取需要备份的数据块的请求,将数据块发送至应用程序;
73.具体地,驱动程序接收到读数据请求,处理这个块设备的输入/输出,将备份数据返回给应用程序。
74.步骤s43、应用程序存储数据块。
75.具体地,应用程序读取到备份数据,将备份数据存储到存储介质中,当备份结束后,删除快照设备,应用程序退出,应用程序备份速度快,使用灵活。
76.本发明实施例的可排除文件的块级备份方法通过添加一个块设备进行模拟快照设备,访问快照设备伪删除要排除的文件,得到不包含需要排除的文件的备份数据的bitmap,使用bitmap里记录的信息读取备份数据,来达到排除文件的效果。其在保证块级备份速度快的情况下,能够灵活地进行文件级别的排除操作,解决了当对一个磁盘设备进行快照设备创建的时,只能对整个磁盘进行操作,无法选择排除某些文件的问题。备份开始前,提供要排除的文件的绝对路径,安装运行驱动程序,创建块设备,再排除文件,然后备份开始,读取备份数据,将备份数据写入到存储介质中,整个备份过程全部完成。
77.图2是本技术实施例的排除文件的块级备份装置的功能模块示意图。如图2所示,该排除文件的块级备份装置2包括获取模块21、加载模块22、标记模块23、生成模块24。
78.获取模块21,用于驱动程序获取源数据卷信息的请求队列,并根据请求队列增加块设备;
79.加载模块22,用于应用程序获取备份数据的bitmap信息,并将备份数据的bitmap信息加载到块设备;
80.标记模块23,用于驱动程序获取排除文件的请求,将排除文件标记为伪排除文件;
81.生成模块24,用于应用程序向驱动程序获取伪排除文件的bitmap信息,应用程序根据伪排除文件的bitmap信息与备份数据的bitmap信息进行位操作,生成不包含需要排除文件的备份数据的bitmap信息。
82.可选地,获取模块21执行驱动程序获取源数据卷信息的请求队列,并根据请求队列增加块设备的操作之前还包括:
83.应用程序获取源数据卷信息;
84.应用程序将源数据卷信息发送给驱动程序。
85.可选地,获取模块21执行应用程序获取备份数据的bitmap信息,并将备份数据的bitmap信息加载到块设备的操作具体包括:
86.应用程序获取备份数据的bitmap信息;
87.应用程序获取模拟快照设备的访问请求,根据访问请求将备份数据的bitmap信息
加载到块设备。
88.可选地,加载模块22执行应用程序获取备份数据的bitmap信息,并将备份数据的bitmap信息加载到块设备的操作之后还包括:
89.块设备获取删除文件的请求,根据删除文件的请求在备份数据的bitmap中执行删除文件的操作。
90.可选地,标记模块23执行驱动程序获取排除文件的请求,将排除文件标记为伪排除文件的操作之后还包括:
91.应用程序获取卸载快照设备的请求。
92.可选地,生成模块24执行应用程序向驱动程序获取伪排除文件的bitmap信息,应用程序根据伪排除文件的bitmap信息与备份数据的bitmap信息进行位操作,生成不包含需要排除文件的备份数据的bitmap信息的操作之后还包括:
93.应用程序根据备份数据的bitmap信息获取需要备份的数据块;
94.驱动程序获取读取需要备份的数据块的请求,将数据块发送至应用程序;
95.应用程序存储数据块。
96.可选地,应用程序获取源数据卷信息之前还包括:
97.在主机上启动运行应用程序,应用程序生成需要排除的文件绝对路径。
98.关于上述实施例排除文件的块级备份装置中各模块实现技术方案的其他细节,可参见上述实施例中的可排除文件的块级备份方法中的描述,此处不再赘述。
99.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
100.请参阅图3,图3为本技术实施例的计算机设备的结构示意图。如图3所示,该计算机设备30包括处理器31及和处理器31耦接的存储器32。
101.存储器32存储有程序指令,程序指令被处理器31执行时,使得处理器31执行上述实施例中的可排除文件的块级备份方法的步骤。
102.其中,处理器31还可以称为cpu(central processing unit,中央处理单元)。处理器31可能是一种集成电路芯片,具有信号的处理能力。处理器31还可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
103.参阅图4,图4为本技术实施例的存储介质的结构示意图。本技术实施例的存储介质存储有能够实现上述所有方法的程序指令41,其中,该程序指令41可以以软件产品的形式存储在上述存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等计算机设备。服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名
服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
104.在本技术所提供的几个实施例中,应该理解到,所揭露的终端,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
105.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。以上仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献