[发明专利]一种文件修复方法和装置在审
申请号: | 201810720563.6 | 申请日: | 2018-07-04 |
公开(公告)号: | CN109032841A | 公开(公告)日: | 2018-12-18 |
发明(设计)人: | 李宏伟 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 李红爽;解婷婷 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 磁盘镜像文件 方法和装置 数据表项 文件修复 计算机网络技术 数据修复 自动修复 剔除 | ||
本发明公开了一种文件修复方法和装置。涉及计算机网络技术,解决了数据修复困难的问题。该方法包括:定位损坏的磁盘镜像文件中存在损坏的数据表项;将所述存在损坏的数据表项自所述损坏的磁盘镜像文件中剔除。本发明提供的技术方案适用于磁盘镜像文件,实现了磁盘镜像文件的自动修复。
技术领域
本发明涉及计算机网络技术,尤指一种文件修复方法和装置。
背景技术
Qcow2是Qcow文件格式的升级版本,它是一种保存磁盘镜像的文件格式,最初被QEMU用做磁盘镜像文件格式。Qcow2格式的优势在于支持精简分配,即磁盘镜像文件的大小随着用户数据的实际分配增长,能够更好的利用磁盘空间,减少预分配的浪费。Qcow2格式已被广泛应用于虚拟化场合,大多数虚拟化软件均支持该格式。
然而Qcow以及Qcow2镜像格式也有缺陷,它不支持类似Linux的日志功能。当Qcow2文件损坏时,无法进行自恢复,只能依赖于其所处文件系统的日志功能。然而,大多数文件系统一般仅仅开启元数据日志支持,在发生数据损坏时仅仅能够保证文件系统的完整性,而无法保证文件内容本身的完整性;此外,当Qcow2磁盘镜像在工作一段事件后,由于用户数据的写入会变得比较大,即使文件系统开启数据日志,也很难完成文件恢复。在服务器虚拟化应用场景中,当发生掉电、系统崩溃等意外或者用户误操作导致数据被覆写的场景,急需一种方法能够及时对用户数据进行修复,保全数据价值。
发明内容
为了解决上述技术问题,本发明提供了一种文件修复方法和装置。通过定位损坏的磁盘镜像中具体的损坏数据表项并进行剔除,实现了磁盘镜像文件的自动修复,解决了数据修复困难的问题。
为了达到本发明目的,本发明提供了一种文件修复方法,包括:
定位损坏的磁盘镜像文件中存在损坏的数据表项;
将所述存在损坏的数据表项自所述损坏的磁盘镜像文件中剔除。
优选的,所述定位损坏的磁盘镜像文件中存在损坏的数据表项的步骤包括:
提取所述损坏的磁盘镜像文件的L1表的位置与L2表所包含的表项数;
遍历所述L1表与所述L2表,发现存在损坏的L2表中的数据表项。
优选的,提取所述损坏的磁盘镜像文件的L1表的位置与L2表所包含的表项数的步骤包括:
自所述操作的磁盘镜像文件的头部读取出如下信息:
所述L1表的地址、所述L1表的大小、簇cluster值;
根据读取得到的信息,计算所述L1表的位置与所述L2表所包含的表项数。
优选的,所述遍历所述L1表与所述L2表,发现存在损坏的L2表中的数据表项的步骤包括:
遍历所述L1表,读取所述L1表中全部表项,每个表项包含一个L2表的地址;
遍历全部L2表,读取全部L2表的数据表项;
在数据表项与cluster值不对齐和/或数据表项值为0时,判定所述数据表项为损坏的数据表项。
优选的,所述将所述存在损坏的数据表项自所述损坏的磁盘镜像文件中剔除的步骤包括:
标记所述损坏的数据表项,将所述损坏的数据表项内容清零;
将所述损坏的磁盘镜像文件的镜像损坏标志位清零。
本发明还提供了一种文件修复装置,包括:
数据表项筛查模块,用于定位损坏的磁盘镜像文件中存在损坏的数据表项;
文件修复模块,用于将所述存在损坏的数据表项自所述损坏的磁盘镜像文件中剔除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810720563.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据管理方法及装置
- 下一篇:用于数据库的数据即时备份方法