手工修复受损的U盘

前不久,由于静电或者病毒,我的U盘突然无法读出数据了,打开时系统提示需要格式化。(如果你想恢复数据,请千万别格式化,也不要做任何写操作。切记!!!如果数据很重要,建议直接妥善保存存储介质,并送交数据恢复公司。) 

我先用数据恢复软件进行恢复,如:易我文件恢复向导,Easyrecover,getdate back,undelete_plus等,均失败。(根据经验,易我文件恢复向导,效果不错,但这次也失去了作用)。

由于U盘被破坏的时间很短,所以遭到破坏的文件应该不多。这是我的精神支柱。

仔细观察没有发现MBR,FAT1,FAT2,目录,等数据

看来修复的难度很大。加之对于文件系统不甚了解,想恢复数据难度就更大了。于是一边学习FAT文件系统(我的另一篇文章中有,供大家学习。或登录WWW.SJHF.NET查找)

多次用WINHEX查看U盘后,我在0x3C3C4000处发现了MBR,隔了一个扇区发现了,FAT1,FAT2(不完整,但没关系,他是FAT1的备份吗)在MBR中知道我的我的分区为FAT16隐藏扇区两个,每个FAT为0xff大,加上目录32个扇区,对了每簇为32扇区。一共是0X44000字节

我把从0X0到0X44000的数据先复制出来,备份。然后吧MBR,FAT1,FAT2(经过修复的)复制回去。

这次U盘可以打开了,但文件夹的名字全是乱码,文件的大小也都不对。

考虑是目录错了。

看来恢复文件艰难重重。

我已经打算放弃了。

用WINHEX查找一些还能看到的文本文件,C语言文件

把他们先复制出来吧。

我突发奇想,既然FAT完好,我只要找到每个文件的开始顺着FAT就可以找到完整的文件了,虽然没有文件名。

在查找文件时,我发现了几个子目录,这让我兴奋,因为这里有文件名,文件大小,更重要的有文件开始的簇号。

因为文件开始保存的扇区应为0X44000 + (簇号-2) * 每簇的扇区数(我这里是32)

令我吃惊的是根据这个公式我没有找到相应文本文件。而在他的附近找到了

是不是我的0X44000不对呀!!!!

在后续的查找中在0X3D1CC000处又发现了FAT,后面还有一个目录,根据观察(那个目录我熟悉)应该是根目录,看来里数据恢复的日子不远了,我把这个目录复制了回去就是0X40000处

在打开U盘,文件根目录的文件名正确了

但是下一级目录还是错误的,并且文件不能打开。

郁闷,看来应该是数据区的起始地址错了。

看来我只能试着修改隐藏扇区数来做调整了。

祝我幸运吧!

文件结构的学习建议去WWW.SJHF.NET

看来我是不幸的

簇号是混乱的,我晕

先做个备份,U盘是要用的,数据以后有心情了恢复吧。手工填写FAT是疯狂的。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值