一种数据恢复方法及系统技术方案

技术编号:6983669 阅读:197 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及数据恢复方法及系统,用于苹果MAC?OSX下的HFS+文件系统的恢复。所述方法包括:A、读取日志;B、分析日志;C、利用日志中包含的文件描述信息来恢复文件。其中,所述文件描述信息包括:文件名、文件路径、创建时间、以及文件的数据区;其中,所述文件路径包括文件所在目录项的ID和父目录项ID。实施本发明专利技术的数据恢复方法及系统,具有以下有益效果:通过HFS+文件系统根据日志来进行数据恢复,实现了MAC下“快速扫描”的效果,解决了MAC下恢复数据文件没有原始文件名,没有文件路径等诸多缺点,速度也比“深度扫描”快很多倍。

【技术实现步骤摘要】

本专利技术涉及计算机系统,更具体地说,涉及一种用于MAC OS X下的HFS+文件系统的数据恢复方法及系统,以找回被删除的文件。
技术介绍
目前数据恢复一般分“深度扫描”和“快速扫描”。“深度扫描”根据特定文件的标识来对整个磁盘进行扫描,缺点是扫描速度慢,没有文件名、文件路径、文件创建时间等信息。“快速扫描”根据文件系统的文件描述信息来恢复。弥补了深度扫描的缺点,扫描速度快,有文件名、文件路径、文件创建时间等信息。Windows平台下的文件系统一般是NTFS、fat32等,用户删除文件以后,只在文件描述信息里更改为已经删除。在恢复的时候只需要重新设为没删除,即可达到“快速扫描” 恢复文件的目的。但在MAC平台下的HFS+文件系统,用户删除文件以后,连同文件描述信息一并被删除。这就无法实现Windows下那样的“快速扫描”。所以一般Windows—般提供“深度扫描”和“快速扫描”两种扫描方式,而Mac OS下只提供“深度扫描”而没“快速扫描”。例如,现有的专门用于崩溃发生后的数据恢复的软件产SMellar Phoenix仅仅提供扇区(深度)扫描的方式。Mac OS是一套运行于苹果Macintosh系列电脑上的操作系统,是首个在商用领域成功的图形用户界面。HFS+是苹果Mac OS下的一个文件系统,有日志式和非日志式。在 Mac OS平台上,对HFS+文件系统的数据恢复传统采用扇区扫描的方式,其存在以下缺陷1)没有创建日期;2)没有修改日期;3)文件大小可能不正确;4)没有原始文件名;5)没有文件的目录结构;6)对有碎片的文件无法恢复;7)扫描时间非常慢。因此需要开发一种快速、且能够提供部分文件信息例如创建日期、修改日期、文件大小、原始文件名等的数据恢复方式。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术中对MAC OS X下的HFS+文件系统的数据恢复一般采用扇区扫描,扫描速度慢且恢复的数据缺少文件名、文件路径、文件创建时间等信息的缺陷,提供一种数据恢复方法,其根据日志进行数据恢复,可以找回用户不小心删除的文件。本专利技术要解决的另一技术问题在于,针对现有技术中对MAC OS X下的HFS+文件系统的数据恢复一般采用扇区扫描,扫描速度慢且恢复的数据缺少文件名、文件路径、文件创建时间等信息的缺陷,提供一种数据恢复系统,其根据日志进行数据恢复,可以找回用户不小心删除的文件。本专利技术解决其技术问题所采用的技术方案是提供一种数据恢复方法,用于苹果 MAC OSX下的HFS+文件系统,所述数据恢复方法包括A、读取HFS+文件系统中的日志;B、分析所述日志,以获取日志中的文件描述信息;C、利用日志中包含的文件描述信息来恢复文件。在本专利技术所述的数据恢复方法中,所述文件描述信息包括文件名、文件路径、创建时间、以及文件的数据区;其中,所述文件路径包括文件所在目录项的ID(catal0g node ID)禾口父目录项的 ID (parent catalog node ID)。在本专利技术所述的数据恢复方法中,所述读取HFS+文件系统中的日志包括Al、通过分析磁盘的分区表获取HFS+文件系统的卷;A2、分析HFS+文件系统的卷头,获取该卷的日志的位置,并读日志到内存中。在本专利技术所述的数据恢复方法中,所述分析所述日志包括Bi、读取所述日志一个扇区的内容;B2、反序列化该扇区为一个块列表头(blockjistjieader)结构,并检验校验和是否正确,如正确,进行步骤B3,如不正确,执行步骤B4 ;B3、获取所述块列表(block list)中所有的目录项文件块(Catalog File block),由此得到文件记录(file record)和目录记录(folder record);B4、转到下一个扇区,继续步骤Bl至B3的操作,直到整个日志文件读完。在本专利技术所述的数据恢复方法中,所述检验校验和包括检查所述扇区的前32字节为块列表头(blockjistjieader)时,校验和是否为0,且如果校验和为0,则是正确的块列表(block list)。在本专利技术所述的数据恢复方法中,所述利用日志中包含的文件描述信息来恢复文件包括Cl、构造完整路径,其中根据目录项文件(Catalog File)结构中的节点名称 (nodeName)、目录项的 ID (catalog node ID)禾口父目录项的 ID (parent catalog node ID) 链接出正确的路径;C2、恢复文件内容,其中利用目录项文件记录(Catalog File Records)中的数据区(dataFork)字段恢复该文件的数据。本专利技术解决其技术问题所采用的另一技术方案是构造一种数据恢复系统,用于苹果MAC OSX下的HFS+文件系统的数据恢复,其特征在于,所述数据恢复系统包括用于读取HFS+文件系统中的日志的装置;用于分析所述日志的装置;及用于利用日志中包含的文件描述信息来恢复文件的装置。在本专利技术所述的数据恢复系统中,所述用于读取HFS+文件系统中的日志的装置执行如下步骤Al、通过分析磁盘的分区表获取HFS+文件系统的卷;A2、分析HFS+文件系统的卷头,获取该卷的日志的位置,并读日志到内存中。在本专利技术所述的数据恢复系统中,所述用于分析所述日志的装置执行如下步骤Bi、读取所述日志一个扇区的内容;B2、反序列化该扇区为一个块列表头(blockjistjieader)结构,并检验校验和是否正确,如正确,进行步骤B3,如不正确,执行步骤B4 ;B3、获取所述块列表(block list)中所有的目录项文件块(Catalog File block),由此得到文件记录(file record)和目录记录(folder record);B4、转到下一个扇区,继续步骤Bl至B3的操作,直到整个日志文件读完。在本专利技术所述的数据恢复系统中,所述用于利用日志中包含的文件描述信息来恢复文件的装置执行如下步骤Cl、构造完整路径,其中根据目录项文件(Catalog File)结构中的节点名称 (nodeName)、目录项的 ID (catalog node ID)禾口父目录项的 ID (parent catalog node ID) 链接出正确的路径;C2、恢复文件内容,其中利用目录项文件记录(Catalog File Records)中的数据区(dataFork)字段恢复该文件的数据。实施本专利技术的数据恢复方法,具有以下有益效果通过HFS+文件系统根据日志来进行数据恢复,实现了 MAC下“快速扫描”的效果,解决了 MAC下恢复数据文件没有原始文件名,没有文件路径等诸多缺点,速度也比“深度扫描”快很多倍。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中图1是本专利技术的数据恢复方法的流程图;图2A是图1中步骤A的详细流程图;图2B是图1中步骤B的详细流程图;图2C是图1中步骤C的详细流程图;图3是根据本专利技术数据恢复方法中读日志和分析日志过程的一实施例的流程图。 具体实施例方式在MAC OS下的HFS+文件系统中,日志是指在HFS+中为保持文件系统的正确性而维护的一个数据区,其中保存了与文件操作相关的一些信息。在对HFS+文件系统进一步研究后,发现当用户对文件进行移动、删除本文档来自技高网
...

【技术保护点】
1.一种数据恢复方法,用于苹果MAC OSX下的HFS+文件系统,其特征在于,所述数据恢复方法包括:A、读取HFS+文件系统中的日志;B、分析所述日志,以获取日志中的文件描述信息;C、利用日志中包含的文件描述信息来恢复文件。

【技术特征摘要】

【专利技术属性】
技术研发人员:冯星
申请(专利权)人:深圳市万兴软件有限公司
类型:发明
国别省市:94

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1