配置文件定时备份的测试方法、系统、设备和存储介质与流程

文档序号:32617427发布日期:2022-12-20 21:45阅读:48来源:国知局
配置文件定时备份的测试方法、系统、设备和存储介质与流程

1.本发明属于分布式系统文件备份技术领域,特别涉及配置文件定时备份的测试方法、系统、设备和存储介质。


背景技术:

2.分布式文件系统(distributed file system)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。分布式系统在it企业、云计算、大数据、虚拟化等领域得到了广泛应用。与此同时这些领域对数据的安全性也要求越来越高,尤其是重要的配置文件的备份。分布式存储系统为了保证系统能按照既定规则运行,往往需要大量的配置文件来组建起系统的脉络,配置文件中的任何一项出现错误,都可能导致难以预料的严重后果。
3.为了确保配置文件在被错误修改后,可以及时恢复系统的各项配置参数,并记录错误配置信息,以便后续尽量减少造成的损失,进行配置文件的定时备份便显得尤为重要。此举将极大地增强系统的安全性,增加分布式系统产品的竞争力。现有的备份方式有磁盘备份、虚拟机备份、多副本等,它们拥有响应快、可用性高等优点,但是随着数据量增加,备份会出现时间长、备份数据重复、多副本同步慢、备份存储成本高等问题越来越突出。


技术实现要素:

