一种文件夹恢复的方法和设备与流程

文档序号:22400993发布日期:2020-09-29 18:21阅读:2453来源:国知局
一种文件夹恢复的方法和设备与流程

本领域涉及计算机领域,并且更具体地涉及一种文件夹恢复的方法和设备。



背景技术:

在计算机操作系统中,对系统的关键位置进行文件系统的保护是必不可少的。如果文件因为磁盘损坏,或者用户误操作,系统漏洞被侵入等原因造成的文件损坏或丢失。可能会带来灾难性的后果。传统的操作系统备份文件的方式为系统快照,但是系统快照是对整个磁盘进行备份,当一些不重要的文件频繁发生变动时,会对系统造成不必要的开销。



技术实现要素:

有鉴于此,本发明实施例的目的在于提出一种文件夹恢复的方法和设备,通过使用本发明的方法,能够使得操作系统在系统关键位置执行备份与恢复时,降低系统的开销,同时能够将系统的关键文件给予备份与恢复的保护,能够有效的降低文件系统的io压力,有效的提升了系统的稳定性与健壮性。

基于上述目的,本发明的实施例的一个方面提供了一种文件夹恢复的方法,包括以下步骤:

记录文件夹中的文件的inode(索引节点)信息;

每间隔阈值时间监控inode信息是否发生变化;

响应于inode信息发生变化,将inode信息发生变化前的文件和变化后的文件进行存储以形成文件变化记录;

响应于接收到将文件进行恢复的指令,在变化记录中选择相应的文件进行恢复。

根据本发明的一个实施例,记录文件夹中的文件的inode信息包括:

遍历文件夹下树形结构的全部inode信息;

将全部inode信息进行存储或者将符合文件名规则的文件的inode信息进行存储。

根据本发明的一个实施例,每间隔阈值时间监控inode信息是否发生变化包括:

在配置文件中设定阈值时间;

系统读取配置文件,并按阈值时间循环获取文件夹中的文件的inode信息并与记录的inode信息进行对比;

响应于对比的结果为两者不一致,判断inode信息发生变化。

根据本发明的一个实施例,响应于接收到将文件进行恢复的指令,在变化记录中选择相应的文件进行恢复包括:

查找变化记录中的文件的历史文件;

在历史文件中选择相应的文件将文件夹中的文件进行替换;

将文件替换的信息记录到变化记录中。

根据本发明的一个实施例,还包括:

响应于变化记录大于容量阈值,按预设规则将变化记录进行清理。

本发明的实施例的另一个方面,还提供了一种文件夹恢复的设备,设备包括:

记录模块,记录模块配置为记录文件夹中的文件的inode信息;

监控模块,监控模块配置为每间隔阈值时间监控inode信息是否发生变化;

存储模块,存储模块配置为响应于inode信息发生变化,将inode信息发生变化前的文件和变化后的文件进行存储以形成文件变化记录;

恢复模块,恢复模块配置为响应于接收到将文件进行恢复的指令,在变化记录中选择相应的文件进行恢复。

根据本发明的一个实施例,记录模块还配置为:

遍历文件夹下树形结构的全部inode信息;

将全部inode信息进行存储或者将符合文件名规则的文件的inode信息进行存储。

根据本发明的一个实施例,监控模块还配置为:

在配置文件中设定阈值时间;

系统读取配置文件,并按阈值时间循环获取文件夹中的文件的inode信息并与记录的inode信息进行对比;

响应于对比的结果为两者不一致,判断inode信息发生变化。

根据本发明的一个实施例,恢复模块还配置为:

查找变化记录中的文件的历史文件;

在历史文件中选择相应的文件将文件夹中的文件进行替换;

将文件替换的信息记录到变化记录中。

根据本发明的一个实施例,还包括清理模块,清理模块配置为响应于变化记录大于容量阈值,按预设规则将变化记录进行清理。

本发明具有以下有益技术效果:本发明实施例提供的文件夹恢复的方法,通过记录文件夹中的文件的inode信息;每间隔阈值时间监控inode信息是否发生变化;响应于inode信息发生变化,将inode信息发生变化前的文件和变化后的文件进行存储以形成文件变化记录;响应于接收到将文件进行恢复的指令,在变化记录中选择相应的文件进行恢复的技术方案,能够使得操作系统在系统关键位置执行备份与恢复时,降低系统的开销,同时能够将系统的关键文件给予备份与恢复的保护,能够有效的降低文件系统的io压力,有效的提升了系统的稳定性与健壮性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。

图1为根据本发明一个实施例的文件夹恢复的方法的示意性流程图;

图2为根据本发明一个实施例的文件夹恢复的设备的示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。

基于上述目的,本发明的实施例的第一个方面,提出了一种文件夹恢复的方法的一个实施例。图1示出的是该方法的示意性流程图。

如图1中所示,该方法可以包括以下步骤:

s1记录文件夹中的文件的inode信息,使用记录的inode信息进行文件夹的备份与恢复而不是全部磁盘的备份,可以自定义需要保护的文件夹,如果直接恢复可以恢复指定文件夹;

s2每间隔阈值时间监控inode信息是否发生变化;

s3响应于inode信息发生变化,将inode信息发生变化前的文件和变化后的文件进行存储以形成文件变化记录,如果发生系统断电或者系统关机重启,在系统再次启动后,会根据记录的断点继续进行记录工作,可以支持配置定时任务,系统可以通过间隔时间来定时进行更新记录,定时任务的最小设置单位可以为分钟,存储方式为二进制存储,不关心文件的具体格式,因此可以对二进制文件,文本文件,压缩文件等任意形式的文件进行存储;

s4响应于接收到将文件进行恢复的指令,在变化记录中选择相应的文件进行恢复。

本发明提出的技术方案在系统初次运行时会记录被保护文件的全部inode信息。当系统的被保护文件夹发生文件变动时,通过对被保护文件夹的变动进行监听,来记录文件夹的变动,形成文件夹快照。当被保护的文件夹发生变动时,变动的部分会进行存储。当需要执行文件夹恢复操作时,通过查询存储的变动记录,就可以对文件夹进行历史修复。

通过本发明的技术方案,能够使得操作系统在系统关键位置执行备份与恢复时,降低系统的开销,同时能够将系统的关键文件给予备份与恢复的保护,能够有效的降低文件系统的io压力,有效的提升了系统的稳定性与健壮性。

在本发明的一个优选实施例中,记录文件夹中的文件的inode信息包括:

遍历文件夹下树形结构的全部inode信息;

将全部inode信息进行存储或者将符合文件名规则的文件的inode信息进行存储。

用户选定需要保护的文件夹后执行备份初始化操作,用户可以选择全部记录或者按文件名规则记录,如果选择全部记录,会深度优先遍历文件夹下树形结构的全部inode信息进行记录,如果选择文件名规则记录,此时会将文件夹下符合文件名规则的文件的inode信息进行记录。

在本发明的一个优选实施例中,每间隔阈值时间监控inode信息是否发生变化包括:

在配置文件中设定阈值时间;

系统读取配置文件,并按阈值时间循环获取文件夹中的文件的inode信息并与记录的inode信息进行对比;

响应于对比的结果为两者不一致,判断inode信息发生变化。

系统会按照自定义的间隔时间遍历被保护的文件夹,查看是否有文件inode发生变化。该自定的时间间隔由配置文件进行配置。系统每次启动时,将读取该配置文件,确定配置的时间间隔,并按照时间间隔进行定时遍历。如果发生变化,自动进行记录。另外的监控方法是监听linux内核的inotify接口(允许监控程序打开一个独立文件描述符,并针对事件集监控一个或者多个文件,例如打开、关闭、移动/重命名、删除、创建或者改变属性),根据inotify事件的类型进行区分,如果是linux被保护的文件内容发生变化,则将变化数据传递给系统执行相关的记录,如果不是被保护的文件发生变化,则丢弃事件等待下一个事件。通过inotify接口对文件夹的文件内容变化进行监听,只有文件的内容发生写入操作时,才会记录下变化的信息,当文件发生写入操作,将文件的原始内容进行存储。这两种方法都能定时遍历,都会记录被保护文件夹内文件发生的变化。

