审核专家:郑远攀

郑州轻工业大学教授

屏幕前的你是否有过下述类似经历:辛苦下载的资料文件一不小心被误删了,又或者正奋力在键盘上敲打着心中所想,但电脑突然黑屏了呢?

如若遇见此般情况,请先不要急着抱头痛哭或者捶胸顿足。因为电脑就像个小孩子一样,只是跟你闹了脾气,真正的数据还在它心里。

之前的文件删了怎么恢复(不小心删了重要文件)(1)

来源 | Pinterest

今天,我们来说一说,如果不小心误删掉了文件该怎么办。

不过首先呢,要想找回我们指尖字字珠玑的文字,我们就得先要了解下,电脑文件在我们点击删除后它到底跑哪儿去了?

我们的文件被存到哪里去了?

在这之前,我们需要先了解几个概念。

电脑包括操作系统在内的所有文件都存储在硬盘上。而一般来说,无论哪种机械硬盘,都是由盘片、磁头、盘片主轴、控制电机、磁头控制器、数据转换器、接口、缓存等几个部分组成。但今天我们并不探讨相关硬件,在此只介绍有关的几个逻辑概念。

之前的文件删了怎么恢复(不小心删了重要文件)(2)

来源 | International Council of Design

磁道:磁盘在格式化时被划分成许多同心圆,这些同心圆轨迹叫做磁道(Track)。

柱面:所有盘面上的同一磁道构成一个圆柱,通常称做柱面(Cylinder),每个圆柱上的磁头由上而下从“0”开始编号。

扇区:操作系统以扇区(Sector)的形式将信息存储在硬盘上,每个扇区包括512个字节的数据和一些其他信息。一个扇区主要有两个部分,存储数据地点的标识符和存储数据的数据段。

之前的文件删了怎么恢复(不小心删了重要文件)(3)

来源 | DBMS Internals

了解了上述的概念,我们简单描述下文件读写的过程。

首先操作系统将文件存储到磁盘上时,按柱面、磁头、扇区的方式进行,即最先是第1磁道的第一磁头下的所有扇区,然后,是同一柱面的下一磁头。以此类推,一个柱面存储满后就推进到下一个柱面,直到把文件内容全部写入磁盘。

文件的删除过程是怎样的呢?

现在我们知道了文件读写的大致原理,接下来就开始说说今天的正题——文件删除。

文件存储的物理形式就是一堆二进制数据保存在磁盘上,如果我们要删除某个文件,就像我们写作业用橡皮擦或者涂改液擦抹掉已有的文字一样。

之前的文件删了怎么恢复(不小心删了重要文件)(4)

shift delete有风险,使用需谨慎 来源 | 4meahc

但是要知道,电脑文件的读写首先是高速和频繁的,拷贝一部电影,一般至少都要十几秒起,反过来想想,假如要删掉硬盘里的某部电影,如果按照涂改液修改作业的原理,我们得用新的数据进行覆盖它,那这样,岂不是删个电影都要几秒钟起,这样无论是对计算机本身还是电脑用户而言都是不合理的。

所以,计算机的操作系统(如大家常用的windows10)一般删除文件只是删除对文件的引用,把文件曾经所占的磁盘物理空间在逻辑上释放出来。后面如果有新的数据存储,直接在此基础上进行覆盖就好了。所以到这里,我们应该清楚了一点,如果你的文件意外删除或者损坏等,请立马停止任何的写入操作

在硬盘上,都存储着这样一张表(文件分配表FAT),该表记录每个文件存储在磁盘的具体地点,我们可以理解成新华字典的目录一样,写明了每个字对应所在的页码,FAT表的作用也大致如此。

我们在删除文件时,操作系统只是修改了这个文件的文件名的前两个代码,同时与之对应的表中文件名称做上了删除标记

对于这一点,我们可以理解成硬盘上这个文件区域被打上了“拆迁”标记。它在地图上抹掉了存在的坐标,但实际其实还在那。

在我们需要新的空间进行存储时,任何被打上“拆迁”标记的区域都可以用于存储新的数据,即被新数据覆盖。

那么自然地,只要存储原来文件信息的扇区没有写入任何新的数据,所有的原文件内容依然存在。

所以,至此我们清楚了第二点:电脑中删除掉的文件,在没有被新的数据覆盖之前,它依旧存在于你的硬盘上。

文件可以被恢复吗?

到这里我们已经差不多了解了文件删除的大致情况,是否可以稍稍拓展下,逆推下文件恢复的原理呢?

不错,你脑海里蹦出来的想法是对的。文件恢复的思路就是查找分析磁盘上的文件头,找出其中做过删除标记的文件并尝试重写其被改写的两个代码,进而进行数据恢复。

之前的文件删了怎么恢复(不小心删了重要文件)(5)

来源 | Linux公社

目前市面上文件恢复软件的原理大致一样,区别是它们对文件头的扫描以及恢复分散存放的文件数据之能力不同。

现在,看文章的你有没有对电脑中的文件多了些亲切感呢。最后,我们可以思考下,如果想要真正删除掉某个文件,应该怎么做呢?

你可以通过专业工具软件在删除的文件区域全部写入二进制中的0,又或者可以手动用其他垃圾文件进行覆盖硬盘操作。

好啦,以上就是我们今天所要介绍的文件删除大致原理,大家觉得收获如何呢?

,