[发明专利]一种用于APFS文件的恢复方法和系统有效
申请号: | 202011461709.3 | 申请日: | 2020-12-11 |
公开(公告)号: | CN112463736B | 公开(公告)日: | 2022-05-20 |
发明(设计)人: | 沈长达;杜新胜;黄志炜;叶景 | 申请(专利权)人: | 厦门市美亚柏科信息股份有限公司 |
主分类号: | G06F16/13 | 分类号: | G06F16/13;G06F16/16;G06F11/14 |
代理公司: | 厦门福贝知识产权代理事务所(普通合伙) 35235 | 代理人: | 陈远洋 |
地址: | 361000 福建省厦门市思明*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 apfs 文件 恢复 方法 系统 | ||
1.一种用于APFS文件的恢复方法,其特征在于,包括:
S1:解析获取所述APFS文件的信息块的叶子节点信息集合;
S2:获取所述叶子节点信息集合中空闲数据区域集合,并依照所述叶子节点在B-Tree树中的位置从左至右排序;
S3:响应于所述空闲数据区域集合中还有未获取元素,获取一元素并对所述元素指向的区域数据进行ThreadRecord数据区域检测,并检测与ThreadRecord数据配对的DataIndexRecord数据区域;
S4:响应于一数据索引的数据大小与已构建数据索引集合中所有数据大小之和不大于文件大小,将数据索引的信息添加至所述已构建数据索引集合中生成对应文件的数据索引信息集合;以及
S5:根据所述ThreadRecord数据以及所述对应文件的数据索引信息集合恢复删除文件;
其中,ThreadRecord数据区域检测具体包括:
所述ThreadRecord数据区域被所述空闲数据区域集合中的元素freedataij所指向,并且基于ThreadRecord结构对相应区域进行解析获取文件FileID、ParentID、文件名称、文件大小、文件占用大小、文件创建时间、文件修改时间、文件访问时间以及文件节点修改时间,并满足以下条件:
FileID小于下一叶子节点信息集合中第1个元素的FileID;
ParentID必须等于当前叶子节点信息集合中第j个元素的ParentID;
文件节点修改时间大于文件访问时间;
文件节点修改时间mod 1000000000不等于0。
2.根据权利要求1所述的用于APFS文件的恢复方法,其特征在于,所述ThreadRecord数据包括描述文件的名称、时间、FileID和ParentID大小,DataIndexRecord数据包括描述文件的数据存储位置,包含起始块位置和长度信息。
3.根据权利要求1所述的用于APFS文件的恢复方法,其特征在于,步骤S2中所述空闲数据区域集合的获取方法为:
B-Tree树中所有文件信息块叶子节点中空闲的数据区域集合表示为FDATA={fdata1,fdata2…fdatam},fdata={freedata1,freedata2,…,freedatan-1}表示为一个文件信息块节点中空闲的数据区域集合,集合中的每个元素均包含空闲数据偏移FreeDataOffseti、空闲数据长度FreeDataLenthi,其计算方式如下:
FreeDataOffseti=DataOffseti+DataLenthi;
FreeDataLenthi=DataOffseti+1-FreeDataOffseti;
其中,DataOffseti为数据偏移,DataLenthi为数据长度。
4.根据权利要求1所述的用于APFS文件的恢复方法,其特征在于,步骤S3中的与ThreadRecord数据配对的DataIndexRecord数据区域的判断条件包括:
DataIndexRecordj区域和ThreadRecordi数据区域被同一个空闲数据区域集合fdata集合所指向;
不存在其他任何被同一个fdata集合所指向的ThreadRecordk数据区域离DataIndexRecordj更近;
按照DataIndexRecord结构对相应区域进行解析获取数据块号BlockNumber以及数据大小DataSize,并且解析结果需同时满足DataSize mod 4096等于0和DataSize/文件大小小于等于1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门市美亚柏科信息股份有限公司,未经厦门市美亚柏科信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011461709.3/1.html,转载请声明来源钻瓜专利网。