备份、还原操作系统参数的方法及工具与流程

文档序号:13472105阅读:758来源:国知局
备份、还原操作系统参数的方法及工具与流程

本发明涉及计算机技术领域,具体地说是备份、还原操作系统参数的方法及工具。



背景技术:

在linux操作系统中,存在许多可调节参数,如/proc/和/sys目录下许多文件中的参数可以根据应用场景的需要进行修改。在实际应用场景中,往往需要修改一个或多个系统参数,修改后系统运行过程中效果不理想可能需要重新恢复原始值。

目前对linux操作系统参数的设定和还原一般都是通过手工方式进行,在还原时,需要由管理员预先记录下相应参数的原始值,并将原始值重新写入到相应的参数文件中。

目前对系统参数的修改主要是采用手工方式逐个向相应的参数文件中写入参数值,还原则是将原始值重新写入到参数文件中,如果需要多次大量修改参数文件时,效率会比较低,而且如果没有预先记录下参数的原始值就需要重新启动操作系统,费时费力。



技术实现要素:

本发明的目的在于提供备份、还原操作系统参数的方法和工具,用于解决手工方式逐个进行参数的备份和还原,工作效率低的问题。

本发明的实施例提供了备份操作系统参数的方法,包括以下步骤:

读取备份参数的名称,获取备份参数的当前值;

新建参数值文件,将备份参数的名称和当前值写入参数值文件。

进一步地,所述读取备份参数的名称之前还包括步骤:将支持备份的参数进行整理,生成参数列表。

进一步地,所述读取备份参数的名称,获取备份参数的当前值的具体过程为:

从配置文件中读取备份参数的名称;

判断该参数名称是否在参数列表内;

若否,则结束进程,并显示错误;

若是,则获取备份参数的当前值。

本发明的实施例还提供了还原操作系统参数的方法,包括以下步骤:

读取备份参数的名称,获取备份参数的当前值;

新建参数值文件,将备份参数的名称和当前值写入参数值文件;

读取还原参数的名称,从参数值文件中获取对应的参数值;

将该参数值设定为系统参数的当前值。

进一步地,通过调用sysctl-e命令加参数名的形式从参数值文件中获取对应的参数值。

进一步地,通过调用读取参数值文件命令获取对应的参数值。

本发明的实施例还提供了备份操作系统参数的工具,包括包括配置模块、备份模块和存储模块;所述配置模块用于存储备份参数的名称,所述备份模块用于从配置模块中获取备份参数的名称,同时获取备份参数的当前值,将备份参数的名称和当前值发送给存储模块,所述存储模块用于创建参数值文件,将备份参数的名称和当前值保存至参数值文件。

进一步地,所述工具还包括参数列表模块,所述参数列表模块用于整理工具支持备份的参数,并生成参数列表。

本发明的实施例还提供了还原操作系统参数的工具,包括配置模块、备份模块、存储模块和设置模块,所述配置模块用于存储备份参数的名称,所述备份模块用于从配置模块中获取备份参数的名称,同时获取备份参数的当前值,将备份参数的名称和当前值发送给存储模块,所述存储模块用于创建参数值文件,将备份参数的名称和当前值保存至参数值文件,所述设置模块用于获取还原参数名称,同时读取参数值文件中对应的参数值,将还原参数值设为此参数值。

发明内容中提供的效果仅仅是实施例的效果,而不是发明所有的全部效果,上述技术方案中的一个技术方案具有如下优点或有益效果:

1、通过读取备份参数的名称、获取参数的当前值,自动将参数名称及参数写入参数值文件进行保存,代替手工写入参数名称和对应的当前值,避免手工写入错误,且大幅提高工作效率。

2、将支持备份的参数进行整理,生成参数列表,同时在获取备份参数名称时,判断该参数是否在参数列表中,避免对参数列表外的参数进行操作,造成位置错误,保证参数备份的准确性。

3、在还原参数时,只要读取参数值文件中参数值,将获取的参数值设为参数文件中的参数值即可实现参数的还原,无需重启操作系统,方便快捷,且不会出现错误还原,保证还原参数值的准确性。

附图说明

图1是本发明备份参数方法的流程示意图;

图2是本发明备份参数方法中获取参数名称和当前值的流程示意图;

图3是本发明还原参数方法的流程示意图;

图4是本发明备份参数工具的结构示意图;

图5是本发明还原参数工具的结构示意图。

具体实施方式

为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。

如图1所示,本发明提供了备份操作系统参数的方法,包括步骤:

s1,将支持备份的参数进行整理,生成参数列表;

