CN100446000C - Fat卷中重建目录结构和恢复数据的方法 - Google Patents

Fat卷中重建目录结构和恢复数据的方法 Download PDF

Info

Publication number
CN100446000C
CN100446000C CNB2006100370697A CN200610037069A CN100446000C CN 100446000 C CN100446000 C CN 100446000C CN B2006100370697 A CNB2006100370697 A CN B2006100370697A CN 200610037069 A CN200610037069 A CN 200610037069A CN 100446000 C CN100446000 C CN 100446000C
Authority
CN
China
Prior art keywords
file
directory entry
deleted document
enter
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CNB2006100370697A
Other languages
English (en)
Other versions
CN1945571A (zh
Inventor
涂彦晖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Internet Security Software Co Ltd
Original Assignee
Zhuhai Kingsoft Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuhai Kingsoft Software Co Ltd filed Critical Zhuhai Kingsoft Software Co Ltd
Priority to CNB2006100370697A priority Critical patent/CN100446000C/zh
Publication of CN1945571A publication Critical patent/CN1945571A/zh
Application granted granted Critical
Publication of CN100446000C publication Critical patent/CN100446000C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及计算机领域。本方法包括文件扫描过程和文件恢复过程,文件扫描过程如下:a.定位根目录数据区;b.遍历根目录数据区的目录项;c.判断目录项是否遍历完毕,如果是进入i,否进入d;d.判断目录项类型,如果为文件目录项进入过程e,为文件夹目录项进入过程f;e.根据目录项信息在磁盘中建立文件信息表;f.递归该子目录中的目录项;g.判断目录项是否结束,如果结束进入b,如果否进入h;h.判断目录项类型,如果为文件的目录项进入e,如果为文件夹目录项进入f;i.进入文件恢复过程;文件恢复过程如下:I.遍历上述信息表;II.建立一个新文件;III.写入文件数据;IV.判断文件表是否为最后的表项,如果是进入V,否则放回I;V.结束。

Description

FAT卷中重建目录结构和恢复数据的方法
技术领域
本发明涉及计算机领域,特别涉及一种在磁盘中重建目录结构和恢复数据的方法。
背景技术
FAT32目录项结构如图1所示。Windows在进行文件操作时,根据该结构定位文件数据。在Windows系统中某些FAT卷中的文件被意外删除时、FAT格式分区被格式化时或者FAT格式分区不可访问时需要对文件进行数据恢复,而由于分区被格式化或者不可读,就需要在其他磁盘空间内重新建立新的文件夹来存放恢复后的数据,本发明方法就是提供一种重建目录结构和恢复数据的方法,对于用户来说就是新建一个目录来存放由于上述原因丢失的数据。
发明内容
本发明提供一种重建文件目录结构和恢复数据的方法。
为了解决上述技术问题,通过以下技术方案实现:
FAT卷中重建目录结构和恢复数据的方法,其特征在于,其包括文件扫描过程和文件恢复过程,文件扫描过程如下:
a、定位磁盘的根目录数据区;
b、遍历根目录数据区的目录项;
c、判断目录项是否遍历完毕,如果是进入过程i,否进入过程d;
d、判断目录项类型,如果为文件的目录项进入过程e,然后返回b,如果为文件夹目录项进入过程f;
e、根据d中所述文件的目录项信息在磁盘中建立文件信息表,该信息表包含文件路径、文件在磁盘中的存放位置、文件大小和文件各种事件信息;
f、遍历该文件夹中的目录项;
g、判断目录项是否已经遍历完毕,如果遍历完毕进入过程b,如果未遍历完毕进入过程h;
h、判断目录项类型,如果为文件的目录项进入过程e,然后进入f,如果为文件夹目录项则直接进入过程f;
i、结束文件扫描过程,并进入文件恢复过程;
文件恢复过程如下:
I.遍历上述文件信息表;
II.根据文件信息表中文件路径信息在用户指定路径中建立一个新文件;
III.根据文件信息表中文件大小和文件在磁盘中的存储位置等信息,把该存储位置中的数据写入刚建立的新文件中;
IV.判断文件信息表是否为最后的表项,如果是进入过程V,否则返回过程I;
V.结束。
本发明方法主要针对磁盘中某FAT格式的分区被格式化、不可访问或者其他原因无法读取的情况,使用本方法可将分区中的数据重新建立目录结构,从而实现数据恢复。
附图说明
图1为FAT32目录项结构图;
图2为本发明方法文件扫描过程的流程图;
图3为本发明方法文件恢复过程的流程图。
具体实施方式
下面参照附图说明本发明方法的流程以及本方法的应用原理。
本发明方法主要是针对FAT卷分区无法读取(被格式化或者无法访问)的情况下,对分区中的数据进行重新建立文件目录和恢复数据,其原理是利用FAT分区的目录项结构,FAT分区的目录项结构如图1所示,目录项中的信息主要包括文件(文件夹)名称、文件(文件夹)起始簇信息和文件(文件夹)各类时间信息,如果能够确定上述信息并重新建立文件(文件夹)的目录项,就可以恢复分区内数据。本方法主要分两个过程,首先是将分区中全部目录项信息提取至一新建的信息表,然后遍历上述信息表中的全部信息,将分区中的文件(文件夹)保存到新的磁盘位置。图2和图3分别为上述两个过程的详细流程图。
文件扫描过程如下:
a.定位磁盘的根目录数据区;
b.遍历根目录数据区的目录项;
c.判断目录项是否遍历完毕,如果是进入过程i,否进入过程d;
d.判断目录项类型,如果为文件的目录项进入过程e,然后返回b,如果为文件夹目录项进入过程f;
e.根据d中所述文件的目录项信息在磁盘中建立文件信息表,该信息表包含文件路径、文件在磁盘中的存放位置、文件大小和文件各种事件信息;
f.遍历该文件夹中的目录项;
g.判断目录项是否已经遍历完毕,如果结束进入过程b,如果否进入过程h;
h.判断目录项类型,如果为文件的目录项进入过程e,然后进入f,如果为文件夹目录项则直接进入过程f;
i.结束文件扫描过程,并进入文件恢复过程;
文件恢复过程如下:
I.遍历上述文件信息表;
II.根据文件信息表中文件路径信息在用户指定路径中建立一个新文件;
III.根据文件信息表中文件大小信息和文件在磁盘中的存储位置对刚建立的文件写入文件数据;
IV.判断文件信息表是否为最后的表项,如果是进入过程V,否则返回过程I;
V.结束。
在文件扫描过程中有一种特殊情况,就是因为如果某文件(文件夹)已经删除,那么它的文件名和起始簇信息将被修改,所以过程e中如果某文件为已删除文件,则首先需经过对该已删除文件目录项中的起始簇高16位进行恢复后再保存到上述信息表中。具体的恢复方法在申请号为200510100303.1,名称为《恢复FAT32分区已删除文件的方法》(下称引用发明)的中国专利申请中提出了一种解决方案,可根据该方法操作。引用发明所要解决的技术问题在于,提供一种有效的恢复FAT32分区已删除文件的方法。引用发明所要解决的技术问题是通过如下技术方案实现的:
一种恢复FAT32分区已删除文件的方法,其包括如下步骤:
a)分析分区中的已删除文件目录项,得到已删除文件目录项数据起始簇的低16位信息;
b)从上述已删除文件目录项数据起始簇的低16位信息中获取该已删除文件的扩展名;
c)读该已删除文件目录项中上述起始簇的低16位所指的磁盘位置,然后将该已删除文件目录项中起始簇的高16位设为0;
d)读文件起始簇低16位和假定高16位所指扇区;
e)判断是否已经超出该分区所能表示的最大扇区号,如果是跳到步骤h,否则进入f;
f)判断从步骤d中所述扇区读出的数据是否和已删除文件的文件类型相匹配,如果匹配说明该数据可能是该文件的数据,取这些数据保存为文件,从而实现文件恢复,跳到步骤h;如果不匹配说明该数据不是该文件的数据,跳到步骤g;
g)起始簇的高16位加1,低16位不变,进入步骤d;
h)退出。
由于本发明中只需得到改已删除文件目录项中的起始簇高16位信息,而不是对删除文件进行恢复,因此,可将上述步骤f)改为:判断匹配从步骤d中所述扇区读出的数据是否和已删除文件的文件类型相匹配,如果匹配说明步骤d中所假定的高16位即为要恢复的已删除文件目录项中的起始簇高16位,然后跳到步骤h;如果不匹配说明步骤d中所假定的高16位不是要恢复的已删除文件目录项中的起始簇高16位,跳到步骤g;
引用发明利用一个扫描循环和文件格式判断相结合的方式,通过判断文件类型和磁盘数据中的文件类型标识是否匹配,来确定该数据是否属于此文件数据。可准确恢复FAT32分区已删除文件,当扫描结果中有多个文件格式相同的文件时(出现这种情况几率很小),可人工判断筛选。
以上步骤仅用以说明而非限制本发明的技术方案。不脱离本发明精神和范围的任何修改或局部替换,均应涵盖在本发明的权利要求范围当中。

