文件系统保护方法、装置、系统及计算机可读存储介质与流程

文档序号:18464107发布日期:2019-08-17 02:17阅读:156来源:国知局
文件系统保护方法、装置、系统及计算机可读存储介质与流程

本发明涉及存储卡技术领域,尤其涉及一种文件系统保护方法、装置、系统及计算机可读存储介质。



背景技术:

随着手机行业的不断发展,sd卡(securedigitalmemorycard)作为手机扩展存储的重要方式,越来越多的用户会将自己的数据保存到sd卡上,一方面大容量的sd卡的价格不是很高,大多数用户都能承受的起,另一方面大部分的手机都支持sd卡热插拔,使sd卡上保存的图片、视频等可以很方便的拷贝,sd卡基本成为android手机用户的标配,其重要性不言而喻。

目前手机对sd卡的挂载主要有以下几个步骤:a、首先sd卡插入到卡槽中,硬件驱动检测到有新硬件插入,上电后,软件驱动就检测到sd卡的插入事件,并将该事件上报;b、hal层(hardwareabstractionlayer,硬件抽象层)接收到上报的sd卡插入事件后,再经信息发送到框架层;c、框架层再对vold(volumedaemon,大容量存储守护进程)下发mount(挂载命令)的指令进行挂载。然后用户就可以正常使用该sd卡了。

一般情况下,随着sd卡的使用,尤其是支持热插拔的情况下,sd卡的文件系统有一定的概率会出现损坏,导致sd卡无法进行挂载。用户只有通过格式化sd卡来构建新的文件系统,这样用户之前保存的数据就会全部丢失,用户体验非常差。



技术实现要素:

有鉴于此,本发明的目的在于提供一种文件系统保护方法、装置、系统及计算机可读存储介质,通过将sd卡等存储卡的文件系统预先备份到移动终端,当存储卡挂载失败时,可以将备份的文件系统下载到存储卡中,这样就可以达到修复存储卡的文件系统,而不擦除用户数据的目的,提高用户体验。

本发明解决上述技术问题所采用的技术方案如下:

根据本发明的一个方面,提供的一种文件系统保护方法,包括:

获取存储卡的文件系统,将所述文件系统打包并备份到移动终端中;

确定所述存储卡上的文件系统损坏后,从所述移动终端中下载备份的文件系统,对所述存储卡进行修复。

可选地,所述获取存储卡的文件系统,将所述文件系统打包并备份到移动终端中包括:

所述文件系统包括系统分区和用户数据;

当存储卡第一次插入到移动终端时,获取存储卡的系统分区,将所述系统分区打包并备份到移动终端中;

当存储卡正常使用时,在预设的备份时间点,将所述文件系统的系统分区和用户数据进行同步整理,使所述系统分区和所述用户数据相对应;将所述系统分区打包并备份到移动终端中,并替换之前的备份文件。

可选地,所述确定所述存储卡上的文件系统损坏后包括:

对所述存储卡进行检测,判断所述存储卡是否通过检测,若是,则所述存储卡正常挂载到所述移动终端上;

若未通过检测,则判断所述存储卡是否硬件损坏,若是,则所述存储卡无法正常使用,否则,表示所述文件系统损坏。

可选地,所述将所述系统分区打包并备份到移动终端中,并替换之前的备份文件包括:

将所述系统分区打包,打包得到的备份文件的名称设置为与所述系统分区对应的存储卡的通用唯一识别码uuid;

当所述移动终端中包含相同名称的备份文件时,替换备份时间在前的备份文件。

根据本发明的另一个方面,提供的一种文件系统保护装置,包括:

备份模块,用于获取存储卡的文件系统,将所述文件系统打包并备份到移动终端中;

修复模块,用于确定所述存储卡上的文件系统损坏后,从所述移动终端中下载备份的文件系统,对所述存储卡进行修复。

可选地,所述备份模块包括:

分区单元,所述文件系统包括系统分区和用户数据;

首次备份单元,用于当存储卡第一次插入到移动终端时,获取存储卡的系统分区,将所述系统分区打包并备份到移动终端中;

定时备份单元,用于当存储卡正常使用时,在预设的备份时间点,将所述文件系统的系统分区和用户数据进行同步整理,使所述系统分区和所述用户数据相对应;将所述系统分区打包并备份到移动终端中,并替换之前的备份文件。

可选地,所述修复模块包括:

