(19)中华人民共和国国家知识产权局
(12)发明专利说明书
(10)申请公布号 CN 106021031 A
(43)申请公布日 2016.10.12
(21)申请号 CN201610373880.6
(22)申请日 2016.05.30
(71)申请人 厦门市美亚柏科信息股份有限公司
    地址 361000 福建省厦门市软件园二期观日路12号102-402单元
(72)发明人 林城 沈长达 吴少华 黄志炜 赵庸
(74)专利代理机构 厦门市精诚新创知识产权代理有限公司
    代理人 何家富
(51)Int.CI
      G06F11/14
      G06F17/30
                                                                  权利要求说明书 说明书 幅图
(54)发明名称
      一种BTRFS文件系统的删除数据恢复方法和装置
(57)摘要
      本发明属于信息安全与计算机应用技术领域,具体涉及一种BTRFS文件系统的删除数据恢复方法和装置。该方法包括以下步骤,S1,获取磁盘分区的超级块内容,通过超级块中的魔数信息,判断该分区是否是BTRFS文件系统分区,如果是则执行步骤S2,否则结束;S2,通过超级块信息中的文件树指针,解析出正常文件树;S3,通过超级块信息中的主数据存储区域的树指针,获取元数据存储的区域;S4,在元数据区域搜索文件树的根节点,并存储的文件树根节点;S5,解析文件树根节点,读取该根节点的文件树,并与正常文件树进行比较,把多余的文件信息,挂载到正常文件树中;S6,判断是否还有未解析的文件树根节点,如果是则执行步骤S5,否则结束。
法律状态
法律状态公告日
法律状态信息
法律状态
权 利 要 求 说 明 书
1.一种BTRFS文件系统的删除数据恢复方法,其特征在于:它包括以下步骤,
S1,获取磁盘分区的超级块内容,通过超级块中的魔数信息,判断该分区是否是BTRFS文件系统分区,如果是则执行步骤S2,否则结束;
S2,通过超级块信息中的文件树指针,解析出正常文件树;
S3,通过超级块信息中的主数据存储区域的树指针,获取元数据存储的区域;
S4,在元数据区域搜索文件树的根节点,并存储的文件树根节点;
S5,解析文件树根节点,读取该根节点的文件树,并与正常文件树进行比较,把多余的文件信息,挂载到正常文件树中;
回收站清空的文件怎么恢复S6,判断是否还有未解析的文件树根节点,如果是则执行步骤S5,否则结束。
2.如权利要求1所述BTRFS文件系统的删除数据恢复方法,其特征在于:所述步骤S1中判断分区是否是BTRFS文件系统分区的方法为判断魔数值是否为特定值,如果是则该分区是BTRFS文件系统分区,如果否则该分区不是BTRFS文件系统分区。
3.一种BTRFS文件系统的删除数据恢复装置,其特征在于:它包括,
解析正常文件树单元,获取磁盘分区的超级块内容,通过超级块中的魔数信息,判断该分区是否为BTRFS文件系统分区,如果是,通过超级块信息中的文件树指针,解析出正常文件树;
文件树根节点获取单元,通过超级块信息中的主数据存储区域的树指针,获取元数据存储的区域,在元数据区域搜索文件树的根节点,并存储的文件树根节点;
文件树恢复单元,解析文件树根节点,读取该根节点的文件树,并与正常文件树进行比较,把多余的文件信息,挂载到正常文件树中。
4.如权利要求3所述BTRFS文件系统的删除数据恢复装置,其特征在于:所述解析正常文件树单元中判断分区是否是BTRFS文件系统分区的方法为判断魔数值是否为特定值,如果是则该分区是BTRFS文件系统分区,如果否则该分区不是BTRFS文件系统分区。
说  明  书
<p>技术领域
本发明属于信息安全与计算机应用技术领域,具体涉及一种BTRFS文件系统的删除数据恢复方法和装置。
背景技术
BTRFS由Oracle于2007年宣布并进行中的COW(copy-on-write式)文件系统。目标是取代Linux目前的ext3文件系统,改善ext3的限制,特别是单一文件大小的限制,总文件系统大小
限制以及加入文件校验和特性。加入目前ext3/4未支持的一些功能,例如可写的磁盘快照(snapshots),以及支持递归的快照(snapshots of snapshots),内建磁盘阵列(RAID)支持,支持子卷(Subvolumes)的概念,允许在线调整文件系统大小,还集成了许多其他先进的功能和特性。
BTRFS文件系统还集成了许多先进的功能和特性,凭借着这些先进功能和特性,被广泛的用于Linux系统上。系统面临不可预料的硬件故障,BTRFS文件系统采用 COW 事务技术来保证文件系统的一致性,并且系统Reboot 之后不需要执行fsck。BTRFS文件系统的COW 技术从根本上避免了对同一个物理单元的反复写操作。如果用户打开了 SSD 优化选项,BTRFS文件系统将在底层的块空间分配策略上进行优化:将多次磁盘空间分配请求聚合成一个大小为 2M 的连续的块。大块连续地址的 IO 能够让固化在 SSD 内部的微代码更好的进行读写优化,从而提高 IO 性能。
目前,不仅缺乏关于BTRFS文件系统的资料,而且针对BTRFS文件系统的数据恢复技术相关资料也很难查到。
发明内容
针对BTRFS文件系统资料的缺乏,本发明在对BTRFS文件系统磁盘存储结构和特性的进行了研究后,提出了一种恢复BTRFS文件系统的删除文件的方法,该方法为在BTRFS文件系统上因为误删除或恶意删除而导致数据丢失提供了解决方案。
本发明采用如下技术方案:
一种BTRFS文件系统的删除数据恢复方法,它包括以下步骤,
S1,获取磁盘分区的超级块内容,通过超级块中的魔数信息,判断该分区是否是BTRFS文件系统分区,如果是则执行步骤S2,否则结束;
S2,通过超级块信息中的文件树指针,解析出正常文件树;
S3,通过超级块信息中的主数据存储区域的树指针,获取元数据存储的区域;
S4,在元数据区域搜索文件树的根节点,并存储的文件树根节点;
S5,解析文件树根节点,读取该根节点的文件树,并与正常文件树进行比较,把多余的文件信息,挂载到正常文件树中;
S6,判断是否还有未解析的文件树根节点,如果是则执行步骤S5,否则结束。
进一步的,步骤S1中判断分区是否是BTRFS文件系统分区的方法为判断魔数值是否为特定值,如果是则该分区是BTRFS文件系统分区,如果否则该分区不是BTRFS文件系统分区。