Claims (2)

1、FAT卷中重建目录结构和恢复数据的方法,其特征在于,其包括文件扫描过程和文件恢复过程,文件扫描过程如下:
a.定位磁盘的根目录数据区;
b.遍历根目录数据区的目录项;
c.判断目录项是否遍历完毕,如果是进入过程i,否进入过程d;
d.判断目录项类型,如果为文件的目录项进入过程e,然后返回b,如果为文件夹目录项进入过程f;
e.根据d中所述文件的目录项信息在磁盘中建立文件信息表,该信息表包含文件路径、文件在磁盘中的存放位置、文件大小和文件各种事件信息;
f.遍历该文件夹中的目录项;
g.判断目录项是否已经遍历完毕,如果遍历完毕进入过程b,如果未遍历完毕进入过程h;
h.判断目录项类型,如果为文件的目录项进入过程e,然后进入f,如果为文件夹目录项则直接进入过程f;
i.结束文件扫描过程,并进入文件恢复过程;
文件恢复过程如下:
I.遍历上述文件信息表;
II.根据文件信息表中文件路径信息在用户指定路径中建立一个新文件;
III.根据文件信息表中文件大小和文件在磁盘中的存储位置信息,把该存储位置中的数据写入刚建立的新文件中;
IV.判断文件信息表是否为最后的表项,如果是进入过程V,否则返回过程I;
V.结束。
2、根据权利要求1所述的FAT卷中重建目录结构和恢复数据的方法,其特征在于,过程e中如果某文件为已删除文件,则需经过对该已删除文件目录项中的起始簇高16位进行恢复后再保存到上述信息表中,对该已删除文件目录项中的起始簇高16位进行恢复的具体方法是:
a、分析分区中的该已删除文件目录项,得到该已删除文件目录项数据起始簇的低16位信息;
b、从该已删除文件目录项数据起始簇的低16位信息中获取该已删除文件的扩展名;
c、读该已删除文件目录项中上述起始簇的低16位所指的磁盘位置,然后将该已删除文件目录项中起始簇的高16位设为0;
d、读文件起始簇低16位和假定高16位所指扇区;
e、判断是否已经超出该分区所能表示的最大扇区号,如果是跳到步骤h,否则进入f;
f、判断从步骤d中所述扇区读出的数据是否和该已删除文件的文件类型相匹配,如果匹配说明步骤d中所假定的高16位即为要恢复的该已删除文件目录项中的起始簇高16位,然后跳到步骤h;如果不匹配说明步骤d中所假定的高16位不是要恢复的该已删除文件目录项中的起始簇高16位,跳到步骤g;
g、起始簇的高16位加1,低16位不变,进入步骤d;
h、退出。
CNB2006100370697A 2006-08-16 2006-08-16 Fat卷中重建目录结构和恢复数据的方法 Active CN100446000C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006100370697A CN100446000C (zh) 2006-08-16 2006-08-16 Fat卷中重建目录结构和恢复数据的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100370697A CN100446000C (zh) 2006-08-16 2006-08-16 Fat卷中重建目录结构和恢复数据的方法