检测单元,用于对所述存储卡进行检测,判断所述存储卡是否通过检测,若是,则所述存储卡正常挂载到所述移动终端上;

损坏判断单元,用于当存储卡未通过检测时,则判断所述存储卡是否硬件损坏,若是,则所述存储卡无法正常使用,否则,表示所述文件系统损坏;

修复单元,用于从所述移动终端中下载备份的文件系统,对所述存储卡进行修复。

可选地,所述备份模块还包括:

命名单元,用于将所述系统分区打包,打包得到的备份文件的名称设置为与所述系统分区对应的存储卡的通用唯一识别码uuid;

替换单元,用于当所述移动终端中包含相同名称的备份文件时,替换备份时间在前的备份文件。

根据本发明的再一个方面,提供的一种文件系统保护系统,包括存储器、处理器和至少一个被存储在所述存储器中并被配置为由所述处理器执行的应用程序,所述应用程序被配置为用于执行以上所述的文件系统保护方法。

根据本发明的再一个方面,提供的一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现以上所述的文件系统保护方法。

本发明实施例的一种文件系统保护方法、装置、系统及计算机可读存储介质,该方法包括:获取存储卡的文件系统,将所述文件系统打包并备份到移动终端中;确定所述存储卡上的文件系统损坏后,从所述移动终端中下载备份的文件系统,对所述存储卡进行修复,通过将存储卡的文件系统预先备份到移动终端,当存储卡挂载失败时,可以将备份的文件系统下载到存储卡中,这样就可以达到修复存储卡的文件系统,而不擦除用户数据的目的,提高用户体验。

附图说明

图1为本发明实施例一提供的一种文件系统保护方法流程图;

图2为图1中步骤s20的方法流程图;

图3为本发明实施例二提供的一种文件系统保护装置示范性结构框图;

图4为图3中备份模块的一种示范性结构框图;

图5为图3中判断模块的一种示范性结构框图;

图6为图3中备份模块的另一种示范性结构框图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

实施例一

如图1所示,在本实施例中,一种文件系统保护方法,包括:

s10、获取存储卡的文件系统,将所述文件系统打包并备份到移动终端中;

s20、确定所述存储卡上的文件系统损坏后,从所述移动终端中下载备份的文件系统,对所述存储卡进行修复。

在本实施例中,通过将存储卡的文件系统预先备份到移动终端,当存储卡挂载失败时,可以将备份的文件系统下载到存储卡中,这样就可以达到修复存储卡的文件系统,而不擦除用户数据的目的,提高用户体验。

在本实施例中,所述存储卡包括:sd卡(securedigitalmemorycard)、mini-sd卡、tf卡(transflash)、mmc卡(multimediacard)、ms卡(memorystick)、cf卡(compactflash)等,下面,以sd卡为例介绍本实施例。

在本实施例中,sd卡的存储结构包括系统分区部分和用户数据部分,相应地sd卡的文件系统也包括系统分区和用户数据两部分,系统分区部分又包含了mbr区、保留扇区、fat文件分配表、fdt文件根目录区,而用户数据部分主要用来保存用户在sd卡上保存的文件数据,即用户数据区。

在本实施例中,所述步骤s10包括:

当sd卡第一次插入到移动终端时,获取sd卡的系统分区,将所述系统分区打包并备份到移动终端中;

当第一次插入sd卡后,移动终端将会自动触发文件系统备份功能,提示用户将对文件系统进行备份,即将sd卡上的系统分区部分进行备份,打包成一个img文件保存到移动终端的某一个分区上,系统分区部分是从mbr区开始到用户数据部分结束的,由于在sd卡上数据的存储都是二进制的地址,所以,备份的时候读取sd卡上从mbr分区的开始地址到用户数据部分的开始地址,这部分就是系统分区的大小,读取后再将其打包成img文件,待需要的时候进行下载。进行下载时,首先将系统分区打包的img文件,从mbr分区的起始地址开始下载烧录到sd卡对应的分区部分,这样就可以恢复sd卡的系统分区部分的文件,达到恢复sd卡系统分区的目的,即该sd卡就可以正常识别使用了,而之前的用户数据也不会丢失。

当sd卡正常使用时,在预设的备份时间点,将所述文件系统的系统分区和用户数据进行同步整理,使所述系统分区和所述用户数据相对应;将所述系统分区打包并备份到移动终端中,并替换之前的备份文件。

