文件存储与误删除恢复的几点建议

目录

第一节:什么是文件系统

第二节:文件存储的几点建议

第三节:MFT的故事

参考书籍


 第一节:什么是文件系统

文件系统:顾名思义就是管理文件存取的系统

因此,事实上电脑一共有两个系统,即文件系统与操作系统,这很符合计算机理论中的封装思想,使得普通用户只管放心操作,而底层细节留给电脑自身处理。

在windows操作系统上主要为NTFS(New Technology File System 译为:采用新技术的文件系统,笑!)文件系统,FAT32等文件系统已随时代的发展逐步淘汰,一些小容量的移动存储上,如内存卡之类的还能看到它们的身影。本文主要围绕NTFS文件系统进行展开。

 

二节:文件存储的几点建议

以下是我个人根据使用经验结合网上资料给出的几条建议。配合后文的MFT故事,将大致了解其原因及原理。

储建议:

1、 各种用途的文档分门别类存储在不同区域:C:系统D:软件:E:下载    剩下作为文档、资料使用

2、 分区时应适宜大小,网上没有确切的说法,500g,我的方案是60*2、40、100*3,如果要多分区应在中间划分,因为硬盘访问时间=寻道时间+等待(潜伏)时间。

3、 越上层的目录应控制文件数量<7-10,这么做也是出于美观考虑。

4、 下载区、或者其他功用(产生频繁读写的),应单独划分,而且不宜过大。

5、 系统自带许多存储区,默认在C盘,其中影响最大就是桌面,尽量及时备份数据,也避免大数据放在桌面,可以利用软件将C盘的文件夹重定向到其他盘,避免数据访问与系统资源之间的冲突,也保障了数据的安全。

6、 养成少移动大数据习惯,大数据(GB级别的数据流)删除,必将造成大面积的数据空洞,这时注意配合磁盘的整理。

7、 多用复制,少用剪切,宁可先复制后删除,两者是等效的——剪切的时候,突然中止或者发生异常,你的数据将受到严重影响。有种特殊情况是,同磁盘内文件的移动,这时剪切只是更改了MFT与目录项,实际数据没有移动。所以会发现速度剪切远比复制快

8、 尽量不要占用超过80%容量的存储空间,当超过90%,磁盘就会由蓝变红,由于系统的安全机制,使得默认需要留出12.5%的空间,记录每个文件的存储情况,以及整个文件系统的安全日志,如果文件存储过大,系统必将压缩这些记录文件。

于数据恢复建议:

1、  总则:数据无价,谨慎操作。出现问题,第一时间应中止数据写入,避免二次破坏。

2、  流程:有条件情况下,先对数据进行镜像备份,而后针对镜像慢慢处理,避免在原数据上操作,最好在有经验的人陪同下操作。

3、  可能性:常见的数据丢失为:误删除、劣质内存卡插拔不当导致分区档案数据破坏如MFT损毁。这些情况下恢复的概率都是极高的。误删除:在没覆盖情况下恢复几率近乎100%,另外格式化,也是能较大程度被恢复的。网上流传的回收站清空时,如何恢复的对策——建立注册表键值的方法其实是误导,此方法并没有效果,它只是重建了个回收站,并没实际没有意义,因此还是需要配合专业软件进行恢复。

关于数据恢复软件:

1、  WINHEX(十六进制编辑器为核心的数据处理高级工具)

2、  Diskgenius(老牌国产软件,有强大分区管理功能)

3、  FINALDATA

4、  R-Studio

 

 第三节:MFT(MasterFile Table 主文件表)的故事:(里面可能有点绕,注意清单与数据区别)

注:

文件系统里,所有数据都被看做文件

文件只有两种:

        清单(MFT)    :所有清单都是同一的格式,包括记录清单本身的清单($MFT)

        数据文件简称数据:各种类型的数据如MP3.DOC.JPG,  都被看做十六进制的一段数据

 