Publications (2)

Publication Number Publication Date
CN1945571A CN1945571A (zh) 2007-04-11
CN100446000C true CN100446000C (zh) 2008-12-24

Family

ID=38044977

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100370697A Active CN100446000C (zh) 2006-08-16 2006-08-16 Fat卷中重建目录结构和恢复数据的方法

Country Status (1)

Country Link
CN (1) CN100446000C (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101782921B (zh) * 2009-12-28 2013-01-16 北京握奇数据系统有限公司 一种目录创建、查询和删除方法及装置
CN102722487B (zh) * 2011-03-30 2016-08-24 腾讯科技(深圳)有限公司 文件管理方法和装置
CN102226893B (zh) * 2011-05-21 2013-01-23 浙江工业大学 一种嵌入式系统中fat文件系统修复方法
CN102314490B (zh) * 2011-08-16 2013-07-10 晨星软件研发(深圳)有限公司 一种Linux FAT文件系统修复方法及装置
CN102254048B (zh) * 2011-08-24 2012-10-03 深圳市万兴软件有限公司 数据恢复方法和系统
CN102508855A (zh) * 2011-09-28 2012-06-20 北京安天电子设备有限公司 快速清除存储介质中数据的方法及装置
CN102937924B (zh) * 2012-10-30 2015-05-06 厦门市美亚柏科信息股份有限公司 一种综合文件特征与文件系统的fat数据恢复方法
CN103713971B (zh) * 2014-01-02 2016-05-25 浪潮(北京)电子信息产业有限公司 一种灾后恢复文件路径结构的管理装置和方法
CN104199894A (zh) * 2014-08-25 2014-12-10 百度在线网络技术(北京)有限公司 一种文件扫描方法及装置
CN104331348A (zh) * 2014-11-27 2015-02-04 四川效率源信息安全技术有限责任公司 一种还原fat32目录项的起始簇号恢复文件的方法
CN105045528B (zh) * 2015-06-24 2018-08-31 武汉烽火众智数字技术有限责任公司 一种快速的fat32磁盘分区遍历及文件查找方法
CN105701194A (zh) * 2016-01-08 2016-06-22 四川秘无痕信息安全技术有限责任公司 一种灾难数据文件目录结构进行可视化展示的方法
CN105786653B (zh) * 2016-03-01 2018-09-11 厦门市美亚柏科信息股份有限公司 基于fat32文件系统的文件恢复方法及其系统
CN108021472B (zh) * 2017-11-28 2021-02-02 厦门市美亚柏科信息股份有限公司 ReFS文件系统的格式化恢复方法及存储介质
CN109710455B (zh) * 2018-11-22 2020-09-22 厦门市美亚柏科信息股份有限公司 基于fat32文件系统的删除文件恢复方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001027860A2 (en) * 1999-10-12 2001-04-19 Finaldata Inc. Data recovery method, said method stored on computer readable medium, and remote data control method and system
CN1359071A (zh) * 2001-11-29 2002-07-17 上海格尔软件股份有限公司 彻底删除硬盘文件的方法
US20050144501A1 (en) * 2003-12-02 2005-06-30 Kim Jae G. Method for recovering data in EXT2 file system, and computer-readable storage medium recorded with data-recovery program
CN1773462A (zh) * 2005-10-17 2006-05-17 珠海金山软件股份有限公司 恢复fat32分区已删除文件的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001027860A2 (en) * 1999-10-12 2001-04-19 Finaldata Inc. Data recovery method, said method stored on computer readable medium, and remote data control method and system
CN1359071A (zh) * 2001-11-29 2002-07-17 上海格尔软件股份有限公司 彻底删除硬盘文件的方法
US20050144501A1 (en) * 2003-12-02 2005-06-30 Kim Jae G. Method for recovering data in EXT2 file system, and computer-readable storage medium recorded with data-recovery program
CN1773462A (zh) * 2005-10-17 2006-05-17 珠海金山软件股份有限公司 恢复fat32分区已删除文件的方法

Also Published As

Publication number Publication date
CN1945571A (zh) 2007-04-11

Similar Documents

Publication Publication Date Title
CN100446000C (zh) Fat卷中重建目录结构和恢复数据的方法
CN103365744B (zh) 用于混合元数据图像备份和备份的系统和方法
CN102289524B (zh) 一种数据恢复方法及系统
CN102567140A (zh) 使用变化日志的文件系统备份
CN1959649A (zh) Ntfs卷中重建目录结构和恢复数据的方法
CN101719128A (zh) 一种基于模糊匹配的中文地理编码确定方法
CN107291858B (zh) 一种基于字符串后缀的数据索引方法
CN102521316A (zh) 用于日志分析的模式匹配框架
CN103077166B (zh) 小文件存储的空间复用方法和装置
CN103617277A (zh) 一种还原误删除的数据表内容的方法
CN102314485A (zh) 哈希表添加、查找和删除方法及装置
CN102541691A (zh) 面向内存数据库oltp应用的日志检查点恢复方法
CN109710455A (zh) 基于fat32文件系统的删除文件恢复方法及系统
CN104199888A (zh) 弹性文件系统的数据恢复方法和装置
CN108062358A (zh) innodb引擎删除记录的离线恢复方法、存储介质
CN100407159C (zh) 恢复fat32文件系统中已删除文件的方法
CN105260464A (zh) 数据存储结构的转换方法及装置
CN105068885A (zh) 一种jpg碎片文件恢复与重组的方法
CN105068889A (zh) 恢复Ext3/Ext4中已彻底删除文件的方法
CN105786653B (zh) 基于fat32文件系统的文件恢复方法及其系统
CN102693233A (zh) 一种实现电子书签的方法及装置
CN105068761A (zh) 一种便于检索的视频截图存储方法和系统
CN105183949A (zh) 一种铁路主数据的清洗方法及系统
CN102298546A (zh) 从磁盘上恢复被删除的jpg文件的方法及计算机
CN100562872C (zh) 针对结构化网页的自动模板信息定位方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: Jinshan computer Building No. 8 Jingshan Hill Road, Lane 519015 Zhuhai Jida Lianshan Guangdong city of Zhuhai Province

Patentee after: Zhuhai Kingsoft Software Co.,Ltd.

Address before: Jinshan computer Building No. 8 Jingshan Hill Road, Lane 519015 Zhuhai Jida Lianshan Guangdong city of Zhuhai Province

Patentee before: Zhuhai Kingsoft Software Co.,Ltd.

ASS Succession or assignment of patent right

Owner name: KINGSOFT CORPORATION LIMITED

Free format text: FORMER OWNER: ZHUHAI KINGSOFT SOFTWARE CO., LTD.

Effective date: 20140901

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 519015 ZHUHAI, GUANGDONG PROVINCE TO: 100085 HAIDIAN, BEIJING

TR01 Transfer of patent right

Effective date of registration: 20140901

Address after: Kingsoft 33 Building No. 100085 Beijing West Road Haidian District Xiao Ying

Patentee after: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd.

Address before: Jinshan computer Building No. 8 Jingshan Hill Road, Lane 519015 Zhuhai Jida Lianshan Guangdong city of Zhuhai Province

Patentee before: Zhuhai Kingsoft Software Co.,Ltd.

EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20070411

Assignee: Zhuhai Kingsoft Software Co.,Ltd.

Assignor: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd.

Contract record no.: 2014990000778

Denomination of invention: Method for re-setting up catalogue structure and restoring data in FAI volume

Granted publication date: 20081224

License type: Common License

Record date: 20140926

LICC Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model