在本实施例中,移动终端将对sd卡进行定时备份,通过备份时间设置模块来设置备份文件的时间点,以便于确定多长时间或者在哪个时间点进行备份操作,该过程是个周期性的备份过程,比如:时间间隔可以设置为一天、一周等,具体时间点也可以预先设定;默认的备份时间点是用户不操作移动终端的时间,比如夜晚12点至凌晨5点之间的某个时间点。

在本实施例中,在备份操作前,需要先对sd卡的文件系统进行整理,保证用户最新操作的文件数据和文件系统中记录保持一致。因为每一次操作有对文件数据的操作,文件系统中就会有对应的记录信息,只有两个保持一致时,恢复文件系统后,数据区的文件才能正常使用,比如,对数据区文件的打开、查看和修改等操作,否则文件系统就无法识别有变化的数据区的文件,这样就保证了数据的完整性。

如图2所示,在本实施例中,所述步骤s20包括:

s21、对所述sd卡进行检测;

s22、判断所述sd卡是否通过检测,若是,则s23、所述sd卡正常挂载到所述移动终端上;

若未通过检测,则s24、判断所述sd卡是否硬件损坏,若是,则s25、所述sd卡无法正常使用,否则,s26、表示所述文件系统损坏。

在本实施例中,对sd卡的检测包括驱动检测和文件系统检测,当这两项都检测通过后,才能正常进行挂载,当有某一方面检测故障时,该sd卡就无法挂载。其中驱动检测是用来检测sd卡是否存在硬件故障。

在本实施例中,所述将所述系统分区打包并备份到移动终端中包括:

将所述系统分区打包,打包得到的备份文件的名称设置为与所述系统分区对应的sd卡的通用唯一识别码uuid;

当所述移动终端中包含相同名称的备份文件时,替换备份时间在前的备份文件。

在本实施例中,采用sd卡的uuid来进行备份文件命名的方法,可以保证当移动终端有多张sd卡时,也可以采用本方法对每张sd卡分别进行保护,每个sd卡的uuid都是不同的,所以,在生产备份文件的时候,采用sd卡中唯一的标识uuid作为文件名称,这样在还原时就可以通过uuid来查找对应的还原文件,保证还原文件的唯一性。这样就保证了多张sd卡情况下的还原的准确性。

而且,每次备份都采用sd卡的uuid来进行命名,可以使每个备份文件都保持备份文件的时效性,备份时间靠前的备份文件都被备份时间靠后的备份文件所代替,保证了备份文件都是最新的。

实施例二

如图3所示,在本实施例中,一种文件系统保护装置,包括:

备份模块10,用于获取存储卡的文件系统,将所述文件系统打包并备份到移动终端中;

修复模块20,用于确定所述存储卡上的文件系统损坏后,从所述移动终端中下载备份的文件系统,对所述存储卡进行修复。

在本实施例中,通过将存储卡的文件系统预先备份到移动终端,当存储卡挂载失败时,可以将备份的文件系统下载到存储卡中,这样就可以达到修复存储卡的文件系统,而不擦除用户数据的目的,提高用户体验。

在本实施例中,所述存储卡包括:sd卡(securedigitalmemorycard)、mini-sd卡、tf卡(transflash)、mmc卡(multimediacard)、ms卡(memorystick)、cf卡(compactflash)等,下面,以sd卡为例介绍本实施例。

在本实施例中,sd卡的存储结构包括系统分区部分和用户数据部分,相应地sd卡的文件系统也包括系统分区和用户数据两部分,系统分区部分又包含了mbr区、保留扇区、fat文件分配表、fdt文件根目录区,而用户数据部分主要用来保存用户在sd卡上保存的文件数据,即用户数据区。

如图4所示,在本实施例中,所述备份模块包括:

分区单元11,所述文件系统包括系统分区和用户数据;

首次备份单元12,用于当sd卡第一次插入到移动终端时,获取sd卡的系统分区,将所述系统分区打包并备份到移动终端中;

当第一次插入sd卡后,移动终端将会自动触发文件系统备份功能,提示用户将对文件系统进行备份,即将sd卡上的系统分区部分进行备份,打包成一个img文件保存到移动终端的某一个分区上,系统分区部分是从mbr区开始到用户数据部分结束的,由于在sd卡上数据的存储都是二进制的地址,所以,备份的时候读取sd卡上从mbr分区的开始地址到用户数据部分的开始地址,这部分就是系统分区的大小,读取后再将其打包成img文件,待需要的时候进行下载。进行下载时,首先将系统分区打包的img文件,从mbr分区的起始地址开始下载烧录到sd卡对应的分区部分,这样就可以恢复sd卡的系统分区部分的文件,达到恢复sd卡系统分区的目的,即该sd卡就可以正常识别使用了,而之前的用户数据也不会丢失。

