我們可能經(jīng)常遇到移動硬盤、U盤之類的可移動存儲設(shè)備出現(xiàn)如下錯誤:
“位置不可用,無法訪問,文件或目錄損壞且無法讀取?!?/p>
使用CMD→輸入:CHKDSK 盤符: /f 后出現(xiàn):“需要修復(fù)磁盤是NTFS格式,但無法確定卷版本或狀態(tài),CHKDSK被中止”的提示。
千萬不要格式化,千萬不要格式化,千萬不要格式化----------------------------
當(dāng)然最直接的方法可以參照【文件或目錄損壞且無法讀取 怎么恢復(fù)】這篇經(jīng)驗,但是該方法需要你準(zhǔn)備一個與硬盤所存文件一樣大小的空間?;驹恚河糜脖P恢復(fù)數(shù)據(jù)→導(dǎo)到新的存儲空間→格式化有問題的硬盤→復(fù)制回數(shù)據(jù)。此法優(yōu)點:有效直接恢復(fù)數(shù)據(jù);缺點:需要另備足夠大小容量的硬盤、耗時。
接下來介紹的方法基本是無損修復(fù),只需要一臺電腦和待修復(fù)硬盤即可(必須是上述情況,其他情況不確??尚校?/p>
工具/原料
電腦一臺
待修復(fù)移動硬盤
方法/步驟
首先下載winhex軟件,如果是windows vista或windows7系統(tǒng)的朋友,必須以管理員身份運行winhex軟件。
“打開磁盤”→選擇需要修復(fù)的磁盤→確定
如果offset的000000000位置如下圖所示(主要看紅色框框位置是否出現(xiàn)NTFS字樣),說明系統(tǒng)文件是NTFS,只是顯示成RAW格式而已,需要修復(fù)MFT。
下面我們講解一下如何修復(fù)MFT。有些東西我也不懂,比如NTFS的BPB圖,一點也不懂,我是根據(jù)別人的教程是確定MFT的位置的。
一般移動硬盤的存放$MFT的簇號都是786432,在分區(qū)頁按住Ctrl+G,在出現(xiàn)的對話框的簇號中輸入786432。確定即可。
你會發(fā)現(xiàn)這樣的界面,原本應(yīng)該為MFT文件的位置0C0000000變?yōu)榱薝SBC。
一定要用鼠標(biāo)慢慢向下滾動直到找到46 49 4C 45,然后你可以看到紅色框框中的字樣為$MFT。
正常情況下,有四個數(shù)據(jù):$MFT,$MFTMirro,$LogFile,$Volume,每個數(shù)據(jù)都是以46 49 4C 45開頭的。
由于數(shù)據(jù)發(fā)生偏移,造成volume數(shù)據(jù)丟失。所以只看到前面3個。將前面三個的數(shù)據(jù)選中,一般到0c0000E00為止,ctrl+c復(fù)制。在0c0000000位置(也就是剛才usbc位置)橫軸0上的第一個數(shù)值單擊,ctrl+b寫入。
然后重新打開一個正常的磁盤,鎖定簇號786432,慢慢查找第四個以46 49 4C 45開頭的$volume數(shù)據(jù)。如下圖,從0c0000c00開始,至0c0000DF0結(jié)束,選中,ctrl+c復(fù)制?;氐叫枰迯?fù)磁盤,也在0c0000c00位置的橫軸0位置的第一個數(shù)值上單擊,ctrl+b寫入即可。
PS:如果能看到volume數(shù)據(jù)沒有丟失。將四個數(shù)據(jù)復(fù)制,然后在起始位0c0000000寫入就行。寫入后,下面的重復(fù)數(shù)據(jù)至0c0000FF0位置刪除。
完成上述操作后,保存即可。
然后點擊“運行”→輸入cmd→輸入“chkdsk (盤符): /f”。冒號和反斜杠中間有一個空格,盤符寫上后,將括號去掉。如“chkdsk i: /f”。這樣就可以修復(fù)了。