发明内容
本申请提供一种文件系统的保护方法及装置,用以实现对文件系统的文件保护,进而保证文件存储的完整性及正确性。
第一方面,本申请提供了一种文件系统的保护方法,包括:获取校验结果信息,并根据校验结果信息,对第一文件和第二文件进行保护,其中,校验结果信息包括文件系统的第一文件夹的第一文件和文件系统的第二文件夹的第二文件的校验结果,第二文件夹为第一文件夹的备份文件夹,第二文件为第一文件的备份文件。基于该方案,由于可以获取到校验结果信息,该校验结果信息包含了文件系统所需要保护的第一文件夹的第一文件和的第二文件夹的第二文件的校验结果,并根据校验结果信息对第一文件和第二文件进行保护,因而实现了对文件系统的文件保护,有助于保证文件存储的完整性及正确性。
作为一种可能的实现方式,上述根据校验结果信息,对第一文件和第二文件的保护,包括:
若校验结果为第一文件和第二文件均错误、且第三文件夹正确,则将文件系统的第一文件夹和第二文件夹替换为第三文件夹,其中,第三文件夹为第一文件夹和第二文件夹的前一版本文件夹;或者,
若校验结果为第一文件和第二文件均错误、且第三文件夹错误,则将文件系统的第一文件夹和第二文件夹替换为第四文件夹,其中,第四文件夹为第一文件夹和第二文件夹的升级版本文件夹;或者,
若校验结果为第一文件正确、第二文件错误,则将第二文件夹的第二文件替换为第一文件;或者,
若校验结果为第一文件错误、第二文件正确,则将第一文件夹的第一文件替换为第二文件;或者,
若校验结果为第一文件错误、第二文件夹的第二文件不存在,则删除第一文件夹的第一文件;或者,
若校验结果为第一文件正确、第二文件正确,则确定第一文件夹和第二文件夹正确。
基于上述方案,由于根据每种不同的校验结果,对文件系统采取了不同的保护方式,实现了对文件系统的正确保护。
作为一种可能的实现方式,在上述根据校验结果信息,对第一文件和第二文件的保护之前,还可以包括:对校验结果信息进行检测,若校验结果信息中存在第一文件和第二文件均错误的校验结果,则对第三文件夹进行校验,其中,第三文件夹为第一文件夹和第二文件夹的前一版本文件夹。基于该方案,由于先对校验结果信息进行了检测,在检测到校验结果信息中存在第一文件和第二文件均错误的校验结果后,则对第三文件夹进行校验,并根据对第三文件夹的校验结果,确定使用第三文件夹或第四文件夹对第一文件夹和第二文件夹进行替换,如此,有助于避免出现在对第一文件或者第二文件进行互相替换后,又对整个文件夹进行替换的情况,因而可以节约文件系统的资源开销。
作为一种可能的实现方式,上述方法还包括:根据下列文件夹的优先级,选择下列文件夹中的一个文件夹启动系统,其中,优先级从高到低依次为:第一文件夹、第二文件夹、第三文件夹、第四文件夹。基于该方案,在前一文件夹错误并且无法修复时,可以按照该优先级顺序依次使用后序文件夹启动系统,因而有助于保证系统可以根据正确的文件夹进行启动。
作为一种可能的实现方式,上述方法还包括:根据第一文件夹的第一校验信息文件,对第一文件和第二文件进行校验,并得到校验结果,比如:
若第一文件正确、第二文件错误,则校验结果为第一文件正确、第二文件错误;或者,
若第一文件错误、第二文件正确,则校验结果为第一文件错误、第二文件正确;或者,
若第一文件和第二文 件均错误,则根据第二文件夹的第二校验信息文件对第二文件进行校验,并得到校验结果。
作为一种可能的实现方式,上述根据第二文件夹的第二校验信息对第二文件进行校验,并得到校验结果,包括:
若第二文件正确,则校验结果为第一文件错误、第二文件正确;或者,
若第二文件错误,则校验结果为第一文件和第二文件均错误;或者,
若第二文件夹的第二文件不存在,则校验结果为第一文件错误、第二文件夹的第二文件不存在。
基于上述方案,可以根据第一文件、第二文件的不同状况,校验得到不同的校验结果,以便根据不同的校验结果,对文件系统采用相应的保护方式,因而可以更加有效的对文件系统进行保护,有助于保证文件存储的完整性及正确性。
作为一种可能的实现方式,上述方法还包括:在上述根据第一文件夹的第一校验信息文件对第一文件和第二文件进行校验以及根据第二文件夹的第二校验信息文件对第二文件进行校验之前,根据第一校验信息文件的文件头信息,对第一校验信息文件校验正确;在上述根据第二文件夹的第二校验信息对第二文件进行校验之前,根据第二校验信息文件的文件头信息,对第二校验信息文件校验正确。基于该方案,由于对校验信息文件进行了校验,确保了校验信息文件的正确性,并且由于校验结果是根据校验信息文件对文件进行校验得到的,因而在确保了校验信息文件的正确性之后,可以提高校验结果的正确性。
作为一种可能的实现方式,在上述文件系统中,还可以包括第五文件夹、第六文件夹,其中,第六文件夹为第五文件夹的备份文件夹,第五文件夹和第一文件夹为文件系统中的不同的模块对应的文件夹,并且第五文件夹所在的模块和第一文件夹所在的模块处于多模块关联的版本控制模式下。当将文件系统的第一文件夹和第二文件夹进行版本回退时,即将文件系统的第一文件夹和第二文件夹替换为第三文件夹时,相应的,也需要将文件系统的第五文件夹和第六文件夹进行版本回退,即将文件系统的第五文件夹和第六文件夹替换为第七文件夹,其中,第七文件夹为第五文件夹和第六文件夹的前一版本文件夹。或者,当将文件系统的第一文件夹和第二文件夹进行版本升级时,即将文件系统的第一文件夹和第二文件夹替换为第四文件夹时,相应的,也需要将文件系统的第五文件夹和第六文件夹进行版本升级,即将文件系统的第五文件夹和第六文件夹替换为第八文件夹,其中,第八文件夹为第五文件夹和第六文件夹的升级版本文件夹。其中,多模块关联的版本控制模式指的是,文件系统的多个模块的文件夹存在一定关联性,当其中的一个模块的文件夹进行版本回退或者版本升级时,其他模块的文件夹也会进行相应的版本回退或者版本升级,否则会产生多个模块之间的兼容性问题,导致系统出现错误。基于该方案,当文件系统存在多个模块,并将其中一个模块的文件夹进行版本回退或者版本升级时,其他模块的文件夹也会进行相应的版本回退或者版本升级,因而可以避免由于文件系统的不同模块的文件夹的版本不同而导致的文件系统出错的问题,有助于保证文件系统在多模块交互情况下的兼容性。
作为又一种可能的实现方式,在上述文件系统中,还可以包括第五文件夹、第六文件夹,其中,第六文件夹为第五文件夹的备份文件夹,第五文件夹和第一文件夹为文件系统中的不同的模块对应的文件夹,并且第五文件夹所在的模块和第一文件夹所在的模块处于各模块独立的版本控制模式下。当将文件系统的第一文件夹和第二文件夹进行版本回退时,即将文件系统的第一文件夹和第二文件夹替换为第三文件夹时,或者,当将文件系统的第一文件夹和第二文件夹进行版本升级时,即将文件系统的第一文件夹和第二文件夹替换为第四文件夹时,都不需要对文件系统的第五文件夹和第六文件夹进行版本回退或者版本升级。其中,各模块独立的版本控制模式指的是,文件系统的多个模块的文件夹不存在关联性,当其中的一个模块的文件夹进行版本回退或版本升级时,其他模块的文件夹不需要因为该模块的文件夹进行了版本回退或版本升级而进行版本回退或版本升级,即,该其他模块的文件夹的保护方式,是与上述模块的文件夹的保护方式相互独立的。基于该方案,当文件系统存在多个模块,且各个模块的文件夹不存在关联性,对一个模块的文件夹的文件进行版本回退或者版本升级,并不一定需要对其他模块的对应文件夹的对应文件进行版本回退或者版本升级,因而可以节约文件系统的资源开销。
作为一种可能的实现方式,上述文件系统的模块之间采用上述多模块关联的版本控制模式还是上述各模块独立的版本控制模式可按实际需求进行设定,并且可以根据实际需求进行切换。通过对文件系统多个模块之间采用可切换的版本控制模式,有助于避免文件系统多个模块之间出现版本兼容性问题。
第二方面,本申请提供了一种文件系统的保护装置,包括:获取单元,用于获取校验结果信息;保护单元,用于根据校验结果信息,对第一文件和第二文件进行保护,其中,校验结果信息包括文件系统的第一文件夹的第一文件和文件系统的第二文件夹的第二文件的校验结果,第二文件夹为第一文件夹的备份文件夹,第二文件为第一文件的备份文件。基于该装置,由于可以获取到校验结果信息,该校验结果信息包含了文件系统所需要保护的第一文件夹的第一文件和的第二文件夹的第二文件的校验结果,并根据校验结果信息对第一文件和第二文件进行保护,因而实现了对文件系统的文件保护,有助于保证文件存储的完整性及正确性。
作为一种可能的实现方式,上述保护单元,具体用于:
若校验结果为第一文件和第二文件均错误、且第三文件夹正确,则将文件系统的第一文件夹和第二文件夹替换为第三文件夹,其中,第三文件夹为第一文件夹和第二文件夹的前一版本文件夹;或者,
若校验结果为第一文件和第二文件均错误、且第三文件夹错误,则将文件系统的第一文件夹和第二文件夹替换为第四文件夹,其中,第四文件夹为第一文件夹和第二文件夹的升级版本文件夹;或者,
若校验结果为第一文件正确、第二文件错误,则将第二文件夹的第二文件替换为第一文件;或者,
若校验结果为第一文件错误、第二文件正确,则将第一文件夹的第一文件替换为第二文件;或者,
若校验结果为第一文件错误、第二文件夹的第二文件不存在,则删除第一文件夹的第一文件;或者,
若校验结果为第一文件正确、第二文件正确,则确定第一文件夹和第二文件夹正确。
作为一种可能的实现方式,上述装置还可以包括:检测单元,用于在上述根据校验结果信息,对第一文件和第二文件的保护之前,对校验结果信息进行检测。
作为一种可能的实现方式,上述装置还可以包括:第一校验单元,用于当校验结果信息中存在第一文件和第二文件均错误的校验结果时,对第三文件夹进行校验,其中,第三文件夹为第一文件夹和第二文件夹的前一版本文件夹。
作为一种可能的实现方式,上述装置还可以包括:系统启动单元,用于根据下列文件夹的优先级,选择下列文件夹中的一个文件夹启动系统,其中,优先级从高到低依次为:第一文件夹、第二文件夹、第三文件夹、第四文件夹。
作为一种可能的实现方式,上述第一校验单元,还可以用于根据第一文件夹的第一校验信息文件,对第一文件和第二文件进行校验,并得到校验结果,比如:
若第一文件正确、第二文件错误,则校验结果为第一文件正确、第二文件错误;或者,
若第一文件错误、第二文件正确,则校验结果为第一文件错误、第二文件正确;或者,
若第一文件和第二文 件均错误,则根据第二文件夹的第二校验信息文件对第二文件进行校验,并得到校验结果。
作为一种可能的实现方式,上述根据第二文件夹的第二校验信息对第二文件进行校验,并得到校验结果,包括:
若第二文件正确,则校验结果为第一文件错误、第二文件正确;或者,
若第二文件错误,则校验结果为第一文件和第二文件均错误;或者,
若第二文件夹的第二文件不存在,则校验结果为第一文件错误、第二文件夹的第二文件不存在。
作为一种可能的实现方式,上述装置还可以包括:第二校验单元,用于在根据第一文件夹的第一校验信息文件,对第一文件和第二文件进行校验之前,根据第一校验信息文件的文件头信息,对第一校验信息文件校验正确;在根据第二文件夹的第二校验信息对第二文件进行校验之前,根据第二校验信息文件的文件头信息,对第二校验信息文件校验正确。
作为一种可能的实现方式,在上述文件系统中,还可以包括第五文件夹、第六文件夹,其中,第六文件夹为第五文件夹的备份文件夹,第五文件夹和第一文件夹为文件系统中的不同的模块对应的文件夹,并且第五文件夹所在的模块和第一文件夹所在的模块处于多模块关联的版本控制模式下。当将文件系统的第一文件夹和第二文件夹进行版本回退时,即将文件系统的第一文件夹和第二文件夹替换为第三文件夹时,相应的,也需要将文件系统的第五文件夹和第六文件夹进行版本回退,即将文件系统的第五文件夹和第六文件夹替换为第七文件夹,其中,第七文件夹为第五文件夹和第六文件夹的前一版本文件夹。或者,当将文件系统的第一文件夹和第二文件夹进行版本升级时,即将文件系统的第一文件夹和第二文件夹替换为第四文件夹时,相应的,也需要将文件系统的第五文件夹和第六文件夹进行版本升级,即将文件系统的第五文件夹和第六文件夹替换为第八文件夹,其中,第八文件夹为第五文件夹和第六文件夹的升级版本文件夹。其中,多模块关联的版本控制模式指的是,文件系统的多个模块的文件夹存在一定关联性,当其中的一个模块的文件夹进行版本回退或者版本升级时,其他模块的文件夹也会进行相应的版本回退或者版本升级,否则会产生多个模块之间的兼容性问题,导致系统出现错误。
作为又一种可能的实现方式,在上述文件系统中,还可以包括第五文件夹、第六文件夹,其中,第六文件夹为第五文件夹的备份文件夹,第五文件夹和第一文件夹为文件系统中的不同的模块对应的文件夹,并且第五文件夹所在的模块和第一文件夹所在的模块处于各模块独立的版本控制模式下。当将文件系统的第一文件夹和第二文件夹进行版本回退时,即将文件系统的第一文件夹和第二文件夹替换为第三文件夹时,或者,当将文件系统的第一文件夹和第二文件夹进行版本升级时,即将文件系统的第一文件夹和第二文件夹替换为第四文件夹时,都不需要对文件系统的第五文件夹和第六文件夹进行版本回退或者版本升级。其中,各模块独立的版本控制模式指的是,文件系统的多个模块的文件夹不存在关联性,当其中的一个模块的文件夹进行版本回退或版本升级时,其他模块的文件夹不需要因为该模块的文件夹进行了版本回退或版本升级而进行版本回退或版本升级,即,该其他模块的文件夹的保护方式,是与上述模块的文件夹的保护方式相互独立的。
作为一种可能的实现方式,上述装置还可以包括:版本控制单元,用于根据实际需求对上述文件系统的模块之间采用上述多模块关联的版本控制模式还是上述各模块独立的版本控制模式进行设定,并且可以根据实际需求进行切换。
第三方面,本申请提供一种网络设备,包括:
存储器,用于存储程序指令;
处理器,用于调用存储器中存储的程序指令,按照获得的程序执行前述第一方面或第一方面中任一实施例所述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行前述第一方面或第一方面中任一实施例所述的方法。
具体实施方式
为了使本申请的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
如图1所示,为本申请提供的一种可能的系统架构示意图。该系统架构包括文件系统101和处理器102。文件系统101中包括文件夹,处理器102与文件系统101连接,处理器102可以对文件系统101中的文件进行保护。
文件系统101中包括多个文件夹,这里的“多个”指的是两个或两个以上。比如,文件系统101包括第一文件夹、第二文件夹,其中第二文件夹为第一文件夹的备份文件夹。在正常情况下,第二文件夹与第一文件中存储的文件是完全相同的,而在一些出错的情况下,第二文件夹与第一文件夹中的文件可能会出现不一致,因而需要通过本申请提供的文件系统的保护方法对文件系统进行保护,具体的,对文件系统的第一文件夹和第二文件夹进行保护,以使得第一文件夹的文件与第二文件夹的文件保持一致。需要说明的是,这里的第一文件夹可以是文件系统的任一主文件夹,这里的第二文件夹为该任一主文件夹的备份文件夹。并且,将第一文件夹的任一文件称为第一文件,将第一文件夹的该任一文件在第二文件夹中的备份文件称为第二文件。
进一步的,文件系统101还可以包括第三文件夹,该第三文件夹为上述第一文件夹的前一版本文件夹(或称为上一版本文件夹、或称为上一历史版本文件夹)。需要说明的是,实际应用中,作为一种实现方式,第三文件夹可以包括两个文件夹,其中一个文件夹是第一文件夹的前一版本文件夹,另一个文件夹是第二文件夹的前一版本文件夹,并且,在正常情况下,该两个文件夹的文件相同。作为又一种实现方式,第三文件夹也可以只是一个文件夹,该文件夹既是第一文件夹的前一版本文件夹,也是第二文件夹的前一版本文件夹。
进一步的,文件系统101还可以包括第四文件夹,该第四文件夹为上述第一文件夹的升级版本文件夹(或称为更新版本文件夹)。
需要说明的是,由于在文件存储均正确的情况下,上述第一文件夹、第二文件夹、第三文件夹和第四文件夹存储的均是针对文件系统某一功能所需要使用的同一系列的文件,因此本申请中可以将上述存储关于同一系列的文件的第一文件夹、第二文件夹、第三文件夹和第四文件夹作为一个整体,称为一个模块。再比如,文件系统101还包括第五文件夹、第六文件夹、第七文件夹和第八文件夹,其中,第六文件夹为第五文件夹的备份文件夹,第七文件夹为第五文件夹和第六文件夹的前一版本文件夹,第八文件夹为第五文件夹和第六文件夹的升级版本文件夹。在文件存储均正确的情况下,上述第五文件夹、第六文件夹、第七文件夹和第八文件夹存储的均是针对文件系统另一功能所需要使用的同一系列的文件,因此本申请中可以将上述存储关于同一系列的文件的第五文件夹、第六文件夹、第七文件夹和第八文件夹作为一个整体,也称为一个模块。为加以区分,例如可以分别将上述两个模块称为模块1和模块2,其中,模块1包括:第一文件夹、第二文件夹、第三文件夹和第四文件夹,模块2包括:第五文件夹、第六文件夹、第七文件夹和第八文件夹。
如图2所示,为本申请提供的一种文件系统示意图。其中,该图是以文件系统包括模块1和模块2为例。当然,实际应用中,并不限于只包括上述两个模块,还可以包括其他模块,可根据实际需要进行划分。
基于图1所示的系统架构,图3示例性的示出了本申请提供的一种文件系统的保护方法的流程图。该文件系统的保护方法可以由图1中的处理器102执行。在具体应用中,该处理器102例如可以是通信基站处理单元、或服务器、手机、平板电脑、笔记本电脑中的处理器。
该方法包括以下步骤:
步骤301,获取校验结果信息。
其中,校验结果信息包括第一文件夹的第一文件和第二文件夹的第二文件的校验结果。
步骤302,根据校验结果信息,对第一文件和第二文件进行保护。
基于该方案,由于可以获取到校验结果信息,该校验结果信息包含了文件系统所需要保护的第一文件夹的第一文件和的第二文件夹的第二文件的校验结果,并根据校验结果信息对第一文件和第二文件进行保护,因而实现了对文件系统的文件保护,有助于保证文件存储的完整性及正确性。
作为一种可能的实现方式,上述步骤302中,根据校验结果信息,对第一文件和第二文件的保护,可以包括:
情形一,校验结果为第一文件和第二文件均错误,且第三文件夹正确,则将文件系统的第一文件夹和第二文件夹替换为第三文件夹。
作为一种实现方式,当第一文件夹中的第一文件和第二文件夹的第二文件的校验结果为:第一文件错误且第二文件错误,则进一步的再对第三文件夹进行校验,若第三文件夹的校验结果为第三文件夹正确,则使用第三文件夹替换第一文件夹以及第二文件夹,具体的,可以将第一文件夹的文件均替换为第三文件夹的文件,以及将第二文件夹的文件均替换为第三文件夹的文件。
情形二,校验结果为第一文件和第二文件均错误,且第三文件夹错误,则将文件系统的第一文件夹和第二文件夹替换为第四文件夹。
作为一种实现方式,当第一文件夹中的第一文件和第二文件夹的第二文件的校验结果为:第一文件错误且第二文件错误,则进一步的再对第三文件夹进行校验,若第三文件夹的校验结果为第三文件夹错误,则使用第四文件夹替换第一文件夹以及第二文件夹,具体的,可以将第一文件夹的文件均替换为第四文件夹的文件,以及将第二文件夹的文件均替换为第四文件夹的文件。
情形三,校验结果为第一文件正确、第二文件错误,则将第二文件夹的第二文件替换为第一文件。
作为一种实现方式,当第一文件夹中的第一文件和第二文件夹的第二文件的校验结果为:第一文件正确且第二文件错误,则使用第一文件夹中的第一文件替换第二文件夹中的第二文件。
情形四,校验结果为第一文件错误、第二文件正确,则将第一文件夹的第一文件替换为第二文件。
作为一种实现方式,当第一文件夹中的第一文件和第二文件夹的第二文件的校验结果为:第一文件错误且第二文件正确,则使用第二文件夹中的第二文件替换第一文件夹中的第一文件。
情形五,校验结果为第一文件错误、第二文件夹的第二文件不存在,则删除第一文件夹的第一文件。
情形六,校验结果为第一文件正确、第二文件正确,则确定第一文件和第二文件正确。
作为一种实现方式,当第一文件夹中的第一文件和第二文件夹的第二文件的校验结果为:第一文件正确且第二文件正确,则无需对第一文件夹中的第一文件和第二文件夹中的第二文件进行修改(包括文件替换、文件删除等操作)。
作为一种可能的实现方式,在上述根据校验结果信息,对第一文件和第二文件的保护之前,还可以包括:对校验结果信息进行检测,若校验结果信息中存在第一文件和第二文件均错误的校验结果,则对第三文件夹进行校验。若第三文件夹的校验结果为第三文件夹正确,则将文件系统的第一文件夹和第二文件夹替换为第三文件夹。若第三文件夹的校验结果为第三文件夹错误,则将文件系统的第一文件夹和第二文件夹替换为上述第四文件夹。该实施例中,由于校验结果信息包括了第一文件夹和第二文件夹的文件的校验结果,若其中某个校验结果为某文件和该文件对应的备份文件均错误,则无论第一文件夹和第二文件夹的其他文件是否正确,都使用第三文件夹或者第四文件夹中的文件替换第一文件夹和第二文件夹中的所有文件。因而,先对校验结果信息进行检测,若校验结果信息中存在第一文件和第二文件均错误的校验结果,则无需再根据其他校验结果对第一文件夹中的其他文件和第二文件夹中的其他文件进行互相替换,有助于避免出现在对第一文件或者第二文件进行互相替换后,又对整个文件夹进行替换的情况,可以节约文件系统的资源开销。
下面结合附图,对上述文件系统的保护方法进行详细说明。如图4所示,为本申请提供的一种文件系统的保护的具体流程示意图。该方法包括以下步骤:
步骤401,获取校验结果信息。
校验结果信息包括文件系统的第一文件夹的第一文件和文件系统的第二文件夹的第二文件的校验结果。下面以校验结果信息包括第一文件A1和第二文件A2的校验结果、第一文件B1和第二文件B2的校验结果、第一文件C1 和第二文件C2的校验结果、第一文件D1和第二文件D2的校验结果为例进行说明,其中第二文件A2、第二文件B2、第二文件C2、第二文件D2分别是第一文件A1、第一文件B1、第一文件C1、第一文件D1的备份文件。
步骤402,判断校验结果信息中是否存在校验结果为第一文件与第二文件都错误。若是,则跳转到步骤403,若否,则跳转到步骤406。
即,若第一文件A1和第二文件A2的校验结果为:第一文件A1和第二文件A2均错误,和/或,第一文件B1和第二文件B2的校验结果为:第一文件 B1和第二文件B2均错误,和/或,第一文件C1和第二文件C2的校验结果为:第一文件C1和第二文件C2均错误,和/或,第一文件D1和第二文件D2的校验结果为:第一文件D1和第二文件D2均错误,则确定存在校验结果为第一文件与第二文件都错误。
步骤403,判断第三文件夹是否正确。若正确则跳转到步骤404,若错误则跳转到步骤405。
步骤404,将文件系统的第一文件夹和第二文件夹替换为第三文件夹。
即使用第三文件夹中的文件替换第一文件夹中的第一文件A1、第一文件 B1、第一文件C1、第一文件D1,以及使用第三文件夹中的文件替换第二文件夹中的第二文件A2、第二文件B2、第二文件C3、第二文件D4。
步骤405,将文件系统的第一文件夹和第二文件夹替换为第四文件夹。
即使用第四文件夹中的文件替换第一文件夹中的第一文件A1、第一文件 B1、第一文件C1、第一文件D1,以及使用第四文件夹中的文件替换第二文件夹中的第二文件A2、第二文件B2、第二文件C3、第二文件D4。
步骤406,获取一个未读取的校验结果。
从校验结果信息中的校验结果中获取一个还未读取过的校验结果,并跳转到步骤407。
步骤407,判断该校验结果。
判断步骤406中获取的校验结果,若步骤406中获取的校验结果为第一文件错误、第二文件正确,则跳转到步骤408;若步骤406中获取的校验结果为第一文件错误、第二文件不存在,则跳转到步骤409;若步骤406中获取的校验结果为第一文件正确、第二文件错误,则跳转到步骤410;若步骤406中获取的校验结果为第一文件正确、第二文件正确,则跳转到步骤411。
步骤408,将第一文件夹的第一文件替换为第二文件。
比如,当步骤406中获取的校验结果为第一文件A1和第二文件A2的校验结果,且在步骤407判断得到该校验结果为第一文件A1错误,第二文件A2 正确时,则会跳转到该步骤408,并在该步骤408中,使用第二文件A2替换第一文件A1。
在执行步骤408之后,跳转到步骤411。
步骤409,删除第一文件夹的第一文件。
比如,当步骤406中获取的校验结果为第一文件B1和第二文件B2的校验结果,且在步骤407判断得到该校验结果为第一文件B1错误,第二文件B2 不存在时,则会跳转到该步骤409,并在该步骤409中,删除第一文件夹的第一文件B2。
在执行步骤409之后,跳转到步骤411。
步骤410,将第二文件夹的第二文件替换为第一文件。
比如,当步骤406中获取的校验结果为第一文件C1和第二文件C2的校验结果,且在步骤407判断得到该校验结果为第一文件C1正确,第二文件C2 错误时,则会跳转到该步骤410,并在该步骤410中,使用第一文件C1替换第二文件C2。
在执行步骤409之后,跳转到步骤411。
步骤411,判断是否还存在未读取的校验结果。
若存在未读取的校验结果,则返回步骤406,若不存在未读取的校验结果,则此次对文件系统的保护流程结束。
基于图4所示的实施例,可以根据每个文件不同的校验结果,对文件系统的文件采取不同的保护方式,实现了对文件系统的正确保护。
作为一种可能的实现方式,上述步骤302之后,还包括:在对系统启动时,根据下列文件夹的优先级,选择下列文件夹中的一个文件夹启动系统:优先级从高到低依次为:第一文件夹、第二文件夹、第三文件夹、第四文件夹。若第一文件夹中的文件不存在错误,则在对系统启动时,选择第一文件夹来启动系统。若在上述步骤302之后,第一文件夹中的文件仍存在错误(比如,第一文件夹的存储空间不足等原因造成第一文件夹的文件存在错误),无法用于启动系统,则选择第二文件夹启动系统。若在上述步骤302之后,第一文件夹和第二文件夹中的文件仍存在错误(比如,第一文件夹和第二文件夹的存储空间不足等原因造成第一文件夹和第二文件夹的文件存在错误),无法用于启动系统,则选择第三文件夹启动系统。若在上述步骤302之后,第一文件夹、第二文件夹和第三文件夹中的文件仍存在错误(比如,第一文件夹、第二文件夹和第三文件夹的存储空间不足等原因造成第一文件夹、第二文件夹和第三文件夹的文件存在错误),无法用于启动系统,则选择第四文件夹启动系统。若第四文件夹也存在错误(比如,第四文件夹的存储空间不足等原因造成第四文件夹的文件存在错误),无法用于启动系统,则重启系统,并记录重启次数,重启系统后,再根据上述优先级来选择一个文件夹用以启动系统,当重启次数达到某个预设数值后,直接选择第一文件夹启动系统。通过此方法,有助于系统的顺利启动。
作为示例,下面给出上述步骤301中的校验结果信息的一种具体确定方法,包括以下步骤:
步骤A,根据第一文件夹的第一校验信息文件,对第一文件和第二文件进行校验,若第一文件正确、第二文件错误,则校验结果为第一文件正确、第二文件错误;若第一文件错误、第二文件正确,则校验结果为第一文件错误、第二文件正确;若第一文件和第二文 件均错误,则执行以下步骤B。
步骤B,根据第二文件夹的第二校验信息对第二文件进行校验,若第二文件正确,则校验结果为第一文件错误、第二文件正确;若第二文件错误,则校验结果为第一文件和第二文件均错误;若第二文件夹的第二文件不存在,则校验结果为第一文件错误、第二文件夹的第二文件不存在。
通过上述步骤A和步骤B,可以根据第一文件、第二文件的不同状况,校验得到不同的校验结果,以便根据不同的校验结果,对文件系统采用相应的保护方式,因而可以更加有效的对文件系统进行保护,有助于保证文件存储的完整性及正确性。
作为一种可能的实现方式,在上述根据第一文件夹的第一校验信息文件对第一文件和第二文件进行校验之前,还可以根据第一校验信息文件的文件头信息,对第一校验信息文件校验,在上述根据第二文件夹的第二校验信息对第二文件进行校验之前,还可以根据第二校验信息文件的文件头信息,对第二校验信息文件校验。
其中,当第一校验信息文件校验正确且第二校验信息文件校验正确时,则执行上述文件系统的保护方法。当第一校验信息文件校验错误时,则认为第一文件夹中的文件错误,当第二校验信息文件校验错误时,则认为第二文件夹中的文件错误。
下面给出一种校验信息文件的示例。如图5所示,为本申请提供的一种校验信息文件的示意图。其中,校验信息文件(例如可以是第一校验信息文件、或第二校验信息文件)包括文件头信息和校验信息数据。文件头信息用于校验该校验信息文件,校验信息数据包括校验码和文件路径,校验码是根据文件夹的文件进行校验码计算得到的,文件路径用于指示需要校验的文件的位置。
比如,第一文件夹的第一校验信息文件包括文件头信息和校验信息数据,该校验信息数据包括校验码和文件路径,校验码是根据第一文件夹的第一文件进行校验码计算得到的,文件路径用于指示需要校验的文件的位置。
再比如,第二文件夹的第二校验信息文件包括文件头信息和校验信息数据,该校验信息数据包括校验码和文件路径,校验码是根据第二文件夹的第二文件进行校验码计算得到的,文件路径用于指示需要校验的文件的位置。
在具体校验时,使用第一校验信息文件对第一文件夹的第一文件和第二文件夹的第二文件进行校验,具体可以包括以下步骤:
步骤A,获取第一校验信息文件中的校验码A和文件路径。
步骤B,根据该文件路径确定需要校验的第一文件夹中的第一文件以及第二文件夹中的第二文件。
步骤C,根据该第一文件确定校验码A’,根据第二文件确定校验码A”。
校验码A’为第一文件的校验码,校验码A”为第二文件的校验码。
步骤D,根据校验码A、校验码A’和校验码A”,确定校验结果。
其中,若校验码A与校验码A’相同、且校验码A与校验码A”相同,则确定校验结果为第一文件正确、第二文件正确;若校验码A与校验码A’不同、且校验码A与校验码A”相同,则确定校验结果为第一文件错误、第二文件正确;若校验码A与校验码A’相同、且校验码A与校验码A”不同,则确定校验结果为第一文件正确、第二文件错误;若校验码A与校验码A’不同、且校验码A与校验码A”不同,则使用第二校验信息文件对第二文件夹的第二文件进行校验。
使用第二校验信息文件对第二文件夹的第二文件进行校验,具体包括:
步骤E,获取第二校验信息文件中的校验码B和文件路径。
步骤F,根据该文件路径确定需要校验的第二文件夹中的第二文件。
步骤G,根据该第二文件确定校验码B’。
步骤H,根据校验码B、校验码B’确定校验结果。
其中,若校验码B与校验码B’相同,则确定校验结果为第一文件错误、第二文件正确;若校验码B与校验码B’不同,则确定校验结果为第一文件错误、第二文件错误;若根据上述步骤,无法得到校验码B和/或校验码B’,则确定校验结果为第一文件错误、第二文件不存在。
通过上述方法,可以实现对第一文件夹的第一文件及第二文件夹的第二文件进行校验,并得到校验结果。
下面结合图6进行举例说明,图6为本申请提供的一种可能的确定校验结果信息的方法。该方法包括以下步骤:
步骤601,第一校验信息文件校验正确。
即根据第一校验信息文件的文件头信息对第一校验信息文件进行校验,确定第一校验信息文件的校验结果为该第一校验信息文件正确。
步骤602,读取第一校验信息文件中的校验信息数据。
校验信息数据包括校验码和文件路径,校验码是根据文件夹的文件进行校验码计算得到的,文件路径用于指示需要校验的文件的位置。
步骤603,对第一文件和第二文件进行校验。
使用第一校验信息文件中的校验信息数据,对第一文件以及第二文件进行校验。若第一文件正确、第二文件错误,则记录为校验结果1,校验结果1为第一文件正确、第二文件错误。或者,若第一文件错误、第二文件正确,则记录为校验结果2,校验结果2为第一文件错误、第二文件正确。或者,若第一文件正确、第二文件正确,则记录为校验结果0,校验结果0为第一文件正确、第二文件正确。或者,若第一文件错误、第二文件错误,则跳转到步骤604。
步骤604,第二校验信息文件校验正确。
即根据第二校验信息文件的文件头信息对第二校验信息文件进行校验,确定第二校验信息文件的校验结果为该第二校验信息文件正确。
步骤605,判断第二文件夹中是否存在此文件。
若第二校验信息文件的校验信息数据中不存在第二文件的校验码和/或文件路径,或者,根据校验信息数据中的文件路径无法找到需要校验的第二文件,则认为第二文件夹中无此文件,并记录为校验结果4,校验结果4为第一文件错误、第二文件夹的第二文件不存在。若存在此文件则跳转到步骤606。
步骤606,使用第二校验信息文件对第二文件进行校验。
即使用第二校验信息文件中的校验信息数据,对第二文件进行校验。
步骤607,判断第二文件是否校验正确。
若第二文件校验错误,则记录为校验结果3,校验结果3为第一文件和第二文件均错误。或者,若第二文件校验正确,则记录为校验结果2。
步骤608,判断是否对文件夹中的所有文件完成校验。
上述步骤603至步骤607都是针对第一文件夹和第二文件夹的某一个文件进行校验并记录结果,若完成对该文件的校验并记录结果后,则会对第一文件夹和第二文件夹中还未校验的文件按顺序进行校验。若文件夹中的所有文件都完成了校验,则根据记录的校验结果,确定校验结果信息。否则返回步骤603,对下一个第一文件和第二文件进行校验。其中,校验结果信息记录有第一文件以及第一文件对应的第二文件的记录结果。
基于上述对文件的校验方法,可以根据第一文件、第二文件的不同状况,校验得到不同的校验结果,以便根据不同的校验结果,对文件系统采用相应的保护方式,因而可以更加有效的对文件系统进行保护,有助于保证文件存储的完整性及正确性。
在具体实现中,作为一种实现方式,若对文件系统的一个模块采用版本回退、或版本升级的方式进行保护,则也需要对该文件系统的其他模块采用相同的方式进行保护。比如,以图2为例,若对模块1的第一文件夹和第二文件夹进行版本回退,即使用第三文件夹中的文件替换第一文件夹和第二文件夹中的文件,则对模块2也进行版本回退,即使用第七文件夹中的文件替换第五文件夹和第六文件夹中的文件。若对模块1的第一文件夹和第二文件夹进行版本升级,即使用第四文件夹中的文件替换第一文件夹和第二文件夹中的文件,则对模块2也进行版本升级,即使用第八文件夹中的文件替换第五文件夹和第六文件夹中的文件。上述模块1和模块2处于多模块关联的版本控制模式下,其中,多模块关联的版本控制模式指的是,文件系统的多个模块的文件夹存在一定关联性,当其中的一个模块的文件夹进行版本回退或者版本升级时,其他模块的文件夹也会进行相应的版本回退或者版本升级,否则会产生多个模块之间的兼容性问题,导致系统出现错误。对文件系统的多个模块采用多模块关联的版本控制模式可以避免由于文件系统的不同模块的文件夹的版本不同而导致的文件系统出错的问题,有助于保证文件系统在多模块交互情况下的兼容性。
作为又一种实现方式,文件系统还存在各模块独立的版本控制模式,其中各模块独立的版本控制模式指的是,文件系统的多个模块的文件夹不存在关联性,当其中的一个模块的文件夹进行版本回退或者版本升级时,其他模块的文件夹无需进行相应的版本回退或者版本升级。举个例子,若模块1和模块2处于独立的版本控制模式下,则对模块1的第一文件夹和第二文件夹进行版本回退或版本升级时,模块2的第五文件夹和第六文件夹无需进行版本回退或版本升级。对文件系统的多个模块采用各模块独立的版本控制模式,可以使得不存在关联性的模块之间无需进行联动的版本回退或者升级,因而可以节约文件系统的资源开销。
作为一种可能的实现方式,上述文件系统中的各个模块可以根据需要在多模块关联的版本控制模式和各模块独立的版本控制模式之间进行切换。
作为一种可能的实现方式,上述对文件夹进行版本回退或者版本升级时,存在有两种可能的实现方式:实现方式一,完整替换模式,即在对文件夹进行版本回退或者版本升级时,使用整个第三文件夹或者第四文件夹对第一文件夹和第二文件夹进行替换。实现方式二,增量替换模式,即在对文件夹进行版本回退或者版本升级时,只替换出现差别的文件或者增加被替换的文件夹中缺失的文件。
基于上述方法,可以实现对文件系统多个模块之间的保护。
下面以一个具体实施例对上述方法进行说明,比如有一个文件系统存在三个模块,模块X和模块Y处于多模块关联的版本控制模式下,模块Z处于独立的版本控制模式下,模块X中有文件夹1、文件夹2、文件夹3、文件夹4,文件夹2为文件夹1的备份文件夹,文件夹3为文件夹1和文件夹2的上一版本文件夹,文件夹4为文件夹1和文件夹2的升级版本文件夹,文件夹1中包含文件A1、文件B1、文件C1、文件D1、文件E1、文件F1以及校验信息文件1,文件夹2中包含文件A2、文件B2、文件C2、文件D2、文件E2、文件 F2以及校验信息文件2。则可以通过以下方法,实现对文件系统的保护:
获取校验信息文件1,根据其文件头信息,对校验信息文件1进行校验。
在校验信息文件1校验结果为正确后,根据校验信息文件1的校验信息数据,对文件A1和文件A2进行校验、对文件B1和文件B2进行校验、对文件 C1和文件C2进行校验、对文件D1和文件D2进行校验、对文件E1和文件 E2进行校验、对文件F1和文件F2进行校验。得到校验结果信息1,该校验结果信息1比如可以包括以下校验结果:
校验结果1:文件A1正确、且文件A2正确。
校验结果2:文件B1正确、且文件B2错误。
校验结果3:文件C1错误、且文件C2正确。
校验结果4:文件D1错误、且文件D2正确。
其中校验结果4为,根据校验信息文件1对文件D1、文件D2进行校验,并确定文件D1错误、文件D2错误,此时根据校验信息文件2的文件头信息,对校验信息文件2进行校验,在校验信息文件2校验结果为正确后,根据校验信息文件2的校验信息数据,对文件D2进行校验,确定文件D2正确。因而得到校验结果4:文件D1错误、且文件D2正确。
校验结果5:文件E1错误、且文件E2错误。
其中校验结果5为,根据校验信息文件1对文件E1、文件E2进行校验,并确定文件E1错误、文件E2错误,此时根据校验信息文件2的文件头信息,对校验信息文件2进行校验,在校验信息文件2校验结果为正确后,根据校验信息文件2的校验信息数据,对文件E2进行校验,确定文件E2错误。因而得到校验结果5:文件E1错误、且文件E2正确。
校验结果6:文件F1错误、且文件F2不存在。
其中校验结果6为,根据校验信息文件1对文件F1、文件F2进行校验,并确定文件F1错误、文件F2错误,此时根据校验信息文件2的文件头信息,对校验信息文件2进行校验,在校验信息文件2校验结果为正确后,根据校验信息文件2的校验信息数据,对文件F2进行校验,由于校验信息文件2不存在文件F2的校验码和/或文件路径,或者,根据校验信息数据中的文件路径无法找到需要校验的文件F2,则认为文件夹2中无此文件F2,因而得到校验结果6:文件F1错误、且文件F2不存在。
因此该校验结果信息1包括以下校验结果:文件A1正确、且文件A2正确;文件B1正确、且文件B2错误;文件C1错误、且文件C2正确;文件D1 错误、且文件D2正确;文件E1错误、且文件E2错误;文件F1错误、且文件F2不存在;
根据上述校验结果信息1,由于该校验结果信息1存在文件E1错误、文件E2错误的校验结果,因而需要对文件夹3进行校验。若文件夹3正确,则使用文件夹3的文件替换文件夹1的文件和文件夹2的文件,即对模块1进行了版本回退。此时,模块2中的相应文件夹也要进行相对应的文件替换,即需要对模块2进行相应的版本回退,而模块3中的相应文件夹无需进行替换。若文件夹3错误,则使用文件夹4的文件替换文件夹1的文件和文件夹2的文件,即对模块1进行了版本升级。此时,模块2中的相应文件夹也要进行相对应的文件替换,即需要对模块2进行相应的版本升级,而模块3中的相应文件夹无需进行替换。
在上述实施例中,若文件E1和文件E2的校验结果为正确,则校验结果5 为文件E1正确、且文件E2正确,此时得到的校验结果信息为校验结果信息2,校验结果信息2包括以下校验结果:文件A1正确、且文件A2正确;文件B1 正确、且文件B2错误;文件C1错误、且文件C2正确;文件D1错误、且文件D2正确;文件E1正确、且文件E2正确;文件F1错误、文件F2不存在;
根据校验结果信息2,由于文件A1正确、文件A2正确、文件E1正确、文件E2正确,因而无需对文件A1、文件A2、文件E1、文件E2进行替换;由于文件B1正确、文件B2错误,因而将文件B2替换为B1;由于文件C1错误、文件C2正确,因而将文件C1替换为文件C2;由于文件D1错误、文件 D2正确,因而将文件D1替换为文件D2;由于文件F1错误、文件F2不存在,因而删除文件F1。
并且根据校验结果信息2对文件系统进行保护的过程中,未对模块1进行版本升级或者版本回退,因此,模块2和模块3无需进行相应的文件替换。
根据上述对文件系统的文件保护的结果,由于第一文件夹中的文件都为正确,因而可以选择第一文件夹启动系统。当然,若此时第一文件夹仍然因为某些特殊原因存在错误,则选择第二文件夹启动系统,其中,某些特殊原因可能为文件夹的存储空间不足或者文件夹的功能损坏等,若第二文件夹也存在错误,则选择第三文件夹启动系统,若第三文件夹也存在错误,则选择第四文件夹启动系统。若第四文件夹也存在错误,则重启系统,并重复上述过程,直到重启次数达到预设值,在重启系统达到预设值之后,直接选择第一文件夹启动系统。
基于上述方案,由于对文件系统的文件进行了校验,并得到了针对每个文件及其备份文件的校验结果,并根据每个不同的校验结果,对文件系统的文件进行保护,进而文件存储的完整性及正确性。
基于同一发明构思,图7示例性的示出了本申请提供的一种文件系统的保护装置,该装置可以执行文件系统的保护方法的流程。
获取单元703,用于获取校验结果信息。
其中,校验结果信息包括第一文件夹的第一文件和第二文件夹的第二文件的校验结果。
保护单元705,用于根据校验结果信息,对第一文件和第二文件进行保护。具体的可以用于:
情形一,校验结果为第一文件和第二文件均错误,且第三文件夹正确,则将文件系统的第一文件夹和第二文件夹替换为第三文件夹。
作为一种实现方式,当第一文件夹中的第一文件和第二文件夹的第二文件的校验结果为:第一文件错误且第二文件错误,则进一步的再对第三文件夹进行校验,若第三文件夹的校验结果为第三文件夹正确,则使用第三文件夹替换第一文件夹以及第二文件夹,具体的,可以将第一文件夹的文件均替换为第三文件夹的文件,以及将第二文件夹的文件均替换为第三文件夹的文件。
情形二,校验结果为第一文件和第二文件均错误,且第三文件夹错误,则将文件系统的第一文件夹和第二文件夹替换为第四文件夹。
作为一种实现方式,当第一文件夹中的第一文件和第二文件夹的第二文件的校验结果为:第一文件错误且第二文件错误,则进一步的再对第三文件夹进行校验,若第三文件夹的校验结果为第三文件夹错误,则使用第四文件夹替换第一文件夹以及第二文件夹,具体的,可以将第一文件夹的文件均替换为第四文件夹的文件,以及将第二文件夹的文件均替换为第四文件夹的文件。
情形三,校验结果为第一文件正确、第二文件错误,则将第二文件夹的第二文件替换为第一文件。
作为一种实现方式,当第一文件夹中的第一文件和第二文件夹的第二文件的校验结果为:第一文件正确且第二文件错误,则使用第一文件夹中的第一文件替换第二文件夹中的第二文件。
情形四,校验结果为第一文件错误、第二文件正确,则将第一文件夹的第一文件替换为第二文件。
作为一种实现方式,当第一文件夹中的第一文件和第二文件夹的第二文件的校验结果为:第一文件错误且第二文件正确,则使用第二文件夹中的第二文件替换第一文件夹中的第一文件。
情形五,校验结果为第一文件错误、第二文件夹的第二文件不存在,则删除第一文件夹的第一文件。
情形六,校验结果为第一文件正确、第二文件正确,则确定第一文件和第二文件正确。
作为一种实现方式,当第一文件夹中的第一文件和第二文件夹的第二文件的校验结果为:第一文件正确且第二文件正确,则无需对第一文件夹中的第一文件和第二文件夹中的第二文件进行修改(包括文件替换、文件删除等操作)。
可选地,上述装置还可以包括:检测单元704,用于在上述根据校验结果信息,对第一文件和第二文件的保护之前,对校验结果信息进行检测。
可选地,上述装置还可以包括:第一校验单元702,用于当校验结果信息中存在第一文件和第二文件均错误的校验结果时,对第三文件夹进行校验,其中,第三文件夹为第一文件夹和第二文件夹的前一版本文件夹。上述保护单元 705根据第一校验单元702对第三文件夹的校验结果,来对文件系统中的文件进行保护,具体地,若第三文件夹的校验结果为第三文件夹正确,则将文件系统的第一文件夹和第二文件夹替换为第三文件夹。若第三文件夹的校验结果为第三文件夹错误,则将文件系统的第一文件夹和第二文件夹替换为上述第四文件夹。
可选地,上述装置还可以包括:系统启动单元706,用于在对系统启动时,根据下列文件夹的优先级,选择下列文件夹中的一个文件夹启动系统:优先级从高到低依次为:第一文件夹、第二文件夹、第三文件夹、第四文件夹。若第一文件夹中的文件不存在错误,则在对系统启动时,选择第一文件夹来启动系统。若第一文件夹中的文件存在错误,无法用于启动系统,则选择第二文件夹启动系统。若第一文件夹、第二文件夹中的文件存在错误,无法用于启动系统,则选择第三文件夹启动系统。若第一文件夹、第二文件夹、第三文件夹中的文件存在错误,无法用于启动系统,则选择第四文件夹启动系统。若第四文件夹也存在错误,无法用于启动系统,则重启系统,并记录重启次数,重启系统后,再根据上述优先级来选择一个文件夹用以启动系统,当重启次数达到某个预设数值后,直接选择第一文件夹启动系统。
可选地,上述获取单元703获取的校验结果信息,可以由上述第一校验单元702对第一文件夹中的文件和第二文件夹中的文件进行校验得到,即上述第一校验单元702还可以用于:根据第一文件夹的第一校验信息文件,对第一文件和第二文件进行校验,若第一文件正确、第二文件错误,则校验结果为第一文件正确、第二文件错误;若第一文件错误、第二文件正确,则校验结果为第一文件错误、第二文件正确;若第一文件和第二文 件均错误,则根据第二文件夹的第二校验信息对第二文件进行校验,若第二文件正确,则校验结果为第一文件错误、第二文件正确;若第二文件错误,则校验结果为第一文件和第二文件均错误;若第二文件夹的第二文件不存在,则校验结果为第一文件错误、第二文件夹的第二文件不存在。
可选地,上述装置还可以包括:第二校验单元701,用于在根据第一文件夹的第一校验信息文件,对第一文件和第二文件进行校验之前,根据第一校验信息文件的文件头信息,对第一校验信息文件校验;在根据第二文件夹的第二校验信息对第二文件进行校验之前,根据第二校验信息文件的文件头信息,对第二校验信息文件校验。
其中,当第一校验信息文件校验正确且第二校验信息文件校验正确时,则执行上述文件系统的保护方法。当第一校验信息文件校验错误时,则认为第一文件夹中的文件错误,当第二校验信息文件校验错误时,则认为第二文件夹中的文件错误。
可选地,上述装置还可以包括版本控制单元707,用于根据实际需求对上述文件系统的模块之间采用上述多模块关联的版本控制模式还是上述各模块独立的版本控制模式进行设定,并且可以根据实际需求进行切换。
其中,多模块关联的版本控制模式指的是,文件系统的多个模块的文件夹存在一定关联性,当其中的一个模块的文件夹进行版本回退或者版本升级时,其他模块的文件夹也会进行相应的版本回退或者版本升级,否则会产生多个模块之间的兼容性问题,导致系统出现错误。比如,在上述文件系统中,还可以包括第五文件夹、第六文件夹,其中,第六文件夹为第五文件夹的备份文件夹,第五文件夹和第一文件夹为文件系统中的不同的模块对应的文件夹,并且第五文件夹所在的模块和第一文件夹所在的模块处于多模块关联的版本控制模式下。当将文件系统的第一文件夹和第二文件夹进行版本回退时,即将文件系统的第一文件夹和第二文件夹替换为第三文件夹时,相应的,也需要将文件系统的第五文件夹和第六文件夹进行版本回退,即将文件系统的第五文件夹和第六文件夹替换为第七文件夹,其中,第七文件夹为第五文件夹和第六文件夹的前一版本文件夹。或者,当将文件系统的第一文件夹和第二文件夹进行版本升级时,即将文件系统的第一文件夹和第二文件夹替换为第四文件夹时,相应的,也需要将文件系统的第五文件夹和第六文件夹进行版本升级,即将文件系统的第五文件夹和第六文件夹替换为第八文件夹,其中,第八文件夹为第五文件夹和第六文件夹的升级版本文件夹。
其中,各模块独立的版本控制模式指的是,文件系统的多个模块的文件夹不存在关联性,当其中的一个模块的文件夹进行版本回退或版本升级时,其他模块的文件夹不需要因为该模块的文件夹进行了版本回退或版本升级而进行版本回退或版本升级,即,该其他模块的文件夹的保护方式,是与上述模块的文件夹的保护方式相互独立的。比如,在上述文件系统中,还可以包括第五文件夹、第六文件夹,其中,第六文件夹为第五文件夹的备份文件夹,第五文件夹和第一文件夹为文件系统中的不同的模块对应的文件夹,并且第五文件夹所在的模块和第一文件夹所在的模块处于各模块独立的版本控制模式下。当将文件系统的第一文件夹和第二文件夹进行版本回退时,即将文件系统的第一文件夹和第二文件夹替换为第三文件夹时,或者,当将文件系统的第一文件夹和第二文件夹进行版本升级时,即将文件系统的第一文件夹和第二文件夹替换为第四文件夹时,都不需要对文件系统的第五文件夹和第六文件夹进行版本回退或者版本升级。
可选地,上述对文件夹进行版本回退或者版本升级时,存在有两种可能的实现方式:
实现方式一,完整替换模式,即在对文件夹进行版本回退或者版本升级时,使用整个第三文件夹或者第四文件夹对第一文件夹和第二文件夹进行替换。
实现方式二,增量替换模式,即在对文件夹进行版本回退或者版本升级时,只替换出现差别的文件或者增加被替换的文件夹中缺失的文件。
上述装置所涉及的与本申请提供的技术方案相关的概念,解释和详细说明及其它步骤请参见前述文件系统的保护方法或其它实施例中关于这些内容的描述,此处不做赘述。
基于与上述实施例相同的构思,本申请还提供一种网络设备。
图8为本申请提供的一种网络设备的结构示意图。如图8所示,该网络设备800包括:
存储器801,用于存储程序指令;
处理器802,用于调用所述存储器中存储的程序指令,按照获得的程序执行前述任一实施例中所述的文件系统的保护方法。
基于与上述实施例相同的构思,本申请还提供一种计算机存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行前述任一实施例中所述的文件系统的保护方法。
需要说明的是,本申请中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。在本申请中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线 (例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
本领域内的技术人员应明白,本申请可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。