4.为了解决上述技术问题,本发明提出了配置文件定时备份的测试方法、系统、设备和存储介质,极大地增强系统的安全性,增加分布式系统产品的竞争力。
5.为实现上述目的,本发明采用以下技术方案:
6.配置文件定时备份的测试方法,包括以下步骤:
7.将待备份的原始配置文件中的任一子配置文件进行备份,以及将子配置文件的定时任务文件和子配置文件的脚本文件进行备份;
8.清理原始配置文件的目标地址,以及从所述原始配置文件删除掉所述子配置文件得到第二待备份文件;
9.通过脚本文件和定时任务文件,备份第二待备份文件至目标地址得到备份后文件;然后校验备份后文件是否包含子配置文件,如果包含子配置文件,则备份失败;如果不包含子配置文件,则备份成功。
10.进一步的,所述方法还包括将所述备份后文件重命名,添加所述子配置文件,恢复出子配置文件、子配置文件的定时任务文件和子配置文件的脚本文件。
11.进一步的,所述清理原始配置文件的目标地址的过程包括:双重校验原始配置文件的目标地址是否存在其他文件,如果不存在,则直接通过;如果存在,则清理原始配置文件的目标地址。
12.进一步的,所述通过脚本文件和定时任务文件,备份第二待备份文件至目标地址得到备份后文件的过程包括:开启所述脚本文件,以及设置定时任务文件的时间,执行备份
第二待备份文件至目标地址得到备份后文件。
13.进一步的,所述方法还包括:间隔预设时间循环查看所述目标地址中是否得到备份后文件,如果已经得到备份后文件,则跳出循环。
14.进一步的,所述跳出循环之后:
15.根据备份后文件的路径得到备份后文件的压缩文件名;
16.一次解压所述压缩文件名进行所有压缩文件名的字符串;
17.将所述字符串转化为列表,再将所述列表转化为集合。
18.进一步的,所述校验备份后文件是否包含子配置文件的过程为:使用assert语句校验所述集合中是否包含子配置文件。
19.本发明还提出了配置文件定时备份的测试系统,所述系统包括:第一备份模块、清理模块和校验模块;
20.所述第一备份模块用于将待备份的原始配置文件中的任一子配置文件进行备份,以及将子配置文件的定时任务文件和子配置文件的脚本文件进行备份;
21.所述清理模块用于清理原始配置文件的目标地址,以及从所述原始配置文件删除掉所述子配置文件得到第二待备份文件;
22.所述检验模块用于通过脚本文件和定时任务文件,备份第二待备份文件至目标地址得到备份后文件;然后校验备份后文件是否包含子配置文件,如果包含子配置文件,则备份失败;如果不包含子配置文件,则备份成功。
23.本发明还提出了一种设备,包括:
24.存储器,用于存储计算机程序;
25.处理器,用于执行所述计算机程序时实现所述的方法步骤。
26.本发明还提出了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述的方法步骤。
27.发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:
28.本发明提出了配置文件定时备份的测试方法、系统、设备和存储介质,该方法包括以下步骤:将待备份的原始配置文件中的任一子配置文件进行备份,以及将子配置文件的定时任务文件和子配置文件的脚本文件进行备份;清理原始配置文件的目标地址,以及从所述原始配置文件删除掉子配置文件得到第二待备份文件;通过脚本文件和定时任务文件,备份第二待备份文件至目标地址得到备份后文件;然后校验备份后文件是否包含子配置文件,如果包含子配置文件,则备份失败;如果不包含子配置文件,则备份成功。基于配置文件定时备份的测试方法,还提出了配置文件定时备份的测试系统、设备和存储介质。本发明通过在配置文件备份时,删除掉任一子配置文件再进行备份,验证备份后文件是否包含子配置文件。能够确保配置文件在被错误修改后,可以及时恢复系统的各项配置参数,并记录错误配置信息,以便后续尽量减少造成的损失,极大地增强系统的安全性,增加分布式系统产品的竞争力。
附图说明
29.如图1为本发明实施例1配置文件定时备份的测试方法流程图;
30.如图2为本发明实施例2配置文件定时备份的测试系统示意图;
31.如图3为本发明实施例3一种设备的连接示意图。
具体实施方式
32.为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
33.实施例1
34.本发明实施例1提出了配置文件定时备份的测试方法,随着社会的发展,数据的安全性要求越来越高,尤其是重要的配置文件的备份。分布式存储系统为了保证系统能按照既定规则运行,往往需要大量的配置文件来组建起系统的脉络,配置文件中的任何一项出现错误,都可能导致难以预料的严重后果。
35.该测试方法具体包括:将待备份的原始配置文件中的任一子配置文件进行备份,以及将子配置文件的定时任务文件和子配置文件的脚本文件进行备份;
36.清理原始配置文件的目标地址,以及从所述原始配置文件删除掉所述子配置文件得到第二待备份文件;
37.通过脚本文件和定时任务文件,备份第二待备份文件至目标地址得到备份后文件;然后校验备份后文件是否包含子配置文件,如果包含子配置文件,则备份失败;如果不包含子配置文件,则备份成功。
38.以及将备份后文件重命名,添加所述子配置文件,恢复出子配置文件、子配置文件的定时任务文件和子配置文件的脚本文件。
39.其中icfs(inspur cloud file storage)文件,为浪潮云文件存储提供基于分布式系统的文件存储服务,可通过标准的nfs等协议挂载文件系统,并使用标准的posix接口对文件系统进行访问,多计算节点可挂载同一文件系统,共享文件和目录
40.如图1为本发明实施例1配置文件定时备份的测试方法流程图;
41.在步骤s100中,将待备份的原始配置文件中的任一子配置文件进行备份,以及将子配置文件的定时任务文件和子配置文件的脚本文件进行备份。其中子配置文件为/etc/icfs/icfs.conf。使用cp_cmd()提前子配置文件/etc/icfs/icfs.conf备份为icfs_bak.conf,同样的方法再进行icfs定时任务文件/var/spool/cron/icfs的备份、脚本文件/usr/bin/back_up_config.sh的备份。
42.本技术中子配置文件选择icfs文件,本发明保护的范围不局限于icfs文件,本领域人员可以根据实际情况选择配置文件中的其他子配置文件。本发明实施例1是以icfs文件作为示例说明。
43.在步骤s110中,清理原始配置文件的目标地址,以确保有良好的测试环境。从所述原始配置文件删除掉子配置文件得到第二待备份文件;
44.双重校验原始配置文件的目标地址是否存在其他文件,如果不存在,则直接通过;
如果存在,则清理原始配置文件的目标地址。
45.集群节点连接后,使用cd_cmd(“/var/log/dump_config”,expect_result=”no such file or directory”,expect_code=1)双重校验原始配置文件的目标地址是否存在,如果不存在直接pass,如果存在,节点通过rm_cmd()删除备份文件整个目录。同时使用rm_cmd()删除配置文件中的icfs.conf文件。
46.在步骤s120中,通过脚本文件和定时任务文件,备份第二待备份文件至目标地址得到备份后文件;
47.开启所述脚本文件,以及设置定时任务文件的时间,执行备份第二待备份文件至目标地址得到备份后文件。
48.首先节点使用sed_cmd()命令修改脚本文件back_up_config.sh中的开关配置,off改为on。然后同样的命令修改icfs的定时任务文件icfs,添加*****/usr/bin/back_up_config.sh all到第一行,添加配置文件定时备份任务,每分钟执行一次。
49.在步骤s130中,校验备份后文件是否包含子配置文件,如果包含子配置文件,则备份失败;如果不包含子配置文件,则备份成功。
50.间隔预设时间循环查看所述目标地址中是否得到备份后文件,如果已经得到备份后文件,则跳出循环。
51.跳出循环之后:根据备份后文件的路径得到备份后文件的压缩文件名;一次解压所述压缩文件名进行所有压缩文件名的字符串;将所述字符串转化为列表,再将所述列表转化为集合。
52.由于不确定备份后文件产生的时间,使用while循环,每隔1秒执行ls_cmd()查看/var/log/dump_config下的文件个数是否为1,一旦为1便跳出循环,开始文件的查验工作。首先处理ls_cmd()配置文件路径得到的压缩文件名,调用replace函数去掉后缀得到解压后的一级目录名。执行tar_cmd(),-c指定解压后的文件路径。接下来进行解压得到的所有文件名的数据处理,使用ls_cmd(),参数是解压得到的目录,得到含有所有文件名的字符串,使用split()方法转化为列表,考虑到列表是有序的,而集合是无序的,集合更易于对比所有的文件名是否符合要求,故使用set()方法将列表转化为集合。最后使用assert语句校验结果是否为特定的集合即可判断配置文件备份的最终结果是否正确,最终结果应该为除删除的icfs.conf之外所有的配置文件。
53.在步骤s140中,将备份后文件重命名,添加所述子配置文件,恢复出子配置文件、子配置文件的定时任务文件和子配置文件的脚本文件。
54.恢复文件均使用mv_cmd(),参数为-f,强制将之前cp出来的备份文件重命名为原文件名,以达到恢复的效果。所需恢复的文件分别是/etc/icfs/icfs.conf、/usr/bin/back_up_config.sh、/var/spool/cron/icfs。至此整个验证流程结束,通过该流程确定了配置文件定时备份程序执行结果的正确性,为分布式存储系统的安全性打下了基础。
55.本发明实施例1提出的配置文件定时备份的测试方法,通过在配置文件备份时,删除掉任一子配置文件再进行备份,验证备份后文件是否包含子配置文件。能够确保配置文件在被错误修改后,可以及时恢复系统的各项配置参数,并记录错误配置信息,以便后续尽量减少造成的损失,极大地增强系统的安全性,增加分布式系统产品的竞争力。
56.实施例2
57.基于本发明实施例1提出的配置文件定时备份的测试方法,本发明实施例2还提出了配置文件定时备份的测试系统,如图2为本发明实施例2配置文件定时备份的测试系统示意图;第一备份模块、清理模块和校验模块;
58.第一备份模块用于将待备份的原始配置文件中的任一子配置文件进行备份,以及将子配置文件的定时任务文件和子配置文件的脚本文件进行备份;
59.清理模块用于清理原始配置文件的目标地址,以及从所述原始配置文件删除掉所述子配置文件得到第二待备份文件;
60.检验模块用于通过脚本文件和定时任务文件,备份第二待备份文件至目标地址得到备份后文件;然后校验备份后文件是否包含子配置文件,如果包含子配置文件,则备份失败;如果不包含子配置文件,则备份成功。
61.该系统还包括恢复模块,其中恢复模块中的过程包括:将备份后文件重命名,添加所述子配置文件,恢复出子配置文件、子配置文件的定时任务文件和子配置文件的脚本文件。
62.其中第一备份模块执行的过程中:子配置文件为/etc/icfs/icfs.conf。使用cp_cmd()提前子配置文件/etc/icfs/icfs.conf备份为icfs_bak.conf,同样的方法再进行icfs定时任务文件/var/spool/cron/icfs的备份、脚本文件/usr/bin/back_up_config.sh的备份。
63.清理模块执行的过程包括:开启所述脚本文件,以及设置定时任务文件的时间,执行备份第二待备份文件至目标地址得到备份后文件。
64.双重校验原始配置文件的目标地址是否存在其他文件,如果不存在,则直接通过;如果存在,则清理原始配置文件的目标地址。
65.集群节点连接后,使用cd_cmd(“/var/log/dump_config”,expect_result=”no such file or directory”,expect_code=1)双重校验原始配置文件的目标地址是否存在,如果不存在直接pass,如果存在,节点通过rm_cmd()删除备份文件整个目录。同时使用rm_cmd()删除配置文件中的icfs.conf文件。
66.检验模块执行的过程包括:。
67.通过脚本文件和定时任务文件,备份第二待备份文件至目标地址得到备份后文件;
68.开启所述脚本文件,以及设置定时任务文件的时间,执行备份第二待备份文件至目标地址得到备份后文件。
69.首先节点使用sed_cmd()命令修改脚本文件back_up_config.sh中的开关配置,off改为on。然后同样的命令修改icfs的定时任务文件icfs,添加*****/usr/bin/back_up_config.sh all到第一行,添加配置文件定时备份任务,每分钟执行一次。
70.间隔预设时间循环查看所述目标地址中是否得到备份后文件,如果已经得到备份后文件,则跳出循环。
71.跳出循环之后:根据备份后文件的路径得到备份后文件的压缩文件名;一次解压所述压缩文件名进行所有压缩文件名的字符串;将所述字符串转化为列表,再将所述列表转化为集合。
72.由于不确定备份后文件产生的时间,使用while循环,每隔1秒执行ls_cmd()查看/
var/log/dump_config下的文件个数是否为1,一旦为1便跳出循环,开始文件的查验工作。首先处理ls_cmd()配置文件路径得到的压缩文件名,调用replace函数去掉后缀得到解压后的一级目录名。执行tar_cmd(),-c指定解压后的文件路径。接下来进行解压得到的所有文件名的数据处理,使用ls_cmd(),参数是解压得到的目录,得到含有所有文件名的字符串,使用split()方法转化为列表,考虑到列表是有序的,而集合是无序的,集合更易于对比所有的文件名是否符合要求,故使用set()方法将列表转化为集合。最后使用assert语句校验结果是否为特定的集合即可判断配置文件备份的最终结果是否正确,最终结果应该为除删除的icfs.conf之外所有的配置文件。
73.获取模块执行的详细过程包括:恢复文件均使用mv_cmd(),参数为-f,强制将之前cp出来的备份文件重命名为原文件名,以达到恢复的效果。所需恢复的文件分别是/etc/icfs/icfs.conf、/usr/bin/back_up_config.sh、/var/spool/cron/icfs。至此整个验证流程结束,通过该流程确定了配置文件定时备份程序执行结果的正确性,为分布式存储系统的安全性打下了基础。
74.本发明实施例2提出的配置文件定时备份的测试系统,通过在配置文件备份时,删除掉任一子配置文件再进行备份,验证备份后文件是否包含子配置文件。能够确保配置文件在被错误修改后,可以及时恢复系统的各项配置参数,并记录错误配置信息,以便后续尽量减少造成的损失,极大地增强系统的安全性,增加分布式系统产品的竞争力。
75.实施例3
76.本发明还提出了一种设备,如图3为本发明实施例3一种设备的连接示意图,该设备包括:
77.存储器,用于存储计算机程序;
78.处理器,用于执行所述计算机程序时实现方法步骤如下:
79.如图1为本发明实施例1配置文件定时备份的测试方法流程图;
80.在步骤s100中,将待备份的原始配置文件中的任一子配置文件进行备份,以及将子配置文件的定时任务文件和子配置文件的脚本文件进行备份。其中子配置文件为/etc/icfs/icfs.conf。使用cp_cmd()提前子配置文件/etc/icfs/icfs.conf备份为icfs_bak.conf,同样的方法再进行icfs定时任务文件/var/spool/cron/icfs的备份、脚本文件/usr/bin/back_up_config.sh的备份。
81.本技术中子配置文件选择icfs文件,本发明保护的范围不局限于icfs文件,本领域人员可以根据实际情况选择配置文件中的其他子配置文件。本发明实施例1是以icfs文件作为示例说明。
82.在步骤s110中,清理原始配置文件的目标地址,以确保有良好的测试环境。从所述原始配置文件删除掉子配置文件得到第二待备份文件;
83.双重校验原始配置文件的目标地址是否存在其他文件,如果不存在,则直接通过;如果存在,则清理原始配置文件的目标地址。
84.集群节点连接后,使用cd_cmd(“/var/log/dump_config”,expect_result=”no such file or directory”,expect_code=1)双重校验原始配置文件的目标地址是否存在,如果不存在直接pass,如果存在,节点通过rm_cmd()删除备份文件整个目录。同时使用rm_cmd()删除配置文件中的icfs.conf文件。
85.在步骤s120中,通过脚本文件和定时任务文件,备份第二待备份文件至目标地址得到备份后文件;
86.开启所述脚本文件,以及设置定时任务文件的时间,执行备份第二待备份文件至目标地址得到备份后文件。
87.首先节点使用sed_cmd()命令修改脚本文件back_up_config.sh中的开关配置,off改为on。然后同样的命令修改icfs的定时任务文件icfs,添加*****/usr/bin/back_up_config.sh all到第一行,添加配置文件定时备份任务,每分钟执行一次。
88.在步骤s130中,校验备份后文件是否包含子配置文件,如果包含子配置文件,则备份失败;如果不包含子配置文件,则备份成功。
89.间隔预设时间循环查看所述目标地址中是否得到备份后文件,如果已经得到备份后文件,则跳出循环。
90.跳出循环之后:根据备份后文件的路径得到备份后文件的压缩文件名;一次解压所述压缩文件名进行所有压缩文件名的字符串;将所述字符串转化为列表,再将所述列表转化为集合。
91.由于不确定备份后文件产生的时间,使用while循环,每隔1秒执行ls_cmd()查看/var/log/dump_config下的文件个数是否为1,一旦为1便跳出循环,开始文件的查验工作。首先处理ls_cmd()配置文件路径得到的压缩文件名,调用replace函数去掉后缀得到解压后的一级目录名。执行tar_cmd(),-c指定解压后的文件路径。接下来进行解压得到的所有文件名的数据处理,使用ls_cmd(),参数是解压得到的目录,得到含有所有文件名的字符串,使用split()方法转化为列表,考虑到列表是有序的,而集合是无序的,集合更易于对比所有的文件名是否符合要求,故使用set()方法将列表转化为集合。最后使用assert语句校验结果是否为特定的集合即可判断配置文件备份的最终结果是否正确,最终结果应该为除删除的icfs.conf之外所有的配置文件。
92.在步骤s140中,将备份后文件重命名,添加所述子配置文件,恢复出子配置文件、子配置文件的定时任务文件和子配置文件的脚本文件。
93.恢复文件均使用mv_cmd(),参数为-f,强制将之前cp出来的备份文件重命名为原文件名,以达到恢复的效果。所需恢复的文件分别是/etc/icfs/icfs.conf、/usr/bin/back_up_config.sh、/var/spool/cron/icfs。至此整个验证流程结束,通过该流程确定了配置文件定时备份程序执行结果的正确性,为分布式存储系统的安全性打下了基础。
94.本发明实施例3提出的配置文件定时备份的测试设备,通过在配置文件备份时,删除掉任一子配置文件再进行备份,验证备份后文件是否包含子配置文件。能够确保配置文件在被错误修改后,可以及时恢复系统的各项配置参数,并记录错误配置信息,以便后续尽量减少造成的损失,极大地增强系统的安全性,增加分布式系统产品的竞争力。
95.需要说明:本发明技术方案还提供了一种电子设备,包括:通信接口,能够与其它设备比如网络设备等进行信息交互;处理器,与通信接口连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的配置文件定时备份的测试方法,而所述计算机程序存储在存储器上。当然,实际应用时,电子设备中的各个组件通过总线系统耦合在一起。可理解,总线系统用于实现这些组件之间的连接通信。总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。本技术实施例中的存储
器用于存储各种类型的数据以支持电子设备的操作。这些数据的示例包括:用于在电子设备上操作的任何计算机程序。可以理解,存储器可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,read only memory)、可编程只读存储器(prom,programmable read-only memory)、可擦除可编程只读存储器(eprom,erasable programmable read-only memory)、电可擦除可编程只读存储器(eeprom,electrically erasable programmable read-only memory)、磁性随机存取存储器(fram,ferromagnetic random access memory)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(cd-rom,compact disc read-only memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(ram,random accessmemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(sram,static random access memory)、同步静态随机存取存储器(ssram,synchronous static random access memory)、动态随机存取存储器(dram,dynamic random access memory)、同步动态随机存取存储器(sdram,synchronousdynamic random access memory)、双倍数据速率同步动态随机存取存储器(ddrsdram,double data rate synchronous dynamic random access memory)、增强型同步动态随机存取存储器(esdram,enhanced synchronous dynamic random access memory)、同步连接动态随机存取存储器(sldram,synclink dynamic random access memory)、直接内存总线随机存取存储器(drram,direct rambus random access memory)。本技术实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。上述本技术实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、dsp(digital signal processing,即指能够实现数字信号处理技术的芯片),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器,处理器读取存储器中的程序,结合其硬件完成前述方法的步骤。处理器执行所述程序时实现本技术实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
96.实施例4
97.本发明还提出了一种可读存储介质,可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现方法步骤如下:
98.如图1为本发明实施例1配置文件定时备份的测试方法流程图;
99.在步骤s100中,将待备份的原始配置文件中的任一子配置文件进行备份,以及将子配置文件的定时任务文件和子配置文件的脚本文件进行备份。其中子配置文件为/etc/icfs/icfs.conf。使用cp_cmd()提前子配置文件/etc/icfs/icfs.conf备份为icfs_bak.conf,同样的方法再进行icfs定时任务文件/var/spool/cron/icfs的备份、脚本文件/usr/bin/back_up_config.sh的备份。
100.本技术中子配置文件选择icfs文件,本发明保护的范围不局限于icfs文件,本领域人员可以根据实际情况选择配置文件中的其他子配置文件。本发明实施例1是以icfs文件作为示例说明。
101.在步骤s110中,清理原始配置文件的目标地址,以确保有良好的测试环境。从所述原始配置文件删除掉子配置文件得到第二待备份文件;
102.双重校验原始配置文件的目标地址是否存在其他文件,如果不存在,则直接通过;如果存在,则清理原始配置文件的目标地址。
103.集群节点连接后,使用cd_cmd(“/var/log/dump_config”,expect_result=”no such file or directory”,expect_code=1)双重校验原始配置文件的目标地址是否存在,如果不存在直接pass,如果存在,节点通过rm_cmd()删除备份文件整个目录。同时使用rm_cmd()删除配置文件中的icfs.conf文件。
104.在步骤s120中,通过脚本文件和定时任务文件,备份第二待备份文件至目标地址得到备份后文件;
105.开启所述脚本文件,以及设置定时任务文件的时间,执行备份第二待备份文件至目标地址得到备份后文件。
106.首先节点使用sed_cmd()命令修改脚本文件back_up_config.sh中的开关配置,off改为on。然后同样的命令修改icfs的定时任务文件icfs,添加*****/usr/bin/back_up_config.sh all到第一行,添加配置文件定时备份任务,每分钟执行一次。
107.在步骤s130中,校验备份后文件是否包含子配置文件,如果包含子配置文件,则备份失败;如果不包含子配置文件,则备份成功。
108.间隔预设时间循环查看所述目标地址中是否得到备份后文件,如果已经得到备份后文件,则跳出循环。
109.跳出循环之后:根据备份后文件的路径得到备份后文件的压缩文件名;一次解压所述压缩文件名进行所有压缩文件名的字符串;将所述字符串转化为列表,再将所述列表转化为集合。
110.由于不确定备份后文件产生的时间,使用while循环,每隔1秒执行ls_cmd()查看/var/log/dump_config下的文件个数是否为1,一旦为1便跳出循环,开始文件的查验工作。首先处理ls_cmd()配置文件路径得到的压缩文件名,调用replace函数去掉后缀得到解压后的一级目录名。执行tar_cmd(),-c指定解压后的文件路径。接下来进行解压得到的所有文件名的数据处理,使用ls_cmd(),参数是解压得到的目录,得到含有所有文件名的字符串,使用split()方法转化为列表,考虑到列表是有序的,而集合是无序的,集合更易于对比所有的文件名是否符合要求,故使用set()方法将列表转化为集合。最后使用assert语句校验结果是否为特定的集合即可判断配置文件备份的最终结果是否正确,最终结果应该为除删除的icfs.conf之外所有的配置文件。
111.在步骤s140中,将备份后文件重命名,添加所述子配置文件,恢复出子配置文件、子配置文件的定时任务文件和子配置文件的脚本文件。
112.恢复文件均使用mv_cmd(),参数为-f,强制将之前cp出来的备份文件重命名为原文件名,以达到恢复的效果。所需恢复的文件分别是/etc/icfs/icfs.conf、/usr/bin/back_up_config.sh、/var/spool/cron/icfs。至此整个验证流程结束,通过该流程确定了
配置文件定时备份程序执行结果的正确性,为分布式存储系统的安全性打下了基础。
113.本发明实施例4提出的存储介质,通过在配置文件备份时,删除掉任一子配置文件再进行备份,验证备份后文件是否包含子配置文件。能够确保配置文件在被错误修改后,可以及时恢复系统的各项配置参数,并记录错误配置信息,以便后续尽量减少造成的损失,极大地增强系统的安全性,增加分布式系统产品的竞争力。
114.本技术实施例还提供了一种存储介质,即计算机存储介质,具体为计算机可读存储介质,例如包括存储计算机程序的存储器,上述计算机程序可由处理器执行,以完成前述方法所述步骤。计算机可读存储介质可以是fram、rom、prom、eprom、eeprom、flash memory、磁表面存储器、光盘、或cd-rom等存储器。
115.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。或者,本技术上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本技术各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
116.本技术实施例提供的配置文件定时备份的测试的设备和存储介质中相关部分的说明可以参见本技术实施例1提供的配置文件定时备份的测试方法中对应部分的详细说明,在此不再赘述。
117.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。另外,本技术实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。
118.上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制。对于所属领域的技术人员来说,在上述说明的基础上还可以做出其它不同形式的修改或变形。这里无需也无法对所有的实施方式予以穷举。在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1