正文: 

   
         网上有个通俗的比喻,一块硬盘就像一个块空地,文件就像不同的材料,我们首先得在空地上建起仓库(分区),并且指定好(格式化)仓库对材料的管理规范(文件系统),这样才能将材料运进仓库保管。而这些都是文件系统的工作,操作系统只是负责外围材料的调配。


        NTFS文件系统里面有一位先生叫MFT:他身材消瘦,身着淡灰色中山装,坐在窗边,戴着一副老花镜,一副知识分子的装扮,负责登记进出的材料的清单,他认真地记下来往数据创建、修改、访问时间,并填写文件的存储属性(只读、系统、存档、隐藏等)。MFT通常用12.5%的空间来存储这些清单,剩下的留作存储数据。所以可以将整个仓库分为清单(档案)区与数据区。

       清单是什么:每个清单都是固定大小(1KB),清单上的记录的每一项被称为属性,正如前面所说的一个文件有时间属性、名字属性、数据属性等。如果属性里面的内容比较少,那直接写在清单上即可,例如该文件与2014.8.17创建8.18修改。如果太大,那就需要占用数据区的空间,前者称为常驻属性,后者为非常驻属性(其实就是写得下写不下的问题)。数据属性就是典型的例子,一般除了少量的文字(直接写在清单上),数据总是很大的,因此清单上指出了数据的具体存放空间,如你从前面右转的第二排架子上就有了。

       这些清单按顺序编号,有十六个清单最为最为重要,排在最前面编号0-15,是整个文件存储系统的内部文件结构的总揽,里面的人把这些称作元文件,诸如

整个仓库的使用情况

外来人员的授权情况:如果非法用户将不得访问

每位访问者使用范围的限定。

日志记录:MFT每关注次访问的结果,当它在目标地发现了完整文件,就会记录下一个“已完成”的标记。假如复制中途意外终止,事件日志中就不会记录“已完成”。

根目录: 所有档案都被挂在种叫B+的树上,最顶端的叫根目录,也就是访客最先看到的文件。该目录记录了文件以及子目录清单所在的地址,正如前面所述的常驻属性,如果文件少的情况下,它会直接记录在根目录的档案上,但是一般根目录都会有许多的文件,这时MFT就会占用外部数据区的内容,他将这个叫做缓冲区(缓解下内部压力),专门来写这些内容,这里记录了目录与文件的名字还有其数据的清单编号。(意为我这里写不下了,麻烦你去那里找,那里有详细的记录)

        如果有人来访问:首先MFT会带访客进入根目录的清单,大家都把这个档案叫做5号清单,因为编号是5嘛,找到后,一般都是根据清单上记载,然后到缓冲区记录去找的,接着在缓冲区记录找到对应所在的目录的清单编号#123(假设文件不在根目录),翻出#123编号的清单,假设如果文件在这个目录里,那么只要继续找寻对应缓冲区记录,找到目标文件清单的编号#456,对着#456所记载的数据位置,打开相应柜子即可找到文件。

简而言之:反复查找清单——找到清单编号——清单,最终找到了最终所要数据的清单,进入数据区找到了目标文件对应的数据。

如果有数据存入:

    一共有三种方法分别为:第一可用分配策略、下一可用分配策略和最佳分配策略。

           MFT采用的是最佳分配策略:

    (1)笫一可用分配策略,即当为一个文件分配了一个存储单元后还需要继续为其分配时,操作系统会重新从文件系统的起始处搜索可使用的空间。这种分配方式很容易使文件片段化,因为文件并不是被作为整体一次性分配连续存储空问的,而且也使被删除数据的恢复可能性大大降低。
     (2)下一可用分配策略,即为文件分配了一个存储单元后并不再回到卷起始重新寻找可用空间,而是直接向后进行搜索。
     (3)最佳分配策略,即在文件分配空间时,会尽可能找到足够的连续空间以避免其片段化。这种分配策略需要事先知道文件所需                要空间的大小,而且如果以后文件增大需要增加分配单元时,新分配的单元有可能处于其他位置而使该文件片段化。
 

       最后再说说文件的删除:这个最省事了,上级交代MFT,删除时只要在B+树上标记文件的索引信息为无效,并将文件对应的档案属性其中一项由原来的正在使用改为已删除即可。如果有新的文件登记,根据最佳分配策略,也许将会填补这些空白。因此对于MFT来说,数据本身他无需关心,他只负责把相关的登记记录给销毁,剩下的秋风自然会将落叶带走。

 

 参考书籍

1、NTFS文件系统扇区存储探秘

作者:宋群生 等

出版社:人民邮电出版社

2、数据重现:文件系统原理精解与数据恢复最佳实践

作 者:马林

出 版 社:清华大学出版社

3、数据恢复技术深度揭秘

作 者:刘伟

出 版 社:电子工业出版社


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值