CN105938417A - 更新配置数据的方法及装置 - Google Patents
更新配置数据的方法及装置 Download PDFInfo
- Publication number
- CN105938417A CN105938417A CN201510478716.7A CN201510478716A CN105938417A CN 105938417 A CN105938417 A CN 105938417A CN 201510478716 A CN201510478716 A CN 201510478716A CN 105938417 A CN105938417 A CN 105938417A
- Authority
- CN
- China
- Prior art keywords
- card
- configuration
- configuration data
- data packet
- file lock
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供更新配置数据的方法及装置,所述方法包括:当所述主控板启动时,检查所述CF卡上是否有文件锁;当所述CF卡上存在所述文件锁时,检查所述CF卡上是否存在配置数据压缩包;当所述CF卡上存在所述配置数据压缩包时,根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁。本申请对CF卡上的配置数据更新过程中因突然掉电或故障出现主控板重启时,仍可以完成对CF卡上的配置数据的正确更新。
Description
技术领域
本申请涉及通信技术领域,尤其涉及更新配置数据的方法及装置。
背景技术
在嵌入式设备中,通常采用功耗低、性能稳定且掉电时不会丢失数据的CF(Compact Flash,紧凑型闪存)卡作为存储设备。通常CF卡存在于主控板上。在计算机系统中,由于CF卡的存取速度远远低于内存、处理器等的存取速度,因此,需要写入CF卡的数据会暂时保存在内存中,然后定期写入CF卡。当CF卡上的配置数据更新时,更新后的配置数据会先暂时保存在内存中,然后定期写入CF卡,从而完成CF卡上配置数据的更新。
在将更新后的配置数据写入CF卡的过程中,如果设备因突然掉电或者异常重启,由于内存上的数据无法及时被保存,因此,更新后的配置数据无法被全部写入CF卡,从而导致CF卡上的配置数据无法被正确更新。现有的技术方案是缩短将内存上的数据写入CF卡的周期,这种方法虽然能够降低在设备突然掉电时配置数据丢失的概率,但是并没有完全解决配置数据丢失的问题,即仍有一定概率造成CF卡上的配置数据无法被正确更新。
发明内容
有鉴于此,本申请提供一种更新配置数据的方法及装置,来解决现有技术中当设备突然掉电或者异常启动时不能解决CF卡上的配置数据无法被正确更新的问题。
具体地,本申请是通过如下技术方案实现的:
根据本申请实施例的第一方面,提供一种更新配置数据的方法,所述方法应用于网络设备的主控板上,所述主控板包括CF卡,所述方法包括:
当所述主控板启动时,检查所述CF卡上是否有文件锁;
当所述CF卡上存在所述文件锁时,检查所述CF卡上是否存在配置数据压缩包;
当所述CF卡上存在所述配置数据压缩包时,根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁。
根据本申请实施例的第二方面,提供一种更新配置数据的装置,所述装置应用于网络设备的主控板上,所述主控板包括CF卡,所述装置包括:
第一检查单元,用于当所述主控板启动时,检查所述CF卡上是否有文件锁;
第二检查单元,用于当所述CF卡上存在所述文件锁时,检查所述CF卡上是否存在配置数据压缩包;
更新单元,用于当所述CF卡上存在所述配置数据压缩包时,根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
删除单元,用于当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁。
本申请提供更新配置数据的方法及装置,若在主控板启动时检查到CF卡上存在文件锁,则可以确定CF卡上的配置数据需要更新,那么根据从CF卡上保存的配置数据压缩包解压出的配置数据更新CF卡上的配置数据,并在确定CF卡上的配置数据更新完成时,删除文件锁。从而实现在主控板对CF卡的配置数据更新过程中因突然掉电或故障重启时,仍可以完成对CF卡上的配置数据的正确更新。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是应用本申请实施例实现更新配置数据的一个应用场景示意图;
图2是本申请更新配置数据的方法的一个实施例流程图;
图3是应用本申请实施例实现更新配置数据的另一个应用场景示意图;
图4是本申请更新配置数据的装置所在设备的一种硬件结构图;
图5是本申请更新配置数据的装置的一个实施例框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
参见图1,为应用本申请实施例实现更新配置数据的一个应用场景示意图:
图1中所示的主控板,有至少一个CF卡。由于CF卡能够在设备掉电时保存数据,因此主控板将当前使用的配置数据(也可称为指定配置数据)保存在CF卡上。但是因为CF卡的存取速度较低,因此,当主控板更新CF卡上的指定配置数据时,会先将指定配置数据保存到内存中,内存中的指定配置数据更新完成后,主控板将更新后的指定配置数据定期写入CF卡,从而完成CF卡上的配置数据的更新。
在基于LINUX的操作系统中,主控板将内存上的配置数据写入CF卡的周期默认为5秒。当设备因突然掉电或者故障重启时,如果内存上的指定配置数据已经于5秒前被完全更新,则可以保证主控板已经将更新后的配置数据完全写入CF卡;如果内存上的指定配置数据被完全更新的时间还未达到5秒,则无法保证主控板已经将更新后的指定配置数据完全写入CF卡。因为内存上更新后的指定配置数据在断电时无法及时被保存,因此部分或全部更新后的指定配置数据很有可能会丢失,从而导致CF卡上的配置数据未能被正确更新。
现有技术中,主控板缩短了将更新后的指定配置数据从内存写入CF卡的周期,从而降低了内存上更新后的指定配置数据在主控板因突然掉电或者故障重启的情况下全部或部分丢失的概率。但是现有技术并没有完全解决内存上更新后的指定配置数据丢失的问题,即仍有一定概率造成CF卡上的配置数据未能被正确更新。
本申请中,将用于更新CF卡上指定配置数据的配置数据压缩包保存至CF卡,并对配置数据压缩包进行解压之后,可以在CF卡上创建一个文件锁。在主控板将更新后的指定配置数据写入CF卡的过程中,文件锁会一直存在。当主控板将更新后的指定配置数据完全写入CF卡时,文件锁会被删除。当主控板因突然掉电或者故障重启时,主控板可以检查CF卡上是否有文件锁。当文件锁不存在时,说明CF卡上的指定配置数据已经被完全更新,即此时CF卡上的配置数据是正确的;当文件锁存在时,说明CF卡上的指定配置数据还未完全更新,即此时CF卡上的配置数据很有可能是不正确的。因此,主控板将CF卡上的指定配置数据重新进行更新,将更新后的指定配置数据完全写入CF卡,从而保证了CF卡上的配置数据是正确的。因此,本申请解决了现有技术中无法解决当主控板因突然掉电或故障重启时,CF卡上的配置数据不能被正确更新的问题。
参见图2,是本申请更新配置数据的方法的一个实施例流程图,该实施例从主控板侧进行描写,包括了以下步骤:
步骤201:在更新CF卡上的指定配置数据之前,预先设置文件锁。
在本申请实施例中,当主控板需要更新CF卡上的指定配置数据时,可以将用于更新所述指定配置数据的配置数据压缩包保存至所述CF卡,之后,所述主控板对所述CF卡上保存的所述配置数据压缩包进行解压,并在解压完成后,创建文件锁。所述文件锁可以为具有标识作用的文件或其他标记,如空文件等。文件锁可以存放在所述CF卡的文件目录/log/cfg_file下,其中/log/是CF卡的一个分区。所述指定配置数据以及所述配置数据压缩包与所述文件锁可以在所述CF卡上的同一分区中。假设所述分区为第一分区,则第一分区可以为/log/分区。
所述CF卡上存在默认配置数据,以使所述主控板在需要恢复默认配置时将指定配置数据更新为默认配置数据。所述默认配置数据不会被修改或删除。所述默认配置数据存放在与第一分区不同的分区中。假设所述默认配置数据所在的分区为第二分区,则第二分区可以为/backup/分区。
当所述主控板使用基于LINUX系统的ext3(Third extended file system,第三代扩展文件系统)时,所述主控板能够保证CF卡的文件目录结构的正确性,即当所述主控板执行在CF卡上创建单个文件或删除单个文件的操作时,所述操作能够立即生效。否则,所述主控板在执行创建文件锁的操作时,需要同时执行sync命令,以使所述操作能够立即生效。
步骤202:当所述主控板启动时,检查所述CF卡上是否有文件锁。
在所述文件锁创建成功后,所述主控板可以根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据。当所述CF卡上的指定配置数据被完全更新时,所述主控板可以删除所述文件锁。所述文件锁删除成功后,所述主控板可以删除所述配置数据压缩包,并进行重启。因此,当所述CF卡上的指定配置数据被完全更新时,所述主控板在重启之后,无法在所述CF卡上检查到所述文件锁;当所述CF卡上的指定配置数据未被完全更新时,所述主控板对所述文件锁不做处理。因此,如果所述主控板在未完全更新所述指定配置数据之前突然断电或异常,则所述主控板在重新启动后,仍可以在所述CF上检查到所述文件锁。
因此,在所述主控板重启后,可以通过检查所述CF卡上是否存在文件锁的方式对所述CF卡上的配置数据进行正确性检查。当所述CF卡上不存在所述文件锁时,说明所述CF卡上的配置数据是正确的,所述主控板不需要再重新更新所述CF卡上的指定配置数据;当所述CF卡上存在文件锁时,说明所述主控板还未开始更新所述指定配置数据,或者是在上一次启动或运行过程中已经开始更新所述指定配置数据但是因为所述主控板突然掉电或异常使得更新后的指定配置数据并未完全写入所述CF卡。因此,此时所述CF卡上的配置数据很有可能是不正确的。
步骤203:当所述CF卡上存在所述文件锁时,检查所述CF卡上是否有配置数据压缩包。
当所述CF卡上存在所述文件锁时,说明此时所述CF卡上的配置数据很有可能是不正确的。为使所述CF卡上的配置数据正确,所述主控板需要重新更新所述CF卡上的指定配置数据。在此之前,所述主控板需要检查所述CF卡上是否有配置数据压缩包。
步骤204:当所述CF卡上存在所述配置数据压缩包时,根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据。
当所述CF卡上存在所述配置数据压缩包时,所述主控板可以先解压所述配置数据压缩包,然后根据从所述配置数据压缩包解压出的配置数据更新指定配置数据。
所述主控板根据从所述配置数据压缩包解压出的配置数据更新指定配置数据时,可以先将指定配置数据完全清除,然后将从所述配置数据压缩包解压出的配置数据写入所述CF卡。
在一个示例中,假设所述主控板更新指定配置数据之前,指定配置数据如下表1所示(表1中仅展示出部分指定配置数据的信息):
源IP地址 | 目的IP地址 | NAT源IP地址 | NAT目的IP地址 | 协议 |
2.1.1.2:2048 | 3.1.1.2:43982 | 3.1.1.2:0 | 2.1.1.2:43982 | ICMP |
2.1.1.2:1024 | 3.1.1.2:21 | 3.1.1.2:21 | 2.1.1.1:1024 | TCP |
155.1.1.2:21 | 155.1.1.1:48 | 155.1.1.1:23 | 155.1.1.2:21 | TCP |
表1
当所述CF卡上存在配置数据压缩包时,假设所述主控板解压所述配置数据压缩包后获得的配置数据如下表2所示:
源IP地址 | 目的IP地址 | NAT源IP地址 | NAT目的IP地址 | 协议 |
2.1.1.2:2048 | 3.1.1.2:4293 | 3.1.1.2:0 | 2.1.1.2:43982 | ICMP |
2.1.1.2:1024 | 3.1.1.2:821 | 3.1.1.2:21 | 2.1.1.1:1024 | TCP |
表2
对比表1和表2可知,所述配置数据发生了变化。所述主控板在清除表1所示的指定配置数据后,将表2所示的配置数据写入所述CF卡,从而完成所述CF卡上指定配置数据的更新。
可选的,当所述CF卡上不存在所述配置数据压缩包时,所述主控板可以根据从所述CF卡的第二分区获取的默认配置数据更新所述CF卡上的指定配置数据。当所述CF卡上的指定配置数据确定被完全更新为默认配置数据时,所述主控板可以删除所述文件锁。在所述文件锁删除成功后,所述主控板可以重新启动。
步骤205:当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁。
当内存上的指定配置数据被成功更新后,如果所述文件锁立即被删除,则无法保证所述主控板已经将更新后的指定配置数据完全写入所述CF卡。如果此时所述主控板突然掉电,则所述主控板恢复正常后,因为检查不到所述文件锁的存在,所述主控板在未接到下一次更新所述CF卡上的指定配置数据的命令之前,不会再重新更新所述CF卡上的指定配置数据。因此,所述CF卡上配置数据很有可能未被正确更新。
在一个示例中,假设主控板已将部分更新后的指定配置数据写入所述CF卡,内存上保存的另一部分更新后的指定配置数据如下表3所示:
源IP地址 | 目的IP地址 | NAT源IP地址 | NAT目的IP地址 | 协议 |
2.1.1.2:1024 | 3.1.1.2:821 | 3.1.1.2:21 | 2.1.1.1:1024 | TCP |
表3
此时如果所述主控板突然掉电或者发生其他异常情况,则所述内存上不再保存任何数据。所述CF卡上保存的指定配置数据如下表4所示:
源IP地址 | 目的IP地址 | NAT源IP地址 | NAT目的IP地址 | 协议 |
2.1.1.2:2048 | 3.1.1.2:4293 | 3.1.1.2:0 | 2.1.1.2:43982 | ICMP |
表4
对比表2和表4便可得知,当内存上的指定配置数据被成功更新后,如果立即删除文件锁,则可能造成更新后的指定配置数据的部分或全部丢失,从而导致CF卡上的配置数据不能被正确更新。
因此,所述主控板在更新完内存上保存的指定配置数据后,还要等待至少一个将内存上更新后的指定配置数据写入所述CF卡的周期,才能确保所述CF卡上的指定配置数据已经更新完成,此时所述CF卡上的指定配置数据才是正确的。在基于LINUX的操作系统中,主控板将内存上的配置数据写入CF卡的写入周期默认为5秒。因此,所述主控板在更新指定配置数据后,需要再等待5秒,然后便可以删除所述文件锁。
如果所述主控板在更新指定配置数据时,发现所述CF卡上存在配置数据压缩包,则所述主控板在删除所述文件锁之后,需要删除所述配置数据压缩包。然后所述主控板可以重新启动,并在重启后执行步骤202至步骤205。
在另一个可选实施例中,主控板所在网络设备可以包括两个主控板,具体地,如图3所示,为应用本申请实施例实现更新配置数据的另一个应用场景示意图,其中,备用主用板与主用主控板相连。备用主控板在每次启动时可以从主用主控板获取配置数据压缩包。在获取成功后,备用主控板可以将其存放在CF卡上。然后,备用主控板可以解压所述配置数据压缩包,并在解压出配置数据后,检查所述CF卡上是否存在文件锁。当所述CF卡上存在文件锁时,备用主控板可以根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;当所述CF卡上不存在文件锁时,备用主控板可以先创建文件锁,之后,可以根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据。当确定所述CF卡上的指定配置数据已更新完成时,备用主控板可以删除所述文件锁。
因为备用主控板每次启动时都会从主用主控板获取最新的配置数据压缩包。所以,即使备用主控板在上一次启动或运行过程中突然掉电以致所述CF卡上的指定配置数据不正确,备用主控板也不再使用上次启动或运行过程中从主用主控板获取的配置数据压缩包。备用主控板从主用主控板成功获取配置数据压缩包(也可称为第一配置数据压缩包)后,可以删除剩余配置数据压缩包,所述剩余配置数据压缩包为所述CF卡第一分区中除所述第一配置数据压缩包外的配置数据压缩包。
在本申请实施例中,备用主控板通过上述步骤确保其CF卡上的配置数据和与其相连的主用主控板上的配置数据一致。当备用主控板切换成主用主控板时,新的主用主控板可以根据所述CF卡上是否存在文件锁来确定所述CF卡上的配置数据是否正确。新的主用主控板在启动后可以执行步骤202至步骤205。
在本申请实施例中,当用户导入配置数据时,所述主用主控板可以从用户终端设备上获取配置数据压缩包。所述主用主控板根据所述配置数据压缩包以及在解压所述配置数据压缩包后创建文件锁来完成所述CF卡上配置数据的更新。具体的更新过程与上述实施例一致,在此不再赘述。
在本申请实施例中,在主控板未将更新后的指定配置数据写入所述CF卡之前,所述CF卡上的文件锁会一直存在。因此,即使在将更新后的指定配置数据写入所述CF卡的过程中所述主控板突然掉电或发生其他异常情况,所述主控板在恢复正常之后可以在发现存在所述文件锁的情况下重新更新所述CF卡上的指定配置数据,从而将正确的更新后的指定配置数据重新写入所述CF卡。
由上述实施例可见,当所述主控板在启动时检查到CF卡上存在文件锁,则可以确定CF卡上的配置数据需要更新。所述主控板根据从所述CF卡上保存的配置数据压缩包解压出的配置数据更新CF卡上的配置数据,并在确定CF卡上的配置数据更新完成时,删除文件锁。从而实现在主控板对CF卡的配置数据更新过程中因突然掉电或故障重启时,仍可以完成对CF卡上的配置数据的正确更新。
与前述更新配置数据的方法的实施例相对应,本申请还提供了更新配置数据的装置的实施例。
本申请更新配置数据的装置的实施例可以应用在网络设备的主控板上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本申请更新配置数据的装置所在设备的一种硬件结构图,除了图4所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。
请参考图5,为本申请更新配置数据的装置的一个实施例框图:
该装置可以包括:检查单元510、更新单元520以及删除单元530。
检查单元510,用于当所述主控板启动时,检查所述CF卡上是否有文件锁以及当所述CF卡上存在所述文件锁时,检查所述CF卡上是否存在配置数据压缩包;
更新单元520,用于当所述CF卡上存在所述配置数据压缩包时,根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
删除单元530,用于当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁。
在一个可选的实现方式中,所述装置还可以包括(图5中未示出):
第一获取单元540,用于从终端设备获取配置数据压缩包;
第一解压单元550,用于从所述配置数据压缩包解压出配置数据;
第一创建单元560,用于当所述配置数据压缩包解压完成时,创建文件锁;
所述更新单元520,还用于根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
所述删除单元530,还用于当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁;当所述CF卡上的指定配置数据未更新完成时,对所述文件锁不做处理。
在另一个可选的实现方式中:
所述更新单元520,还可以用于在检查所述CF卡上是否有配置数据压缩包之后,当所述CF卡上不存在所述配置数据压缩包时,根据从所述CF卡获取的默认配置数据更新所述CF卡上的指定配置数据;
所述删除单元530,还可以用于当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁。
在另一个可选的实现方式中,所述更新单元520可以包括(图5中未示出):
清除子单元,用于清除所述CF卡上的指定配置数据;
写入子单元,用于将从所述配置数据压缩包解压出的配置数据写入所述CF卡。
在另一个可选的实现方式中,当所述主控板为备用主控板时,所述装置还可以包括(图5中未示出):
第二获取单元570,用于从主用主控板获取配置数据压缩包;
第二解压单元580,用于从所述配置数据压缩包解压出配置数据;
第二创建单元590,用于当所述配置数据压缩包解压完成时,创建文件锁;
所述更新单元520,还用于根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
所述删除单元530,还用于当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁,以使当所述备用主控板切换为主用主控板时,由所述主用主控板根据所述CF卡上是否存在文件锁来确定所述CF卡上的指定配置数据是否正确。
在另一个可选的实现方式中:
所述删除单元530,还可以用于在删除所述文件锁之后,当所述CF卡上存在所述配置数据压缩包时,删除所述配置数据压缩包。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
由上述实施例可见,当所述主控板在启动时检查到CF卡上存在文件锁,则可以确定CF卡上的配置数据需要更新。所述主控板根据从所述CF卡上保存的配置数据压缩包解压出的配置数据更新CF卡上的配置数据,并在确定CF卡上的配置数据更新完成时,删除文件锁。从而实现在主控板对CF卡的配置数据更新过程中因突然掉电或故障重启时,仍可以完成对CF卡上的配置数据的正确更新。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (12)
1.一种更新配置数据的方法,其特征在于,所述方法应用于网络设备的主控板上,所述主控板包括紧凑型闪存CF卡,所述方法包括:
当所述主控板启动时,检查所述CF卡上是否有文件锁;
当所述CF卡上存在所述文件锁时,检查所述CF卡上是否存在配置数据压缩包;
当所述CF卡上存在所述配置数据压缩包时,根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
从终端设备获取配置数据压缩包;
从所述配置数据压缩包解压出配置数据;
当所述配置数据压缩包解压完成时,创建文件锁;
根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁;当所述CF卡上的指定配置数据未更新完成时,对所述文件锁不做处理。
3.根据权利要求1所述的方法,其特征在于,在所述检查所述CF卡上是否有配置数据压缩包之后,还包括:
当所述CF卡上不存在所述配置数据压缩包时,根据从所述CF卡获取的默认配置数据更新所述CF卡上的指定配置数据;
当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁。
4.根据权利要求1所述的方法,其特征在于,所述根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据,包括:
清除所述CF卡上的指定配置数据;
将从所述配置数据压缩包解压出的配置数据写入所述CF卡。
5.根据权利要求1所述的方法,其特征在于,当所述主控板为备用主控板时,所述方法还包括:
从主用主控板获取配置数据压缩包;
从所述配置数据压缩包解压出配置数据;
当所述配置数据压缩包解压完成时,创建文件锁;
根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁,以使当所述备用主控板切换为主用主控板时,由所述主用主控板根据所述CF卡上是否存在文件锁来确定所述CF卡上的指定配置数据是否正确。
6.根据权利要求1至5任一所述的方法,其特征在于,在所述删除所述文件锁之后,还包括:
当所述CF卡上存在所述配置数据压缩包时,删除所述配置数据压缩包。
7.一种更新配置数据的装置,其特征在于,所述装置应用于网络设备的主控板上,所述主控板包括CF卡,所述装置包括:
第一检查单元,用于当所述主控板启动时,检查所述CF卡上是否有文件锁;
第二检查单元,用于当所述CF卡上存在所述文件锁时,检查所述CF卡上是否存在配置数据压缩包;
更新单元,用于当所述CF卡上存在所述配置数据压缩包时,根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
删除单元,用于当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第一获取单元,用于从终端设备获取配置数据压缩包;
第一解压单元,用于从所述配置数据压缩包解压出配置数据;
第一创建单元,用于当所述配置数据压缩包解压完成时,创建文件锁;
所述更新单元,还用于根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
所述删除单元,还用于当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁;当所述CF卡上的指定配置数据未更新完成时,对所述文件锁不做处理。
9.根据权利要求7所述的装置,其特征在于,
所述更新单元,还用于在检查所述CF卡上是否有配置数据压缩包之后,当所述CF卡上不存在所述配置数据压缩包时,根据从所述CF卡获取的默认配置数据更新所述CF卡上的指定配置数据;
所述删除单元,还用于当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁。
10.根据权利要求7所述的装置,其特征在于,所述更新单元包括:
清除子单元,用于清除所述CF卡上的指定配置数据;
写入子单元,用于将从所述配置数据压缩包解压出的配置数据写入所述CF卡。
11.根据权利要求7所述的装置,其特征在于,当所述主控板为备用主控板时,所述装置还包括:
第二获取单元,用于从主用主控板获取配置数据压缩包;
第二解压单元,用于从所述配置数据压缩包解压出配置数据;
第二创建单元,用于当所述配置数据压缩包解压完成时,创建文件锁;
所述更新单元,还用于根据从所述配置数据压缩包解压出的配置数据更新所述CF卡上的指定配置数据;
所述删除单元,还用于当确定所述CF卡上的指定配置数据更新完成时,删除所述文件锁,以使当所述备用主控板切换为主用主控板时,由所述主用主控板根据所述CF卡上是否存在文件锁来确定所述CF卡上的指定配置数据是否正确。
12.根据权利要求7至11任一所述的装置,其特征在于,
所述删除单元,还用于在删除所述文件锁之后,当所述CF卡上存在所述配置数据压缩包时,删除所述配置数据压缩包。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510478716.7A CN105938417B (zh) | 2015-08-06 | 2015-08-06 | 更新配置数据的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510478716.7A CN105938417B (zh) | 2015-08-06 | 2015-08-06 | 更新配置数据的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105938417A true CN105938417A (zh) | 2016-09-14 |
CN105938417B CN105938417B (zh) | 2019-02-19 |
Family
ID=57152808
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510478716.7A Active CN105938417B (zh) | 2015-08-06 | 2015-08-06 | 更新配置数据的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105938417B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116737089A (zh) * | 2023-08-15 | 2023-09-12 | 北京紫光芯能科技有限公司 | 配置数据的存储方法、装置和系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103713929A (zh) * | 2013-12-31 | 2014-04-09 | 南京新奕天科技有限公司 | 基于片上Flash嵌入式系统的远程更新方法 |
CN103853565A (zh) * | 2012-11-28 | 2014-06-11 | 京信通信系统(中国)有限公司 | 基于arm的固件升级方法和装置 |
US20140298313A1 (en) * | 2013-01-07 | 2014-10-02 | Tencent Technology (Shenzhen) Company Limited | Method, server, client and system for updating data |
CN104090796A (zh) * | 2014-07-08 | 2014-10-08 | 成都万维图新信息技术有限公司 | 一种嵌入式设备程序更新方法和系统 |
CN104506931A (zh) * | 2015-01-08 | 2015-04-08 | 大唐微电子技术有限公司 | 一种支持cam卡在线升级的方法及系统 |
-
2015
- 2015-08-06 CN CN201510478716.7A patent/CN105938417B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103853565A (zh) * | 2012-11-28 | 2014-06-11 | 京信通信系统(中国)有限公司 | 基于arm的固件升级方法和装置 |
US20140298313A1 (en) * | 2013-01-07 | 2014-10-02 | Tencent Technology (Shenzhen) Company Limited | Method, server, client and system for updating data |
CN103713929A (zh) * | 2013-12-31 | 2014-04-09 | 南京新奕天科技有限公司 | 基于片上Flash嵌入式系统的远程更新方法 |
CN104090796A (zh) * | 2014-07-08 | 2014-10-08 | 成都万维图新信息技术有限公司 | 一种嵌入式设备程序更新方法和系统 |
CN104506931A (zh) * | 2015-01-08 | 2015-04-08 | 大唐微电子技术有限公司 | 一种支持cam卡在线升级的方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116737089A (zh) * | 2023-08-15 | 2023-09-12 | 北京紫光芯能科技有限公司 | 配置数据的存储方法、装置和系统 |
CN116737089B (zh) * | 2023-08-15 | 2023-11-21 | 北京紫光芯能科技有限公司 | 配置数据的存储方法、装置和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105938417B (zh) | 2019-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101377744B (zh) | 一种终端设备软件升级恢复方法及装置 | |
CN106155915B (zh) | 数据存储的处理方法及装置 | |
CN103729264B (zh) | 一种Windows虚拟机系统盘备份还原方法 | |
US20070055969A1 (en) | System and method for updating firmware | |
US10860447B2 (en) | Database cluster architecture based on dual port solid state disk | |
KR100515890B1 (ko) | 효율적인 데이터베이스 복구방법 | |
US7512777B2 (en) | Method and system for maintaining system management BIOS | |
CN104915226B (zh) | 一种网络设备软件启动方法、装置及网络设备 | |
CN104834575A (zh) | 一种固件恢复方法及装置 | |
CN102521289B (zh) | 一种文件同步方法、装置及系统 | |
US10642623B1 (en) | Preserving firmware settings during firmware updates | |
CN102110032A (zh) | 一种提高配置文件可靠性的方法及装置 | |
CN103761165A (zh) | 日志备份方法及装置 | |
CN105681420A (zh) | 一种基于Docker实现交换机操作系统备份的方法 | |
CN105138362A (zh) | 一种linux系统下保存用户配置的方法及装置 | |
CN102841793A (zh) | 一种软件的升级方法及终端 | |
CN102880530B (zh) | 终端和终端备份及恢复方法 | |
CN114036004B (zh) | 数据备份方法、恢复方法及装置 | |
CN103514063A (zh) | 一种flash数据处理方法以及装置 | |
CN117762455A (zh) | Bios固件文件的更新方法及装置、存储介质、电子设备 | |
CN105938417A (zh) | 更新配置数据的方法及装置 | |
CN108958814A (zh) | 一种多模冗余的嵌入式操作系统启动方法 | |
CN102073523A (zh) | 实现软件版本同步的方法及装置 | |
WO2020094063A1 (zh) | 存储数据的方法、装置、存储介质及电子装置 | |
CN111240895A (zh) | 一种面向OpenStack的节点批量备份系统的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Binjiang District and Hangzhou city in Zhejiang Province Road 310051 No. 68 in the 6 storey building Applicant after: Hangzhou Dipu Polytron Technologies Inc Address before: Binjiang District and Hangzhou city in Zhejiang Province Road 310051 No. 68 in the 6 storey building Applicant before: Hangzhou Dipu Technology Co., Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |