[求购] [求购]linux ext3误删除恢复思路

[复制链接]
  • TA的每日心情
    开心
    2015-2-11 15:23
  • 签到天数: 4 天

    [LV.2]九品芝麻官

    23

    主题

    17

    回帖

    400

    积分

    [INTOHARD]排长

    Rank: 3Rank: 3

    积分
    400
    发表于 2015-1-26 15:23:20 | 显示全部楼层 |阅读模式
    价  格  1000
    新  旧  100
    类  型  其它
    交易地点  北京市-海淀区
    联  系 人    张宇
    电  话  18600440055( 该用户其他二手信息 )
    QQ   号  

    详情描述

    EXT3文件系统是目前LINUX平台使用最多的文件系统,原起自EXT2,在其基础上加入日志功能(主要改变),EXT3作为许多LINUX系统默认的文件系统,误操作也在所难免。最常见的,基于LINUX EXT3上误删除操作的数据恢复就非常重要了。加上现在LINUX平台通常不用作娱乐,整体而言,数据较WINDOWS平台重要;同时,基于LINUX平台的数据恢复软件及恢复原理方面的文章都较WINDOWS少得多。鉴于此,写此文章。
    [原理]
        EXT3文件系统原理方面的文章很多,同时加上LINUX的开源性及EXT3本身的简洁性,通常了解EXT3文件系统并不是难事。作为误删除,我们需要了解文件的存储结构与删除所做的实际操作。
        EXT3是典型的UNIX类文件系统,首先将整个分区按固定大小的BLOCK分组,再将若干固定数目的BLOCK分组为BLOCK GROUP。这个概念为了描述方便,我们先放一放。再说别的。
        EXT3中的每个文件可以看成由参数+数据组成。比如一个a.tar,其文件包是数据,它的大小、日期、存储位置等。用来区别每个文件的唯一标识是这个文件的"标号"
    ,可以简单理解:一个EXT3文件系统里有N个文件,其中M号文件大小为XX,日期为XX,数据存储位置为XX,这样就可以通过存储位置得到其数据XXX。这里没有谈到名称,初步可以理解为EXT3的文件系统里没有名称。名称和目录树都是为了更人性化地解读文件系统的一个助记符。没有名称和目录树,EXT3也可以完好地存储文件(可以这样理解),但只能看到一大堆大小不同、只在标号、没有目录层的“散”文件。我们看如何在此基础上加入目录:首先我们将所有目录、文件统统看成文件(其实目录本身和普通数据文件一样,也有属性、大小、内容,只是其内容是为了助记整个文件系统的目录结构的)。目录中可以保存其下文件(包括目录)的标号,以此类推。但只有标号,很难理解文件所代表的内容,所以可以给标号同时绑定一个人性化的名称,即文件名,使文件名与文件标号一一对应。
        每个文件特有的属性通过编好序的INODE进行描述。通常根目录是2号文件,根目录本身存储(可以想像成与普通文件一样的记录)根目录下一级子目录及文件的名称及对应的INODE编号,在遍历文件系统时可以读到文件名称,同时读到其节点号。
        每个块组(前面讲过)分散放置系统中所有的INODE,其存储方式通过其他结构进行描述。系统可以很容易算出第N号节点的存储位置。通过节点就可以找到数据了。
        删除文件的目的是为了释放空间、从索引中去除相应记录。为了实现这样的目的,EXT3文件的删除会做这样的操作,1、重组目录文件的内容(目录文件中的记录),在逻辑上去除被删除文件名称与INODE号的记录;2、更改被删除文件的INODE,至少去除其位置信息(直接与间接BLOCK号);3、在BITMAP区释放原先占用的BLOCK(将原来的使用位更改为空闲,EXT3中即将1更改为0)
        从删除文件的原理来看,即使通过原来目录记录的残留信息可以找到被删除文件的名称,也可以找到其原来的节点号,但因位置信息已被清除,数据还是不能直接恢复。


                                   
    登录/注册后可看大图


    来自【INTOHARD.COM】:linux ext3误删除恢复思路
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表