定时备份单元13,用于当sd卡正常使用时,在预设的备份时间点,将所述文件系统的系统分区和用户数据进行同步整理,使所述系统分区和所述用户数据相对应;将所述系统分区打包并备份到移动终端中,并替换之前的备份文件。

在本实施例中,移动终端将对sd卡进行定时备份,通过备份时间设置模块来设置备份文件的时间点,以便于确定多长时间或者在哪个时间点进行备份操作,该过程是个周期性的备份过程,比如:时间间隔可以设置为一天、一周等,具体时间点也可以预先设定;默认的备份时间点是用户不操作移动终端的时间,比如夜晚12点至凌晨5点之间的某个时间点。

在本实施例中,在备份操作前,需要先对sd卡的文件系统进行整理,保证用户最新操作的文件数据和文件系统中记录保持一致。因为每一次操作有对文件数据的操作,文件系统中就会有对应的记录信息,只有两个保持一致时,恢复文件系统后,数据区的文件才能正常使用,比如,对数据区文件的打开、查看和修改等操作,否则文件系统就无法识别有变化的数据区的文件,这样就保证了数据的完整性。

如图5所示,在本实施例中,所述修复模块包括:

检测单元21,用于对所述sd卡进行检测,判断所述sd卡是否通过检测,若是,则所述sd卡正常挂载到所述移动终端上;

损坏判断单元22,用于当sd卡未通过检测时,则判断所述sd卡是否硬件损坏,若是,则所述sd卡无法正常使用,否则,表示所述文件系统损坏;

修复单元23,用于从所述移动终端中下载备份的文件系统,对所述存储卡进行修复。

在本实施例中,对sd卡的检测包括驱动检测和文件系统检测,当这两项都检测通过后,才能正常进行挂载,当有某一方面检测故障时,该sd卡就无法挂载。其中驱动检测是用来检测sd卡是否存在硬件故障。

如图6所示,在本实施例中,所述备份模块还包括:

命名单元14,用于将所述系统分区打包,打包得到的备份文件的名称设置为与所述系统分区对应的sd卡的通用唯一识别码uuid;

替换单元15,用于当所述移动终端中包含相同名称的备份文件时,替换备份时间在前的备份文件。

在本实施例中,采用sd卡的uuid来进行备份文件命名的方法,可以保证当移动终端有多张sd卡时,也可以采用本方法对每张sd卡分别进行保护,每个sd卡的uuid都是不同的,所以,在生产备份文件的时候,采用sd卡中唯一的标识uuid作为文件名称,这样在还原时就可以通过uuid来查找对应的还原文件,保证还原文件的唯一性。这样就保证了多张sd卡情况下的还原的准确性。

而且,每次备份都采用sd卡的uuid来进行命名,可以使每个备份文件都保持备份文件的时效性,备份时间靠前的备份文件都被备份时间靠后的备份文件所代替,保证了备份文件都是最新的。

实施例三

在本实施例中,一种文件系统保护系统,包括存储器、处理器和至少一个被存储在所述存储器中并被配置为由所述处理器执行的应用程序,所述应用程序被配置为用于执行实施例一所述的文件系统保护方法。

实施例四

本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述文件系统保护方法实施例中任一所述的方法实施例。

需要说明的是,上述装置、系统实和计算机可读存储介质实施例与方法实施例属于同一构思,其具体实现过程详见方法实施例,且方法实施例中的技术特征在装置实施例中均对应适用,这里不再赘述。

本发明实施例的一种文件系统保护方法、装置、系统及计算机可读存储介质,该方法包括:获取存储卡的文件系统,将所述文件系统打包并备份到移动终端中;确定所述存储卡上的文件系统损坏后,从所述移动终端中下载备份的文件系统,对所述存储卡进行修复,通过将sd卡的文件系统预先备份到移动终端,当sd卡挂载失败时,可以将备份的文件系统下载到sd卡中,这样就可以达到修复sd卡的文件系统,而不擦除用户数据的目的,提高用户体验。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件来实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。本领域技术人员不脱离本发明的范围和实质内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。

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