s2,读取备份参数的名称,获取备份参数的当前值;

s3,新建参数值文件,将备份参数的名称和当前值写入参数值文件。

步骤s1中,将本实施例能够进行备份的参数进行整理,生成参数列表,新建支持参数列表文件,将参数列表保存至支持参数列表文件内。

如图2所示,步骤s2中,实现备份参数名称读取、参数当前值获取的具体过程为:

s21,从配置文件中读取备份参数的名称;

s22,判断该参数名称是否在参数列表内;

s23,若否,则结束进程,并显示错误;

s24,若是,则获取备份参数的当前值。

步骤s21中,新建配置文件,在配置文件中写入需要备份的参数名称,当接收到特定参数备份的命令后,从配置文件中读取备份参数的名称。

步骤s22中,为了保证读取的备份参数时本实施例能够支持备份的参数,判断读取的备份参数名称是否在参数列表内。

步骤s23中,若该读取的备份参数不在参数列表内,则结束对该读取参数的备份操作,直接显示错误。

步骤s24中,若该读取的备份参数在参数列表内,则获取该参数的当前值。在执行备份命令时,通过调用获取参数值命令读取配置文件中列出的所有参数值,将读取相应参数名称的参数值写入到参数值文件中进行保存,如通过sysctl-evm.swappiness命令可以读取到vm.swappiness值为60。

步骤s3中,新建参数值文件,将步骤s2获取的参数名称和对应的参数值保存在参数值文件中,每个参数以参数名称为文件名保存,因此参数值文件中保存有多个子参数值文件。

如图3所示,本发明公开的还原操作系统参数的方法,在上述备份操作系统参数方法的基础上,该还原参数的方法包括以下步骤:

s2,读取备份参数的名称,获取备份参数的当前值;

s3,新建参数值文件,将备份参数的名称和当前值写入参数值文件;

a1,读取还原参数的名称,从参数值文件中获取对应的参数值;

a2,将该参数值设定为系统参数的当前值。

步骤a1中,系统接收到还原参数的命令后,自动读取还原参数的名称,根据读取的还原参数的名称,从参数值文件中寻找对应的参数值。

从参数文件中获取参数值的具体过程有:通过调用sysctl-e命令加参数名的方式和通过调用读取参数值文件命令的方式。其中,针对/proc文件夹下的参数大部分可以通过sysctl–e加参数名的方式读取,如vm.swappiness,kernel.shmmax等参数。针对/sys目录下的部分参数可以使用特定命令获取参数值,如针对cpu的frequencypolicy参数的获取可以采用cpupower命令,cpupower-c0frequency-set-gperformance能够将cpu0的frequencypolicy设定为performance,对于不能够使用命令进行查询的参数可以通过读取对应参数值文件的方式获取当前参数的设定值,如获取cpu的min_perf参数需要通过读取/sys/devices/system/cpu/intel_pstate/min_perf_pct文件获取相应的值。

通过读取备份参数的名称、获取参数的当前值,自动将参数名称及参数写入参数值文件进行保存,代替手工写入参数名称和对应的当前值,避免手工写入错误,且大幅提高工作效率。

如图4所示,本发明公开了的备份操作系统参数的工具,该工具包括依次连接的配置模块11、备份模块12和存储模块13。其中配置模块11用于存储备份参数的名称,所述备份模块12用于从配置模块11中获取备份参数的名称,同时获取备份参数的当前值,将备份参数的名称和当前值发送给存储模块13,存储模块13用于创建参数值文件,将备份参数的名称和当前值保存至参数值文件。

备份参数的工具还包括参数列表模块,参数列表模块用于整理工具支持备份的参数,并生成参数列表。备份模块12在进行参数备份时,首先将从配置模块11中获取的参数名称进行判断,判断该参数名称是否在参数列表内,避免对参数列表外的参数进行操作,造成位置错误,保证参数备份的准确性。

如图5所示,在上述备份工具的基础上,本发明公开了还原操作系统参数的工具,该工具包括依次连接的配置模块21、备份模块22、存储模块23和设置模块24。其中配置模块21用于存储备份参数的名称,备份模块22用于从配置模块21中获取备份参数的名称,同时获取备份参数的当前值,将备份参数的名称和当前值发送给存储模块23,存储模块23用于创建参数值文件,将备份参数的名称和当前值保存至参数值文件,设置模块24用于获取还原参数名称,同时读取参数值文件中对应的参数值,将还原参数值设为此参数值。

以上所述只是本发明的优选实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也被视为本发明的保护范围。

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