FAT32下文件删除

该案例文件删除后,文件起始簇号高位没有被清零,请网友注意.
E 盘下有一个文件夹 anli, 文件夹 anli 下有文件夹 Winhex15.3 和两个图片分别是 111.jpg 222.jpg.
我们首先用 Winhex 软件打开 E 盘,从 FDT 中找到所描述的文件夹项 anli FDT 起如扇区号 = 保留扇区数 +FAT 大小 *2 ,这些参数可在 DBR BPB 参数中可以找到,也可直接跳转到 2 号簇。查找文本 anli
可以找到 anli 所对应 FDT 项如下:
相对本 FDT 偏移 0X14-15 表示起始簇号高 16 位, 0X1A-18 表示起始簇号低 16 位,所以文件夹 anli 的起始族号为 B01CE 转十进制为 721358 号簇,因为 anli 为文件夹所以偏移 0X1C-1F 描述大小为 0 ,我们转到 721358 号簇,
如下:
可以看到该扇区启始两个 FDT 项分别为“ . ”“ ..
. ”表示描述为该目录自身 , 从起始簇号可以看出起始簇号为 721358 anli FDT 所描述的起始簇号一样,
.. ”描述的是上一级目录 , 可以看出起始簇号描述为 0 ,大小也为 0 ,表示上一级目录为根目录。
第三项、第四项和第五项 FDT 描述的分别为 winhex15.3 文件夹、 111.jpg 222.jpg.
第四项 FDT 中可以看出 111.JPG 文件的起始簇号为 B0291H=721553D 大小为 2A806=174086B
第五项 FDT 中可以看出 222.JPG 文件的起始簇号为 B029CH=721564D 大小为 1278F=75663B
下面我们再转到 anli 对应的 FAT 表去看 FAT 表分配情况 .
我们可以直接转到 FAT , 由前面分析可知 anli 文件夹起始簇号为 721358,FAT32 32 位表示一个簇的使用情况 , 所以 721358*4=2885432, 所以第 721358 对应的偏移地址为 2885432 转十六进制为 2C0738 。我们转到相对 FAT 偏移地址 2C0738
 
 
再转到 111.JPG 对应的 FAT ,721553*4=2886212. 转十六进制为 2C0A44 转到对应的 FAT 偏移地址 :
 
此时可转到 FAT 表对应的簇号:
222.JPG 也是使用同样的方法就不再介绍。
 
然后我们将 111.JPG 文件彻底删除 , 转到删除前 111.JPG 对应的 FDT 项看其变化 .
可以看到该 FDT 的第一字节被改写为 E5H, 其它没有改变。再转到 FAT 对应的 FAT 项,
可以看到之前对应的 FAT 表项全部被清空。

我们再将 anli 该文件夹彻底删除,看 FDT FAT 变化情况。
先看 FDT 变化情况:
可以看出,该 FDT 项第一字节被改为 E5H 表示删除,其它无变化,
再转到对应的 FAT 项看其变化情况:
可以看到 FAT 表全部被清空。
 

你可能感兴趣的:(职场,休闲)