在本发明的一个优选实施例中,响应于接收到将文件进行恢复的指令,在变化记录中选择相应的文件进行恢复包括:

查找变化记录中的文件的历史文件;

在历史文件中选择相应的文件将文件夹中的文件进行替换;

将文件替换的信息记录到变化记录中。

当用户需要对历史文件进行恢复时,首先查找目前存储的历史文件。并选择需要恢复的文件进行恢复,使用历史文件对被保护的文件进行替换或者新增。同时对恢复的操作进行记录,将恢复信息记录为一个文件的变化记录。

在本发明的一个优选实施例中,还包括:

响应于变化记录大于容量阈值,按预设规则将变化记录进行清理。

当存储数据量较大或存储文件过多时,删除装置会根据用户配置的历史文件清理规则来自动对存储的文件进行清理和删除工作。可以配置的清理规则可以有:

a)只保留最新:即为只存储一份最新的文件历史,如果有多份历史存储文件,则将最新的保留,其他的历史文件删除。

b)按数量备份:即为可以指定历史文件存储的数量,超过这个数量即将较老的文件执行删除。

c)按时间备份:适用于有时效性的备份,当存储装置的存储时间已经超过设定的清理时间,则对文件进行清理,无论是否有其他的存储。

d)不自动清理:不配置自动清理规则,所有历史文件将被记录,只能手动清理。

通过本发明的技术方案,能够使得操作系统在系统关键位置执行备份与恢复时,降低系统的开销,同时能够将系统的关键文件给予备份与恢复的保护,能够有效的降低文件系统的io压力,有效的提升了系统的稳定性与健壮性。

需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,上述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中存储介质可为磁碟、光盘、只读存储器(read-onlymemory,rom)或随机存取存储器(randomaccessmemory,ram)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。

此外,根据本发明实施例公开的方法还可以被实现为由cpu执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被cpu执行时,执行本发明实施例公开的方法中限定的上述功能。

基于上述目的,本发明的实施例的第二个方面,提出了一种文件夹恢复的设备,如图2所示,设备200包括:

记录模块,记录模块配置为记录文件夹中的文件的inode信息;

监控模块,监控模块配置为每间隔阈值时间监控inode信息是否发生变化;

存储模块,存储模块配置为响应于inode信息发生变化,将inode信息发生变化前的文件和变化后的文件进行存储以形成文件变化记录;

恢复模块,恢复模块配置为响应于接收到将文件进行恢复的指令,在变化记录中选择相应的文件进行恢复。

在本发明的一个优选实施例中,记录模块还配置为:

遍历文件夹下树形结构的全部inode信息;

将全部inode信息进行存储或者将符合文件名规则的文件的inode信息进行存储。

在本发明的一个优选实施例中,监控模块还配置为:

在配置文件中设定阈值时间;

系统读取配置文件,并按阈值时间循环获取文件夹中的文件的inode信息并与记录的inode信息进行对比;

响应于对比的结果为两者不一致,判断inode信息发生变化。

在本发明的一个优选实施例中,恢复模块还配置为:

查找变化记录中的文件的历史文件;

在历史文件中选择相应的文件将文件夹中的文件进行替换;

将文件替换的信息记录到变化记录中。

在本发明的一个优选实施例中,还包括清理模块,清理模块配置为响应于变化记录大于容量阈值,按预设规则将变化记录进行清理。

需要特别指出的是,上述设备的实施例采用了上述方法的实施例来具体说明各模块的工作过程,本领域技术人员能够很容易想到,将这些模块应用到上述方法的其他实施例中。

此外,上述方法步骤以及设备单元或模块也可以利用控制器以及用于存储使得控制器实现上述步骤或单元或模块功能的计算机程序的计算机可读存储介质实现。

本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。

上述实施例,特别是任何“优选”实施例是实现的可能示例,并且仅为了清楚地理解本发明的原理而提出。可以在不脱离本文所描述的技术的精神和原理的情况下对上述实施例进行许多变化和修改。所有修改旨在被包括在本公开的范围内并且由所附权利要求保护。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1