文件或目录损坏且无法读取-chkdsk被中止

转自:http://www.wuji8.com/meta/248521994.html

我们可能经常遇到移动硬盘、U盘之类的可移动存储设备出现如下错误:

“位置不可用,无法访问,文件或目录损坏且无法读取。”

使用CMD→输入:CHKDSK 盘符: /f 后出现:“需要修复磁盘是NTFS格式,但无法确定卷版本或状态,CHKDSK被中止”的提示。

千万不要格式化,千万不要格式化,千万不要格式化----------------------------

当然最直接的方法可以参照【文件或目录损坏且无法读取 怎么恢复】这篇经验,但是该方法需要你准备一个与硬盘所存文件一样大小的空间。基本原理:用硬盘恢复数据→导到新的存储空间→格式化有问题的硬盘→复制回数据。此法优点:有效直接恢复数据;缺点:需要另备足够大小容量的硬盘、耗时。

接下来介绍的方法基本是无损修复,只需要一台电脑和待修复硬盘即可(必须是上述情况,其他情况不确保可行)

工具/原料

电脑一台

待修复移动硬盘

方法/步骤

首先下载winhex软件,如果是windows vista或windows7系统的朋友,必须以管理员身份运行winhex软件。

winhex软件下载

32位

http://download.csdn.net/detail/lixinzhaowensha/4747882

64位

http://download.csdn.net/detail/dingbichao/8321559

“打开磁盘”→选择需要修复的磁盘→确定


如果offset的000000000位置如下图所示(主要看红色框框位置是否出现NTFS字样),说明系统文件是NTFS,只是显示成RAW格式而已,需要修复MFT。


下面我们讲解一下如何修复MFT。有些东西我也不懂,比如NTFS的BPB图,一点也不懂,我是根据别人的教程是确定MFT的位置的。


一般移动硬盘的存放$MFT的簇号都是786432,在分区页按住Ctrl+G,在出现的对话框的簇号中输入786432。确定即可。


你会发现这样的界面,原本应该为MFT文件的位置0C0000000变为了USBC。


一定要用鼠标慢慢向下滚动直到找到46 49 4C 45,然后你可以看到红色框框中的字样为$MFT。


正常情况下,有四个数据:$MFT,$MFTMirro,$LogFile,$Volume,每个数据都是以46 49 4C 45开头的。

由于数据发生偏移,造成volume数据丢失。所以只看到前面3个。将前面三个的数据选中,一般到0c0000E00为止,ctrl+c复制。在0c0000000位置(也就是刚才usbc位置)横轴0上的第一个数值单击,ctrl+b写入。

然后重新打开一个正常的磁盘,锁定簇号786432,慢慢查找第四个以46 49 4C 45开头的$volume数据。如下图,从0c0000c00开始,至0c0000DF0结束,选中,ctrl+c复制。回到需要修复磁盘,也在0c0000c00位置的横轴0位置的第一个数值上单击,ctrl+b写入即可。

PS:如果能看到volume数据没有丢失。将四个数据复制,然后在起始位0c0000000写入就行。写入后,下面的重复数据至0c0000FF0位置删除。

完成上述操作后,保存即可。

然后点击“运行”→输入cmd→输入“chkdsk (盘符): /f”。冒号和反斜杠中间有一个空格,盘符写上后,将括号去掉。如“chkdsk i: /f”。这样就可以修复了。




你可能感兴趣的:(文件或目录损坏且无法读取-chkdsk被中止)